Class ServiceReference
- java.lang.Object
-
- io.vertx.reactivex.servicediscovery.ServiceReference
-
- All Implemented Interfaces:
io.vertx.lang.rx.RxDelegate
public class ServiceReference extends Object implements io.vertx.lang.rx.RxDelegate
Once a consumer has chosen a service, it builds aServiceReferencemanaging the binding with the chosen service provider.The reference lets the consumer: * access the service (via a proxy or a client) with the
get()method * release the reference - so the binding between the consumer and the provider is removedNOTE: This class has been automatically generated from the
originalnon RX-ified interface using Vert.x codegen.
-
-
Field Summary
Fields Modifier and Type Field Description static io.vertx.lang.rx.TypeArg<ServiceReference>__TYPE_ARG
-
Constructor Summary
Constructors Constructor Description ServiceReference(ServiceReference delegate)ServiceReference(Object delegate)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> Tcached()Gets the service object if already retrieved.<X> XcachedAs(Class<X> x)Gets the service object if already retrieved.booleanequals(Object o)<T> Tget()Gets the object to access the service.<X> XgetAs(Class<X> x)Gets the object to access the service.ServiceReferencegetDelegate()inthashCode()booleanisHolding(Object object)Checks whether or not the service reference has the given service object.static ServiceReferencenewInstance(ServiceReference arg)Recordrecord()voidrelease()Releases the reference.StringtoString()
-
-
-
Field Detail
-
__TYPE_ARG
public static final io.vertx.lang.rx.TypeArg<ServiceReference> __TYPE_ARG
-
-
Constructor Detail
-
ServiceReference
public ServiceReference(ServiceReference delegate)
-
ServiceReference
public ServiceReference(Object delegate)
-
-
Method Detail
-
getDelegate
public ServiceReference getDelegate()
- Specified by:
getDelegatein interfaceio.vertx.lang.rx.RxDelegate
-
record
public Record record()
- Returns:
- the service record.
-
get
public <T> T get()
Gets the object to access the service. It can be a proxy, a client or whatever object. The type depends on the service type and the server itself. This method returns the Java version and primary facet of the object, usegetAs(java.lang.Class<X>)to retrieve the polyglot instance of the object or another facet..- Returns:
- the object to access the service
-
getAs
public <X> X getAs(Class<X> x)
Gets the object to access the service. It can be a proxy, a client or whatever object. The type depends on the service type and the server itself. This method wraps the service object into the desired type.- Parameters:
x- the type of object- Returns:
- the object to access the service wrapped to the given type
-
cachedAs
public <X> X cachedAs(Class<X> x)
Gets the service object if already retrieved. It won't try to acquire the service object if not retrieved yet. Unlikecached(), this method return the warpped object to the desired (given) type.- Parameters:
x- the type of object- Returns:
- the object,
nullif not yet retrieved
-
cached
public <T> T cached()
Gets the service object if already retrieved. It won't try to acquire the service object if not retrieved yet.- Returns:
- the object,
nullif not yet retrieved
-
release
public void release()
Releases the reference. Once released, the consumer must not use the reference anymore. This method must be idempotent and defensive, as multiple call may happen.
-
isHolding
public boolean isHolding(Object object)
Checks whether or not the service reference has the given service object.- Parameters:
object- the service object, must not benull- Returns:
trueif the service reference service object is equal to the given object,falseotherwise.
-
newInstance
public static ServiceReference newInstance(ServiceReference arg)
-
-