com.monad.homerun.modelmgt
Interface ModelService

All Superinterfaces:
ManagedService

public interface ModelService
extends ManagedService

ModelService describes the methods any model manager must implement


Method Summary
 boolean addAlbum(Album album)
           
 boolean addModel(Model model)
          Adds a new model definition to the object store.
 void addModelObserver(java.lang.String domain, java.lang.String objectName, java.lang.String modelName, java.util.Observer observer, boolean priority)
          Add an observer of the indicated model
 boolean addScene(Scene scene)
           
 boolean addValueType(ValueType valType)
           
 void assignInformer(java.lang.String type, java.lang.String informerName, java.lang.String domain, java.lang.String objectName, java.lang.String modelName)
           
 Emitter canInform(java.lang.String informerName, java.lang.String domain, java.lang.String modelName)
           
 boolean canObserveModel(java.lang.String domain, java.lang.String objectName, java.lang.String modelName)
          Returns true if model can be observed, false otherwise
 void captureScene(java.lang.String category, java.lang.String sceneName)
           
 void createModel(java.lang.String domain, java.lang.String objectName, CompBinding binding, boolean isNew)
          Creates a runtime model associated with the passed object instance
 void destroyModel(java.lang.String domain, java.lang.String objectName, java.lang.String modelName)
          Removes a runtime model associated with the passed object reference.
 Album getAlbum(java.lang.String albumName)
           
 java.lang.String[] getAlbumNames()
           
 Function getFunction(java.lang.String functionName)
           
 java.lang.String[] getFunctionNames()
           
 byte[] getImageBytes(java.lang.String category, java.lang.String imageName)
           
 java.lang.String[] getImageNames(java.lang.String category)
           
 Emitter[] getInformers(java.lang.String domain, java.lang.String modelName)
           
 Model getModel(java.lang.String domain, java.lang.String modelName)
          Returns a model definition.
 ModelCore getModelCore(java.lang.String key)
          Returns current persisted component of a runtime model
 java.lang.String[] getModelNames(java.lang.String domain)
          Returns a list of defined models in a domain.
 java.lang.String[] getModelsOfType(java.lang.String domain, java.lang.String type)
           
 ModelStatus getModelStatus(java.lang.String domain, java.lang.String objectName, java.lang.String modelName)
          General query for an objects's current model state/value/etc.
 byte[] getModelTrail(java.lang.String domain, java.lang.String object, java.lang.String model, java.lang.String options)
           
 java.lang.String[] getModelTypes(java.lang.String domain, boolean activeOnly)
           
 java.lang.String[] getObjectModelNames(java.lang.String domain, java.lang.String objectName)
          Returns a list of created runtime models for given domain and object.
 Scene getScene(java.lang.String category, java.lang.String sceneName)
           
 java.lang.String[] getSceneCategories()
           
 java.lang.String[] getSceneNames(java.lang.String category)
           
 Snapshot getSnapshot(java.lang.String category, java.lang.String sceneName, long time)
           
 long[] getSnapshotTimes(java.lang.String category, java.lang.String sceneName)
           
 ValueType getValueType(java.lang.String typeName)
           
 java.lang.String[] getValueTypeNames()
           
 byte[] getViewBytes(View view)
           
 java.lang.String[] getViewTypes()
           
 void informModel(java.lang.String domain, java.lang.String objectName, java.lang.String modelName, Event event)
           
 void informModel(java.lang.String domain, java.lang.String objectName, java.lang.String modelName, java.lang.String action, java.lang.String source)
           
 boolean modelExists(java.lang.String domain, java.lang.String modelName)
           
 void persistAllModels()
           
 void registerInformer(ModelInformer informer)
           
 boolean removeAlbum(Album album)
           
 boolean removeModel(Model model)
           
 void removeModelObserver(java.lang.String domain, java.lang.String objectName, java.lang.String modelName, java.util.Observer observer)
          Remove an observer of the indicated model.
 boolean removeScene(Scene scene)
           
 boolean removeValueType(ValueType valType)
           
 boolean setModelCore(ModelCore core)
          Store a model core for indicated model
 void unassignInformer(java.lang.String informerName, java.lang.String domain, java.lang.String objectName, java.lang.String modelName)
           
 void unregisterInformer(ModelInformer informer)
           
 boolean updateAlbum(Album album)
           
 boolean updateModel(Model model)
           
 boolean updateScene(Scene scene)
           
 
Methods inherited from interface com.monad.homerun.core.ManagedService
init, shutdown
 

Method Detail

createModel

void createModel(java.lang.String domain,
                 java.lang.String objectName,
                 CompBinding binding,
                 boolean isNew)
Creates a runtime model associated with the passed object instance

Parameters:
domain - the object domain
objectName - the name of the object
binding - model component binding
isNew - true if object being added

destroyModel

void destroyModel(java.lang.String domain,
                  java.lang.String objectName,
                  java.lang.String modelName)
Removes a runtime model associated with the passed object reference.

Parameters:
domain - the object domain
objectName - the name of the object
modelName - the name of the object's model to destroy

canObserveModel

boolean canObserveModel(java.lang.String domain,
                        java.lang.String objectName,
                        java.lang.String modelName)
Returns true if model can be observed, false otherwise

Parameters:
domain -
objectName -
modelName -

addModelObserver

