Package org.jclouds
Interface View
-
- All Known Subinterfaces:
AWSEC2ComputeServiceContext
,AWSS3BlobStoreContext
,BlobStoreContext
,CloudStackContext
,ComputeServiceContext
,EC2ComputeServiceContext
,LoadBalancerServiceContext
,S3BlobStoreContext
- All Known Implementing Classes:
AWSEC2ComputeServiceContextImpl
,AWSS3BlobStoreContextImpl
,BaseView
,BlobStoreContextImpl
,CloudStackContextImpl
,ComputeServiceContextImpl
,EC2ComputeServiceContextImpl
,LoadBalancerServiceContextImpl
,RegionScopedBlobStoreContext
,S3BlobStoreContextImpl
@Beta public interface View
View
allows access to the provider-specific, or library-driven api behind an abstraction. One backend context can support multiple views. For example, theCloudStackContext
can be backend by bothComputeServiceContext
andLoadBalancerServiceContext
, as the api covers these features.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description com.google.common.reflect.TypeToken<?>
getBackendType()
<C extends Context>
Cunwrap()
shortcut forunwrap(getWrappedType())
<C extends Context>
Cunwrap(com.google.common.reflect.TypeToken<C> type)
Return an object of the specified type to allow access to the backend context.<A extends Closeable>
AunwrapApi(Class<A> apiClass)
Unwraps the underlying api from this view.
-
-
-
Method Detail
-
getBackendType
com.google.common.reflect.TypeToken<?> getBackendType()
- Returns:
- type of the context powering the current one.
-
unwrap
<C extends Context> C unwrap(com.google.common.reflect.TypeToken<C> type) throws IllegalArgumentException
Return an object of the specified type to allow access to the backend context. If the backend context is not assignable from the supplied type, anIllegalArgumentException
is thrown. ex.ApiContext
backendApi = computeContext.unwrap(new TypeToken >(){}); - Parameters:
type
- the type of the context to be returned. The backend context must be assignable from this type.- Returns:
- an instance of the specified type
- Throws:
IllegalArgumentException
- if the backend context is not assignable from the specified class.- See Also:
getBackendType()
-
unwrap
<C extends Context> C unwrap() throws ClassCastException
shortcut forunwrap(getWrappedType())
- Throws:
ClassCastException
- if the user suppliedC
param is not assignableFromgetBackendType()
-
-