Fix a synchronization bug in the component instance manager.
git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@590701 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/ipojo/core/src/main/java/org/apache/felix/ipojo/InstanceManager.java b/ipojo/core/src/main/java/org/apache/felix/ipojo/InstanceManager.java
index febf36e..f38e867 100644
--- a/ipojo/core/src/main/java/org/apache/felix/ipojo/InstanceManager.java
+++ b/ipojo/core/src/main/java/org/apache/felix/ipojo/InstanceManager.java
@@ -677,7 +677,7 @@
* @return the value decided by the last asked handler (throw a warning if
* two fields decide two different values)
*/
- public synchronized Object getterCallback(String fieldName) {
+ public Object getterCallback(String fieldName) {
Object initialValue = m_map.get(fieldName);
Object result = initialValue;
// Get the list of registered handlers
@@ -711,7 +711,7 @@
* Dispatch entry method event on registered handler.
* @param methodId : method id
*/
- public synchronized void entryCallback(String methodId) {
+ public void entryCallback(String methodId) {
PrimitiveHandler[] list = (PrimitiveHandler[]) m_methodRegistration.get(methodId);
for (int i = 0; list != null && i < list.length; i++) {
list[i].entryCallback(methodId);
@@ -725,7 +725,7 @@
* @param methodId : method id
* @param e : returned object.
*/
- public synchronized void exitCallback(String methodId, Object e) {
+ public void exitCallback(String methodId, Object e) {
PrimitiveHandler[] list = (PrimitiveHandler[]) m_methodRegistration.get(methodId);
for (int i = 0; list != null && i < list.length; i++) {
list[i].exitCallback(methodId, e);
@@ -740,7 +740,7 @@
* called
* @param objectValue : the value of the field
*/
- public synchronized void setterCallback(String fieldName, Object objectValue) {
+ public void setterCallback(String fieldName, Object objectValue) {
Object o = m_map.get(fieldName);
if ((o != null && ! o.equals(objectValue)) || (o == null && objectValue != null)) {
m_map.put(fieldName, objectValue);