|
|
@@ -392,7 +392,8 @@ public class Project implements ResourceFactory { |
|
|
|
} |
|
|
|
} |
|
|
|
// copy on write semantics |
|
|
|
BuildListener[] newListeners = new BuildListener[listeners.length + 1]; |
|
|
|
BuildListener[] newListeners = |
|
|
|
new BuildListener[listeners.length + 1]; |
|
|
|
System.arraycopy(listeners, 0, newListeners, 0, listeners.length); |
|
|
|
newListeners[listeners.length] = listener; |
|
|
|
listeners = newListeners; |
|
|
@@ -411,9 +412,11 @@ public class Project implements ResourceFactory { |
|
|
|
// copy on write semantics |
|
|
|
for (int i = 0; i < listeners.length; i++) { |
|
|
|
if (listeners[i] == listener) { |
|
|
|
BuildListener[] newListeners = new BuildListener[listeners.length - 1]; |
|
|
|
BuildListener[] newListeners = |
|
|
|
new BuildListener[listeners.length - 1]; |
|
|
|
System.arraycopy(listeners, 0, newListeners, 0, i); |
|
|
|
System.arraycopy(listeners, i + 1, newListeners, i, listeners.length - i - 1); |
|
|
|
System.arraycopy(listeners, i + 1, newListeners, i, |
|
|
|
listeners.length - i - 1); |
|
|
|
listeners = newListeners; |
|
|
|
break; |
|
|
|
} |
|
|
@@ -2001,8 +2004,8 @@ public class Project implements ResourceFactory { |
|
|
|
public void fireBuildStarted() { |
|
|
|
BuildEvent event = new BuildEvent(this); |
|
|
|
BuildListener[] currListeners = listeners; |
|
|
|
for (int i=0; i<currListeners.length; i++) { |
|
|
|
currListeners[i].buildStarted(event); |
|
|
|
for (int i = 0; i<currListeners.length; i++) { |
|
|
|
currListeners[i].buildStarted(event); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
@@ -2017,8 +2020,8 @@ public class Project implements ResourceFactory { |
|
|
|
BuildEvent event = new BuildEvent(this); |
|
|
|
event.setException(exception); |
|
|
|
BuildListener[] currListeners = listeners; |
|
|
|
for (int i=0; i<currListeners.length; i++) { |
|
|
|
currListeners[i].buildFinished(event); |
|
|
|
for (int i = 0; i<currListeners.length; i++) { |
|
|
|
currListeners[i].buildFinished(event); |
|
|
|
} |
|
|
|
// Inform IH to clear the cache |
|
|
|
IntrospectionHelper.clearCache(); |
|
|
@@ -2033,8 +2036,8 @@ public class Project implements ResourceFactory { |
|
|
|
public void fireSubBuildStarted() { |
|
|
|
BuildEvent event = new BuildEvent(this); |
|
|
|
BuildListener[] currListeners = listeners; |
|
|
|
for (int i=0; i<currListeners.length; i++) { |
|
|
|
if (currListeners[i] instanceof SubBuildListener) { |
|
|
|
for (int i = 0; i<currListeners.length; i++) { |
|
|
|
if (currListeners[i] instanceof SubBuildListener) { |
|
|
|
((SubBuildListener) currListeners[i]).subBuildStarted(event); |
|
|
|
} |
|
|
|
} |
|
|
@@ -2053,8 +2056,8 @@ public class Project implements ResourceFactory { |
|
|
|
BuildEvent event = new BuildEvent(this); |
|
|
|
event.setException(exception); |
|
|
|
BuildListener[] currListeners = listeners; |
|
|
|
for (int i=0; i<currListeners.length; i++) { |
|
|
|
if (currListeners[i] instanceof SubBuildListener) { |
|
|
|
for (int i = 0; i<currListeners.length; i++) { |
|
|
|
if (currListeners[i] instanceof SubBuildListener) { |
|
|
|
((SubBuildListener) currListeners[i]).subBuildFinished(event); |
|
|
|
} |
|
|
|
} |
|
|
@@ -2070,8 +2073,8 @@ public class Project implements ResourceFactory { |
|
|
|
protected void fireTargetStarted(Target target) { |
|
|
|
BuildEvent event = new BuildEvent(target); |
|
|
|
BuildListener[] currListeners = listeners; |
|
|
|
for (int i=0; i<currListeners.length; i++) { |
|
|
|
currListeners[i].targetStarted(event); |
|
|
|
for (int i = 0; i<currListeners.length; i++) { |
|
|
|
currListeners[i].targetStarted(event); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
@@ -2090,8 +2093,8 @@ public class Project implements ResourceFactory { |
|
|
|
BuildEvent event = new BuildEvent(target); |
|
|
|
event.setException(exception); |
|
|
|
BuildListener[] currListeners = listeners; |
|
|
|
for (int i=0; i<currListeners.length; i++) { |
|
|
|
currListeners[i].targetFinished(event); |
|
|
|
for (int i = 0; i<currListeners.length; i++) { |
|
|
|
currListeners[i].targetFinished(event); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
@@ -2108,8 +2111,8 @@ public class Project implements ResourceFactory { |
|
|
|
registerThreadTask(Thread.currentThread(), task); |
|
|
|
BuildEvent event = new BuildEvent(task); |
|
|
|
BuildListener[] currListeners = listeners; |
|
|
|
for (int i=0; i<currListeners.length; i++) { |
|
|
|
currListeners[i].taskStarted(event); |
|
|
|
for (int i = 0; i<currListeners.length; i++) { |
|
|
|
currListeners[i].taskStarted(event); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
@@ -2130,8 +2133,8 @@ public class Project implements ResourceFactory { |
|
|
|
BuildEvent event = new BuildEvent(task); |
|
|
|
event.setException(exception); |
|
|
|
BuildListener[] currListeners = listeners; |
|
|
|
for (int i=0; i<currListeners.length; i++) { |
|
|
|
currListeners[i].targetFinished(event); |
|
|
|
for (int i = 0; i<currListeners.length; i++) { |
|
|
|
currListeners[i].targetFinished(event); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
@@ -2175,7 +2178,7 @@ public class Project implements ResourceFactory { |
|
|
|
try { |
|
|
|
isLoggingMessage.set(Boolean.TRUE); |
|
|
|
BuildListener[] currListeners = listeners; |
|
|
|
for (int i=0; i<currListeners.length; i++) { |
|
|
|
for (int i = 0; i<currListeners.length; i++) { |
|
|
|
currListeners[i].messageLogged(event); |
|
|
|
} |
|
|
|
} finally { |
|
|
|