Rio Project 4.2 API Documentation



org.rioproject.associations
Interface AssociationProxy<T>

All Superinterfaces:
AssociationListener<T>
All Known Implementing Classes:
AssociationProxySupport

public interface AssociationProxy<T>
extends AssociationListener<T>

Methods that dynamic proxies created for associated services must implement in order to interface with association management.

Author:
Dennis Reedy

Method Summary
 Association getAssociation()
          Get the association
 net.sf.cglib.proxy.CallbackFilter getCallbackFilter(Association<T> association)
          Create a CallbackFilter
 net.sf.cglib.proxy.Callback[] getCallbacks(Association<T> association)
          Create an array of Callback
 net.sf.cglib.proxy.Dispatcher getDispatcher(Association<T> association)
          Create a Dispatcher
 long getInvocationCount()
          Get the number of times the associated service(s) were invoked using this proxy
 InvocationHandler getInvocationHandler(Association<T> association)
          Create an InvocationHandler
 ServiceSelectionStrategy<T> getServiceSelectionStrategy()
          Get the strategy for selecting services
 Class getSuperClass()
          Get the super-class when creating a concrete CGLIB proxy
 void setProxyInterfaces(Class[] classes)
          Set the classes the proxy will support
 void setServiceSelectionStrategy(ServiceSelectionStrategy<T> strategy)
          Set the strategy for selecting services
 void terminate()
          Clean up any resources allocated
 
Methods inherited from interface org.rioproject.associations.AssociationListener
broken, changed, discovered
 

Method Detail

getAssociation

Association getAssociation()
Get the association

Returns:
The Association

getInvocationHandler

InvocationHandler getInvocationHandler(Association<T> association)
Create an InvocationHandler

Parameters:
association - The Association to use
Returns:
An InvocationHandler for use with a dynamic JDK proxy.

getCallbacks

net.sf.cglib.proxy.Callback[] getCallbacks(Association<T> association)
Create an array of Callback

Parameters:
association - The Association to use
Returns:
An array of Callback for use with a generated CGLIB proxy.

getCallbackFilter

net.sf.cglib.proxy.CallbackFilter getCallbackFilter(Association<T> association)
Create a CallbackFilter

Parameters:
association - The Association to use
Returns:
An array of CallbackFilter for use with a generated CGLIB proxy.

getDispatcher

net.sf.cglib.proxy.Dispatcher getDispatcher(Association<T> association)
Create a Dispatcher

Parameters:
association - The Association to use
Returns:
A Dispatcher for use with a generated CGLIB proxy.

getSuperClass

Class getSuperClass()
Get the super-class when creating a concrete CGLIB proxy

Returns:
The super class to use when creating a concrete CGLIB proxy. If interfaces are being used, return null

setServiceSelectionStrategy

void setServiceSelectionStrategy(ServiceSelectionStrategy<T> strategy)
Set the strategy for selecting services

Parameters:
strategy - The ServiceSelectionStrategy. Must not be null.

getServiceSelectionStrategy

ServiceSelectionStrategy<T> getServiceSelectionStrategy()
Get the strategy for selecting services

Returns:
The ServiceSelectionStrategy.

setProxyInterfaces

void setProxyInterfaces(Class[] classes)
Set the classes the proxy will support

Parameters:
classes - Array of interface classes

getInvocationCount

long getInvocationCount()
Get the number of times the associated service(s) were invoked using this proxy

Returns:
The number of time the associated services were invoked using this proxy. The returned count will represent the total number of invocations across all associated services, and include only successful invocation attempts (attempts that did not result in an exception).

terminate

void terminate()
Clean up any resources allocated


Copyright © Rio Project.

Copyright © 2006-2011 Rio Project. All Rights Reserved.