Class ObservableRemoteServerImpl

  • All Implemented Interfaces:
    org.refcodes.component.Closable, org.refcodes.component.Closable.CloseAutomaton, org.refcodes.component.ClosedAccessor, org.refcodes.component.Component, org.refcodes.component.ConnectableComponent, org.refcodes.component.ConnectableComponent.ConnectableAutomaton, org.refcodes.component.ConnectionComponent<org.refcodes.io.DatagramTransceiver<java.io.Serializable>>, org.refcodes.component.ConnectionComponent.ConnectionAutomaton<org.refcodes.io.DatagramTransceiver<java.io.Serializable>>, org.refcodes.component.ConnectionOpenable<org.refcodes.io.DatagramTransceiver<java.io.Serializable>>, org.refcodes.component.ConnectionOpenable.ConnectionOpenAutomaton<org.refcodes.io.DatagramTransceiver<java.io.Serializable>>, org.refcodes.component.ConnectionStatusAccessor, org.refcodes.component.Destroyable, org.refcodes.component.OpenedAccessor, org.refcodes.mixin.BusyAccessor, org.refcodes.observer.Observable<org.refcodes.io.DatagramTransceiver<java.io.Serializable>>, ObservableRemoteServer, org.refcodes.remoting.Remote, org.refcodes.remoting.RemoteServer, org.refcodes.structure.Clearable, org.refcodes.structure.Containable


    public class ObservableRemoteServerImpl
    extends org.refcodes.remoting.RemoteServerImpl
    implements ObservableRemoteServer
    The Class ObservableRemoteServerImpl.
    Author:
    steiner
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface org.refcodes.mixin.BusyAccessor

        org.refcodes.mixin.BusyAccessor.BusyMutator, org.refcodes.mixin.BusyAccessor.BusyProperty
      • Nested classes/interfaces inherited from interface org.refcodes.component.Closable

        org.refcodes.component.Closable.CloseAutomaton, org.refcodes.component.Closable.CloseBuilder<B extends org.refcodes.component.Closable.CloseBuilder<B>>
      • Nested classes/interfaces inherited from interface org.refcodes.component.ClosedAccessor

        org.refcodes.component.ClosedAccessor.ClosedMutator, org.refcodes.component.ClosedAccessor.ClosedProperty
      • Nested classes/interfaces inherited from interface org.refcodes.component.ConnectableComponent

        org.refcodes.component.ConnectableComponent.ConnectableAutomaton
      • Nested classes/interfaces inherited from interface org.refcodes.component.ConnectionComponent

        org.refcodes.component.ConnectionComponent.ConnectionAutomaton<CON extends java.lang.Object>, org.refcodes.component.ConnectionComponent.ConnectionComponentBuilder<CON extends java.lang.Object,B extends org.refcodes.component.ConnectionComponent.ConnectionComponentBuilder<CON,B>>
      • Nested classes/interfaces inherited from interface org.refcodes.component.ConnectionOpenable

        org.refcodes.component.ConnectionOpenable.ConnectionOpenAutomaton<CON extends java.lang.Object>, org.refcodes.component.ConnectionOpenable.ConnectionOpenBuilder<CON extends java.lang.Object,B extends org.refcodes.component.ConnectionOpenable.ConnectionOpenBuilder<CON,B>>
      • Nested classes/interfaces inherited from interface org.refcodes.component.ConnectionStatusAccessor

        org.refcodes.component.ConnectionStatusAccessor.ConnectionStatusMutator, org.refcodes.component.ConnectionStatusAccessor.ConnectionStatusProperty
      • Nested classes/interfaces inherited from interface org.refcodes.component.Destroyable

        org.refcodes.component.Destroyable.DestroyAutomaton
      • Nested classes/interfaces inherited from interface org.refcodes.component.OpenedAccessor

        org.refcodes.component.OpenedAccessor.OpenedMutator, org.refcodes.component.OpenedAccessor.OpenedProperty
    • Constructor Summary

      Constructors 
      Constructor Description
      ObservableRemoteServerImpl​()
      Instantiates a new observable remote server impl.
      ObservableRemoteServerImpl​(java.util.concurrent.ExecutorService aExecutorService)
      Instantiates a new observable remote server impl.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void destroy​()
      protected void fromSender​(org.refcodes.remoting.Message arg0)  
      protected java.util.concurrent.ExecutorService getExecutorService​()  
      boolean hasObserverSubscription​(ProviderRemoteObserver aObserver)
      protected boolean isDestroyed​()  
      boolean isOpenable​(org.refcodes.io.DatagramTransceiver<java.io.Serializable> arg0)  
      protected void onClosed​()
      protected void onOpened​()
      protected void onSubjectPublished​(java.lang.Object aSubject)
      protected void onSubjectSignedOff​(java.lang.Object aSubject)
      void open​(org.refcodes.io.DatagramTransceiver<java.io.Serializable> arg0)  
      boolean subscribeObserver​(ProviderRemoteObserver aObserver)
      protected void toReceiver​(org.refcodes.remoting.Message arg0)  
      boolean unsubscribeObserver​(ProviderRemoteObserver aObserver)
      • Methods inherited from class org.refcodes.component.AbstractConnectableAutomaton

        getConnectionStatus, isClosable, isClosed, isOpenable, isOpened, open, setConnectionStatus
      • Methods inherited from interface org.refcodes.mixin.BusyAccessor

        isBusy
      • Methods inherited from interface org.refcodes.structure.Clearable

        clear
      • Methods inherited from interface org.refcodes.component.Closable

        close, closeIn, closeQuietly, closeUnchecked
      • Methods inherited from interface org.refcodes.component.Closable.CloseAutomaton

        isClosable
      • Methods inherited from interface org.refcodes.component.ClosedAccessor

        isClosed
      • Methods inherited from interface org.refcodes.component.ConnectionOpenable

        open, openUnchecked
      • Methods inherited from interface org.refcodes.component.ConnectionOpenable.ConnectionOpenAutomaton

        isOpenable
      • Methods inherited from interface org.refcodes.component.ConnectionStatusAccessor

        getConnectionStatus, isConnectionOpened
      • Methods inherited from interface org.refcodes.structure.Containable

        isEmpty, size
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface org.refcodes.component.OpenedAccessor

        isOpened
      • Methods inherited from interface org.refcodes.remoting.RemoteServer

        hasSubject, publishSubject, signOffSubject, signOffSubject, subjects
      • Methods inherited from class org.refcodes.remoting.RemoteServerImpl

        clear, close, close, digest, doSendJob, hasSubject, isBusy, isEmpty, publishSubject, signOffSubject, signOffSubject, size, subjects
    • Constructor Detail

      • ObservableRemoteServerImpl

        public ObservableRemoteServerImpl​()
        Instantiates a new observable remote server impl.
      • ObservableRemoteServerImpl

        public ObservableRemoteServerImpl​(java.util.concurrent.ExecutorService aExecutorService)
        Instantiates a new observable remote server impl.
        Parameters:
        aExecutorService - the executor service
    • Method Detail

      • hasObserverSubscription

        public boolean hasObserverSubscription​(ProviderRemoteObserver aObserver)
        Specified by:
        hasObserverSubscription in interface org.refcodes.observer.Observable<org.refcodes.io.DatagramTransceiver<java.io.Serializable>>
      • subscribeObserver

        public boolean subscribeObserver​(ProviderRemoteObserver aObserver)
        Specified by:
        subscribeObserver in interface org.refcodes.observer.Observable<org.refcodes.io.DatagramTransceiver<java.io.Serializable>>
      • unsubscribeObserver

        public boolean unsubscribeObserver​(ProviderRemoteObserver aObserver)
        Specified by:
        unsubscribeObserver in interface org.refcodes.observer.Observable<org.refcodes.io.DatagramTransceiver<java.io.Serializable>>
      • destroy

        public void destroy​()
        Specified by:
        destroy in interface org.refcodes.component.Destroyable
        Overrides:
        destroy in class org.refcodes.remoting.RemoteServerImpl
      • onOpened

        protected void onOpened​()
      • onSubjectPublished

        protected void onSubjectPublished​(java.lang.Object aSubject)
        Overrides:
        onSubjectPublished in class org.refcodes.remoting.RemoteServerImpl
      • onSubjectSignedOff

        protected void onSubjectSignedOff​(java.lang.Object aSubject)
        Overrides:
        onSubjectSignedOff in class org.refcodes.remoting.RemoteServerImpl
      • onClosed

        protected void onClosed​()
      • isOpenable

        public boolean isOpenable​(org.refcodes.io.DatagramTransceiver<java.io.Serializable> arg0)
        Specified by:
        isOpenable in interface org.refcodes.component.ConnectionOpenable.ConnectionOpenAutomaton<org.refcodes.io.DatagramTransceiver<java.io.Serializable>>
      • open

        public void open​(org.refcodes.io.DatagramTransceiver<java.io.Serializable> arg0)
                  throws org.refcodes.component.OpenException
        Specified by:
        open in interface org.refcodes.component.ConnectionOpenable<org.refcodes.io.DatagramTransceiver<java.io.Serializable>>
        Throws:
        org.refcodes.component.OpenException
      • toReceiver

        protected void toReceiver​(org.refcodes.remoting.Message arg0)
                           throws org.refcodes.component.OpenException
        Throws:
        org.refcodes.component.OpenException
      • fromSender

        protected void fromSender​(org.refcodes.remoting.Message arg0)
      • getExecutorService

        protected java.util.concurrent.ExecutorService getExecutorService​()
      • isDestroyed

        protected boolean isDestroyed​()