Subversion Repository Public Repository

litesoft

Diff Revisions 949 vs 950 for /trunk/Java/GWT/OldClient/src/org/litesoft/GWT/eventbus/client/nonpublic/StatePeerSupportingEventBus.java

Diff revisions: vs.
  @@ -1,80 +1,80 @@
1 - // This Source Code is in the Public Domain per: http://unlicense.org
2 - package org.litesoft.GWT.eventbus.client.nonpublic;
3 -
4 - import org.litesoft.GWT.eventbus.client.*;
5 - import org.litesoft.logger.*;
6 -
7 - public abstract class StatePeerSupportingEventBus implements IStatePeerSupportingEventBus {
8 - protected boolean mDisposed = false;
9 - protected Logger mLogger;
10 - protected PeerSupportingEventBus mPeerSupportingEventBus;
11 - protected SavedEventsExpectingResponseTracker mSavedEventsExpectingResponseTracker;
12 -
13 - protected StatePeerSupportingEventBus( Logger pLogger, PeerSupportingEventBus pPeerSupportingEventBus,
14 - SavedEventsExpectingResponseTracker pSavedEventsExpectingResponseTracker ) {
15 - mLogger = pLogger;
16 - mPeerSupportingEventBus = pPeerSupportingEventBus;
17 - mSavedEventsExpectingResponseTracker = pSavedEventsExpectingResponseTracker;
18 - }
19 -
20 - abstract protected EventBusMessageCollector getEventBusMessageCollector();
21 -
22 - public synchronized void dispose() {
23 - mDisposed = true;
24 - // Leave everything for normal GC
25 - }
26 -
27 - public final void subscribeAndPublish( EventSubscriptionStructure[] pSubscriptions,
28 - EventPackage[] pPackages ) {
29 - synchronized ( this ) {
30 - EventBusMessageCollector collector = getEventBusMessageCollector();
31 - collector.addSubscribes( pSubscriptions );
32 - collector.addPublishedEvents( pPackages );
33 - }
34 - releaseCollected();
35 - }
36 -
37 - public final void unsubscribe( EventSubscriptionStructure[] pSubscriptions ) {
38 - synchronized ( this ) {
39 - getEventBusMessageCollector().addUnsubscribes( pSubscriptions );
40 - }
41 - releaseCollected();
42 - }
43 -
44 - public final void problemFromRemotePeerService( EventPackage pProblem ) {
45 - synchronized ( this ) {
46 - getEventBusMessageCollector().addFromRemotePeerEvent( pProblem );
47 - }
48 - releaseCollected();
49 - }
50 -
51 - public final boolean propagateFromRemotePeerService( ChannelServicePackage pFromPeer ) {
52 - if ( (pFromPeer == null) || pFromPeer.isEmpty() ) {
53 - return true;
54 - }
55 - synchronized ( this ) {
56 - EventBusMessageCollector collector = getEventBusMessageCollector();
57 - if ( pFromPeer.anyAddPeerInterests() ) {
58 - collector.addRemotePeerInterests( pFromPeer.getAddPeerInterests() );
59 - }
60 - if ( pFromPeer.anyRemovePeerInterests() ) {
61 - collector.removeRemotePeerInterests( pFromPeer.getRemovePeerInterests() );
62 - }
63 - if ( pFromPeer.anyEvents() ) {
64 - collector.addFromRemotePeerEvents( pFromPeer.getEvents() );
65 - }
66 - if ( pFromPeer.anyAckPeerInterests() ) {
67 - collector.addFromRemoteAckPeerInterests( pFromPeer.getAckPeerInterests() );
68 - }
69 - }
70 - return releaseCollected();
71 - }
72 -
73 - public boolean ping() {
74 - return true;
75 - }
76 -
77 - public String toString() {
78 - return mPeerSupportingEventBus.getForm();
79 - }
80 - }
1 + // This Source Code is in the Public Domain per: http://unlicense.org
2 + package org.litesoft.GWT.eventbus.client.nonpublic;
3 +
4 + import org.litesoft.GWT.eventbus.client.*;
5 + import org.litesoft.logger.*;
6 +
7 + public abstract class StatePeerSupportingEventBus implements IStatePeerSupportingEventBus {
8 + protected boolean mDisposed = false;
9 + protected Logger mLogger;
10 + protected PeerSupportingEventBus mPeerSupportingEventBus;
11 + protected SavedEventsExpectingResponseTracker mSavedEventsExpectingResponseTracker;
12 +
13 + protected StatePeerSupportingEventBus( Logger pLogger, PeerSupportingEventBus pPeerSupportingEventBus,
14 + SavedEventsExpectingResponseTracker pSavedEventsExpectingResponseTracker ) {
15 + mLogger = pLogger;
16 + mPeerSupportingEventBus = pPeerSupportingEventBus;
17 + mSavedEventsExpectingResponseTracker = pSavedEventsExpectingResponseTracker;
18 + }
19 +
20 + abstract protected EventBusMessageCollector getEventBusMessageCollector();
21 +
22 + public synchronized void dispose() {
23 + mDisposed = true;
24 + // Leave everything for normal GC
25 + }
26 +
27 + public final void subscribeAndPublish( EventSubscriptionStructure[] pSubscriptions,
28 + EventPackage[] pPackages ) {
29 + synchronized ( this ) {
30 + EventBusMessageCollector collector = getEventBusMessageCollector();
31 + collector.addSubscribes( pSubscriptions );
32 + collector.addPublishedEvents( pPackages );
33 + }
34 + releaseCollected();
35 + }
36 +
37 + public final void unsubscribe( EventSubscriptionStructure[] pSubscriptions ) {
38 + synchronized ( this ) {
39 + getEventBusMessageCollector().addUnsubscribes( pSubscriptions );
40 + }
41 + releaseCollected();
42 + }
43 +
44 + public final void problemFromRemotePeerService( EventPackage pProblem ) {
45 + synchronized ( this ) {
46 + getEventBusMessageCollector().addFromRemotePeerEvent( pProblem );
47 + }
48 + releaseCollected();
49 + }
50 +
51 + public final boolean propagateFromRemotePeerService( ChannelServicePackage pFromPeer ) {
52 + if ( (pFromPeer == null) || pFromPeer.isEmpty() ) {
53 + return true;
54 + }
55 + synchronized ( this ) {
56 + EventBusMessageCollector collector = getEventBusMessageCollector();
57 + if ( pFromPeer.anyAddPeerInterests() ) {
58 + collector.addRemotePeerInterests( pFromPeer.getAddPeerInterests() );
59 + }
60 + if ( pFromPeer.anyRemovePeerInterests() ) {
61 + collector.removeRemotePeerInterests( pFromPeer.getRemovePeerInterests() );
62 + }
63 + if ( pFromPeer.anyEvents() ) {
64 + collector.addFromRemotePeerEvents( pFromPeer.getEvents() );
65 + }
66 + if ( pFromPeer.anyAckPeerInterests() ) {
67 + collector.addFromRemoteAckPeerInterests( pFromPeer.getAckPeerInterests() );
68 + }
69 + }
70 + return releaseCollected();
71 + }
72 +
73 + public boolean ping() {
74 + return true;
75 + }
76 +
77 + public String toString() {
78 + return mPeerSupportingEventBus.getForm();
79 + }
80 + }