|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object ch.ethz.iks.r_osgi.messages.RemoteOSGiMessage ch.ethz.iks.r_osgi.messages.DeliverServiceMessage
public final class DeliverServiceMessage
DeliverServiceMessage is used to bring an OSGi service to a remote machine. The service interface is transferred and if specified, also an abstract class that can contain code that behaves like a smart proxy and moves some methods to the client machine.
Currently, R-OSGi does not check for class dependencies so if an interface method uses custom objects as parameter and it can not be assumed that the client already has these custom objects, they have to be defined as class injections. However, all inner classes of injections and possible inner classes of the abstract class provided as smart proxy object are automatically added to the class injections.
Field Summary |
---|
Fields inherited from class ch.ethz.iks.r_osgi.messages.RemoteOSGiMessage |
---|
DELIVER_BUNDLE, DELIVER_BUNDLES, DELIVER_SERVICE, LEASE, LEASE_UPDATE, REMOTE_CALL, REMOTE_CALL_RESULT, REMOTE_EVENT, REQUEST_BUNDLE, REQUEST_DEPENDENCIES, REQUEST_SERVICE, STREAM_REQUEST, STREAM_RESULT, TIME_OFFSET, xid |
Constructor Summary | |
---|---|
DeliverServiceMessage()
Create a new DeliverServiceMessage. |
Method Summary | |
---|---|
java.lang.String |
getExports()
get the exports. |
java.lang.String |
getImports()
get the imports. |
java.util.Map |
getInjections()
get the list of class injection. |
byte[] |
getInterfaceClass()
convenience method to get the bytes of the interface class. |
java.lang.String[] |
getInterfaceNames()
get the interface name of the delivered service. |
byte[] |
getProxyClass()
convenience method to get the bytes of the smart proxy class. |
java.lang.String |
getServiceID()
get the service ID. |
java.lang.String |
getSmartProxyName()
get the smart proxy class name. |
void |
setExports(java.lang.String exports)
set the exports. |
void |
setImports(java.lang.String imports)
set the imports. |
void |
setInjections(java.util.Map injections)
set the injections. |
void |
setInterfaceNames(java.lang.String[] interfaceNames)
set the interface names. |
void |
setServiceID(java.lang.String serviceID)
set the service ID. |
void |
setSmartProxyName(java.lang.String smartProxyName)
set the smart proxy name. |
java.lang.String |
toString()
String representation for debug outputs. |
void |
writeBody(java.io.ObjectOutputStream out)
write the message body to a stream. |
Methods inherited from class ch.ethz.iks.r_osgi.messages.RemoteOSGiMessage |
---|
getFuncID, getXID, parse, readBytes, readStringArray, send, setXID, writeBytes, writeStringArray |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public DeliverServiceMessage()
Method Detail |
---|
public void writeBody(java.io.ObjectOutputStream out) throws java.io.IOException
writeBody
in class RemoteOSGiMessage
out
- the output stream.
java.io.IOException
- in case of parse errors.public java.lang.String getServiceID()
public void setServiceID(java.lang.String serviceID)
serviceID
- the service ID.public void setInjections(java.util.Map injections)
injections
- the injections.public java.lang.String[] getInterfaceNames()
public void setInterfaceNames(java.lang.String[] interfaceNames)
interfaceNames
- the interface class names.public byte[] getInterfaceClass()
public java.lang.String getSmartProxyName()
public void setSmartProxyName(java.lang.String smartProxyName)
smartProxyName
- the smart proxy name.public byte[] getProxyClass()
public java.util.Map getInjections()
List
of class names.public java.lang.String getImports()
public void setImports(java.lang.String imports)
imports
- the imports.public java.lang.String getExports()
public void setExports(java.lang.String exports)
exports
- the exports.public java.lang.String toString()
toString
in class java.lang.Object
Object.toString()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |