public class BasicService extends java.lang.Object implements IInternalService
| Modifier and Type | Field and Description |
|---|---|
protected static long |
idcnt
The id counter.
|
protected java.lang.Class<?> |
impltype |
protected IInternalAccess |
internalaccess
Internal access to its component.
|
protected IComponentIdentifier |
providerid
The provider id.
|
protected boolean |
shutdowned
The shutdowned state.
|
protected IServiceIdentifier |
sid
The service id.
|
protected boolean |
started
The started state.
|
protected java.lang.Class<?> |
type |
EMPTY_SERVICES| Constructor and Description |
|---|
BasicService(IComponentIdentifier providerid,
java.lang.Class<?> type,
java.lang.Class<?> impltype,
java.util.Map<java.lang.String,java.lang.Object> properties)
Create a new service.
|
BasicService(IComponentIdentifier providerid,
java.lang.Class<?> type,
java.util.Map<java.lang.String,java.lang.Object> properties)
Create a new service.
|
| Modifier and Type | Method and Description |
|---|---|
static IServiceIdentifier |
createServiceIdentifier(IComponentIdentifier providerid,
java.lang.String servicename,
java.lang.Class<?> servicetype,
java.lang.Class<?> serviceimpl,
IResourceIdentifier rid,
java.lang.String scope)
Create a new service identifier.
|
void |
createServiceIdentifier(java.lang.String name,
java.lang.Class<?> implclazz,
IResourceIdentifier rid,
java.lang.Class<?> type,
java.lang.String scope)
Set the service identifier.
|
boolean |
equals(java.lang.Object obj)
Check if the service is equal.
|
static java.lang.String |
generateServiceName(java.lang.Class<?> service)
Generate a unique name.
|
java.lang.Class<?> |
getInterfaceType()
Get the interface type.
|
IInternalAccess |
getInternalAccess()
Get the internal access.
|
static long |
getMethodTimeout(java.lang.Class<?>[] interfaces,
java.lang.reflect.Method method,
boolean remote)
Get the default timeout for a method.
|
java.util.Map<java.lang.String,java.lang.Object> |
getPropertyMap()
Get a service property.
|
IComponentIdentifier |
getProviderId()
Get the providerid.
|
IServiceIdentifier |
getServiceIdentifier()
Get the service id.
|
int |
hashCode()
Get the hashcode.
|
protected IFuture<java.lang.Void> |
initNFProperties()
Init the non-functional properties (todo: move to other location?)
|
IFuture<java.lang.Boolean> |
isValid()
Test if the service is valid.
|
IFuture<java.lang.Void> |
setComponentAccess(IInternalAccess access)
Sets the access for the component.
|
void |
setPropertyMap(java.util.Map<java.lang.String,java.lang.Object> properties)
Set the properties.
|
IFuture<java.lang.Void> |
shutdownService()
Shutdown the service.
|
IFuture<java.lang.Void> |
startService()
Start the service.
|
java.lang.String |
toString()
Get a string representation.
|
protected static long idcnt
protected IInternalAccess internalaccess
protected volatile boolean started
protected volatile boolean shutdowned
protected IServiceIdentifier sid
protected IComponentIdentifier providerid
protected java.lang.Class<?> type
protected java.lang.Class<?> impltype
public BasicService(IComponentIdentifier providerid, java.lang.Class<?> type, java.util.Map<java.lang.String,java.lang.Object> properties)
public BasicService(IComponentIdentifier providerid, java.lang.Class<?> type, java.lang.Class<?> impltype, java.util.Map<java.lang.String,java.lang.Object> properties)
public IFuture<java.lang.Boolean> isValid()
public void createServiceIdentifier(java.lang.String name,
java.lang.Class<?> implclazz,
IResourceIdentifier rid,
java.lang.Class<?> type,
java.lang.String scope)
createServiceIdentifier in interface IInternalServicepublic IServiceIdentifier getServiceIdentifier()
getServiceIdentifier in interface IServicepublic IComponentIdentifier getProviderId()
public IFuture<java.lang.Void> setComponentAccess(IInternalAccess access)
setComponentAccess in interface IInternalServiceaccess - Component access.protected IFuture<java.lang.Void> initNFProperties()
public java.util.Map<java.lang.String,java.lang.Object> getPropertyMap()
getPropertyMap in interface IServicepublic void setPropertyMap(java.util.Map<java.lang.String,java.lang.Object> properties)
properties - The properties to set.public IFuture<java.lang.Void> startService()
startService in interface IInternalServicepublic IFuture<java.lang.Void> shutdownService()
shutdownService in interface IInternalServicepublic static java.lang.String generateServiceName(java.lang.Class<?> service)
The - calling service class.public static IServiceIdentifier createServiceIdentifier(IComponentIdentifier providerid, java.lang.String servicename, java.lang.Class<?> servicetype, java.lang.Class<?> serviceimpl, IResourceIdentifier rid, java.lang.String scope)
providerid - The provider id.servicename - The service name.public IInternalAccess getInternalAccess()
public boolean equals(java.lang.Object obj)
equals in class java.lang.Objectobj - Object of comparison.public int hashCode()
hashCode in class java.lang.Objectpublic java.lang.String toString()
toString in class java.lang.Objectpublic static long getMethodTimeout(java.lang.Class<?>[] interfaces,
java.lang.reflect.Method method,
boolean remote)
public java.lang.Class<?> getInterfaceType()