Interface ISharedObjects


public interface ISharedObjects

ISharedObjects: public interface to SharedObjects. Represent the list of shared objects managed by IApplicationInstance.

  • Method Details

    • size

      int size()
      Get number of shared objects.
      Returns:
      number of shared objects
    • get

      ISharedObject get(String name)
      Get shared object by name. If the shared object does not exist null will be returned. (see ISharedObjects.getOrCreate)
      Parameters:
      name - shared object name
      Returns:
      shared object
    • getOrCreate

      ISharedObject getOrCreate(String name)
      Get shared object by name if it does not exist create a new shared object with the given name.
      Parameters:
      name - shared object name
      Returns:
      shared object
    • getObjectNames

      List<String> getObjectNames()
      Get a list of shared object names.
      Returns:
      list of shared object names
    • put

      void put(String objectName, ISharedObject sharedObject)
      Add or replace a shared object.
      Parameters:
      objectName - shared object name
      sharedObject - shared object
    • remove

      void remove(String objectName)
      Remove a shared object.
      Parameters:
      objectName - shared object name
    • exists

      boolean exists(String objectName)
      Is sharedObject in this list (by name).
      Parameters:
      objectName - shared object name
      Returns:
      true if shared object in list
    • exists

      boolean exists(ISharedObject sharedObject)
      Is sharedObject in this list (by shared object reference).
      Parameters:
      sharedObject - shared object
      Returns:
      true if shared object in list
    • isPersistent

      boolean isPersistent()
      Are shared objects in list persistent.
      Returns:
      true is shared objects in list are persistent
    • setPersistent

      void setPersistent(boolean isPersistent)
      Set is shared object in list persistent
      Parameters:
      isPersistent - true is shared objects in list are persistent
    • removeClient

      void removeClient(IClient client)
      Remove a client from any shared object that it is connected to in this list.
      Parameters:
      client - client
    • flush

      void flush()
      Flush all persistent shared objects to disk.
    • disconnect

      void disconnect(IClient client)
      Disconnect client from all shared objects in list.
      Parameters:
      client - client
    • addSharedObjectListener

      void addSharedObjectListener(ISharedObjectNotify sharedObjectListener)
      Add a shared object listener. The listener will receive the following events: onSharedObjectCreate, onSharedObjectDestroy, onSharedObjectConnect, onSharedObjectDisconnect.
      Parameters:
      sharedObjectListener -
    • removeSharedObjectListener

      void removeSharedObjectListener(ISharedObjectNotify sharedObjectListener)
      Remove a shared object listener.
      Parameters:
      sharedObjectListener -
    • getStorageDir

      String getStorageDir()
      Get the storage directory for all shared objects in list.
      Returns:
      storage dir
    • setStorageDir

      void setStorageDir(String storageDir)
      Set the storage directory for all shared objects in list.
      Parameters:
      storageDir -
    • load

      void load()
      Load persistent shared objects from file system.