}
protected Class<?>[] getInterfaces()
{
StatelessContainer statelessContainer = (StatelessContainer) getContainer();
RemoteHome remoteHome = (RemoteHome) statelessContainer.resolveAnnotation(RemoteHome.class);
boolean bindTogether = false;
if (remoteHome != null && bindHomeAndBusinessTogether(statelessContainer))
bindTogether = true;
// Obtain all remote interfaces
Set<Class<?>> remoteInterfaces = new HashSet<Class<?>>();
remoteInterfaces.addAll(Arrays.asList(ProxyFactoryHelper.getRemoteAndBusinessRemoteInterfaces(getContainer())));
// Ensure that if EJB 2.1 Components are defined, they're complete
this.ensureEjb21ViewComplete(remoteHome == null ? null : remoteHome.value(), ProxyFactoryHelper
.getRemoteInterfaces(getContainer()));
// Ensure remote interfaces defined
if (remoteInterfaces.size() > 0)
{
// Add JBossProxy
remoteInterfaces.add(JBossProxy.class);
// If binding along w/ home, add home
if (bindTogether)
{
remoteInterfaces.add(remoteHome.value());
}
}
else
{
// No remote interfaces defined, log warning