void addModelObserver(java.lang.String domain,
                      java.lang.String objectName,
                      java.lang.String modelName,
                      java.util.Observer observer,
                      boolean priority)
Add an observer of the indicated model

Parameters:
domain - - the domain of the object
objectName - - the name of the object
modelName - - the name of the object's model
observer - - an observer of the model
priority - - if true, will be notified before other observers

removeModelObserver

void removeModelObserver(java.lang.String domain,
                         java.lang.String objectName,
                         java.lang.String modelName,
                         java.util.Observer observer)
Remove an observer of the indicated model.

Parameters:
observer - an observer of the model

getObjectModelNames

java.lang.String[] getObjectModelNames(java.lang.String domain,
                                       java.lang.String objectName)
Returns a list of created runtime models for given domain and object.

Parameters:
domain -
objectName -
Returns:
names an array of names of models belonging to object

getModelStatus

ModelStatus getModelStatus(java.lang.String domain,
                           java.lang.String objectName,
                           java.lang.String modelName)
General query for an objects's current model state/value/etc.

Parameters:
domain -
objectName -
modelName -
Returns:
status the status of the indicated model

getModelCore

ModelCore getModelCore(java.lang.String key)
Returns current persisted component of a runtime model

Parameters:
key - typically domain.object.model
Returns:
core the persistent core or null if model lacks core

setModelCore

boolean setModelCore(ModelCore core)
Store a model core for indicated model

Parameters:
core - the model core
Returns:
true if core successfully persisted, false otherwise

getValueTypeNames

java.lang.String[] getValueTypeNames()

getValueType

ValueType getValueType(java.lang.String typeName)

addValueType

boolean addValueType(ValueType valType)

removeValueType

boolean removeValueType(ValueType valType)

getModelTypes

java.lang.String[] getModelTypes(java.lang.String domain,
                                 boolean activeOnly)

getModelsOfType

java.lang.String[] getModelsOfType(java.lang.String domain,
                                   java.lang.String type)

registerInformer

void registerInformer(ModelInformer informer)

unregisterInformer

void unregisterInformer(ModelInformer informer)

canInform

Emitter canInform(java.lang.String informerName,
                  java.lang.String domain,
                  java.lang.String modelName)

getInformers

Emitter[] getInformers(java.lang.String domain,
                       java.lang.String modelName)

assignInformer

void assignInformer(java.lang.String type,
                    java.lang.String informerName,
                    java.lang.String domain,
                    java.lang.String objectName,
                    java.lang.String modelName)

unassignInformer

void unassignInformer(java.lang.String informerName,
                      java.lang.String domain,
                      java.lang.String objectName,
                      java.lang.String modelName)

informModel

void informModel(java.lang.String domain,
                 java.lang.String objectName,
                 java.lang.String modelName,
                 Event event)

informModel

void informModel(java.lang.String domain,
                 java.lang.String objectName,
                 java.lang.String modelName,
                 java.lang.String action,
                 java.lang.String source)

persistAllModels

void persistAllModels()

modelExists

boolean modelExists(java.lang.String domain,
                    java.lang.String modelName)

getModelNames

java.lang.String[] getModelNames(java.lang.String domain)
Returns a list of defined models in a domain.

Parameters:
domain - the domain
Returns:
names an array of model names.

getModel

Model getModel(java.lang.String domain,
               java.lang.String modelName)
Returns a model definition.

Parameters:
domain -
modelName -
Returns:
model a model definition

addModel

boolean addModel(Model model)
Adds a new model definition to the object store.

Parameters:
model - the model to add
Returns:
success true if model successfully added, else false

updateModel

boolean updateModel(Model model)

removeModel

boolean removeModel(Model model)

getSceneCategories

java.lang.String[] getSceneCategories()

getSceneNames

java.lang.String[] getSceneNames(java.lang.String category)

getScene

Scene getScene(java.lang.String category,
               java.lang.String sceneName)

addScene

boolean addScene(Scene scene)

updateScene

boolean updateScene(Scene scene)

removeScene

boolean removeScene(Scene scene)

captureScene

void captureScene(java.lang.String category,
                  java.lang.String sceneName)

getSnapshotTimes

long[] getSnapshotTimes(java.lang.String category,
                        java.lang.String sceneName)

getSnapshot

Snapshot getSnapshot(java.lang.String category,
                     java.lang.String sceneName,
                     long time)

getViewTypes

java.lang.String[] getViewTypes()

getViewBytes

byte[] getViewBytes(View view)

getImageNames

java.lang.String[] getImageNames(java.lang.String category)

getImageBytes

byte[] getImageBytes(java.lang.String category,
                     java.lang.String imageName)

getModelTrail

byte[] getModelTrail(java.lang.String domain,
                     java.lang.String object,
                     java.lang.String model,
                     java.lang.String options)

getAlbumNames

java.lang.String[] getAlbumNames()

getAlbum

Album getAlbum(java.lang.String albumName)

addAlbum

boolean addAlbum(Album album)

updateAlbum

boolean updateAlbum(Album album)

removeAlbum

boolean removeAlbum(Album album)

getFunctionNames

java.lang.String[] getFunctionNames()

getFunction

Function getFunction(java.lang.String functionName)


Copyright © 2006-2009 Richard Rodgers. All Rights Reserved.