SmartFrog 3.10.000

org.smartfrog.sfcore.reference
Interface RemoteReferenceResolver

All Superinterfaces:
java.rmi.Remote
All Known Subinterfaces:
Compound, CopyFile, DetachingCompound, Prim, ProcessCompound
All Known Implementing Classes:
AbstractClasspathImpl, AbstractPolicy, ApacheImpl, ArrayCompoundImpl, AssertComponent, Attribute, Autoloader, BalancerImpl, Comparator, CompoundImpl, Constant, Container, CopyFileImpl, CounterImpl, CPUMonitorImpl, Delay, Delay, DeployByCopyImpl, Deployer, DetachingCompoundImpl, DirectoryClasspathImpl, DisplayThresholderImpl, DoNothing, DownloadImpl, Dup, During, EventCompoundImpl, EventCounter, EventPrimImpl, EventQueue, EventSend, ExampleTemplateImpl, FileImpl, FileTesterImpl, FileUsingComponentImpl, FileUsingCompoundImpl, FireBreak, FlattenLocalFilesPolicy, GameArenaWrapper, Generator, GeneratorImpl, GraphImpl, InputImpl, JavaPackageImpl, LibraryArtifactImpl, LibraryClasspathImpl, LibraryImpl, LoadClassImpl, LoadPropertyFileImpl, LocalFilestoreImpl, LoggerImpl, Maven1Policy, Maven2Policy, MkdirImpl, Negate, NetElemImpl, OnEvent, OutputImpl, Parallel, PersistentCounterImpl, Plus, PrimImpl, Printer, PrinterImpl, ProcessCompoundImpl, ProgressBarsImpl, RandomSequence, Repeat, Retract, Retry, Run, RunJavaImpl, RunShellImpl, SelfDeletingFileImpl, Sequence, SFConcatImpl, SFDeployDisplay, SFDisplay, SFLogRegistrationImpl, SFLogStdStreamImpl, SFLogToFile, SFMCastClientImpl, SFMCastServerImpl, SFPersist, SFPrimLogImpl, SFProcessExecutionImpl, SFReplaceFileVar, SFScriptExecutionImpl, SFScriptImpl, SFSetPropertyImpl, SFTrace, SFTraceDisplay, Spawn, StressControlGuiImpl, StressTesterImpl, SystemPropertiesImpl, TempDirImpl, TempFileImpl, Terminator, Tester, TextFileImpl, ThresholderImpl, TideMeterImpl, Timeout, Times, TouchFileImpl, Try, UpdatableCompound, UpdatablePrim

public interface RemoteReferenceResolver
extends java.rmi.Remote

This makes a reference resolver interface available for remotable objects. ReferenceResolver can not extend from Remote since RMI would then try to marshal a stub to component descriptions on the wire, thinking the description is remotable because it indirectly inherits Remote. Interfaces or classes that need to offer reference resolution and be serializable should implement ReferenceResolver while remotable classes or interfaces should implement RemoteReferenceResolver


Method Summary
 java.lang.Object sfResolve(Reference r)
          Resolves a given reference.
 java.lang.Object sfResolve(Reference reference, int index)
          Resolves a reference starting at a given index.
 java.lang.Object sfResolveHere(java.lang.Object name)
          Find an attribute in this context.
 java.lang.Object sfResolveHere(java.lang.Object name, boolean mandatory)
          Find an attribute in this context.
 java.lang.Object sfResolveParent()
          Resolves parent reference of the given reference.
 

Method Detail

sfResolve

java.lang.Object sfResolve(Reference r)
                           throws java.rmi.RemoteException,
                                  SmartFrogResolutionException
Resolves a given reference. Generally forwards directly to indexed resolve with index 0

Parameters:
r - reference to resolve
Returns:
resolved reference
Throws:
SmartFrogResolutionException - if any error occurrs while resolving
java.rmi.RemoteException - if there is any network/rmi error

sfResolve

java.lang.Object sfResolve(Reference reference,
                           int index)
                           throws java.rmi.RemoteException,
                                  SmartFrogResolutionException
Resolves a reference starting at a given index.

Parameters:
reference - reference to be resolved
index - starting index
Returns:
Object attribute at resolved reference
Throws:
SmartFrogResolutionException - if any error occurrs while resolving
java.rmi.RemoteException - if there is any network/rmi error

sfResolveParent

java.lang.Object sfResolveParent()
                                 throws java.rmi.RemoteException,
                                        SmartFrogResolutionException
Resolves parent reference of the given reference.

Returns:
resolved parent reference
Throws:
SmartFrogResolutionException - if any error occurrs while resolving
java.rmi.RemoteException - if there is any network/rmi error

sfResolveHere

java.lang.Object sfResolveHere(java.lang.Object name)
                               throws java.rmi.RemoteException,
                                      SmartFrogResolutionException
Find an attribute in this context.

Parameters:
name - attribute key to resolve
Returns:
resolved attribute
Throws:
SmartFrogResolutionException - failed to find attribute
java.rmi.RemoteException - if there is any network/rmi error

sfResolveHere

java.lang.Object sfResolveHere(java.lang.Object name,
                               boolean mandatory)
                               throws SmartFrogResolutionException,
                                      java.rmi.RemoteException
Find an attribute in this context.

Parameters:
name - attribute key to resolve
mandatory - boolean that indicates if this attribute must be present in the description. If it is mandatory and not found it throws a SmartFrogResolutionException
Returns:
Object value for attribute
Throws:
SmartFrogResolutionException - failed to find attribute
java.rmi.RemoteException - In case of network/rmi error

SmartFrog CORE 3.10.000

(C) Copyright 1998-2006 Hewlett-Packard Development Company, LP