package devopsdistilled.operp.client.context.account;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.remoting.rmi.RmiProxyFactoryBean;
import devopsdistilled.operp.client.context.RmiContext;
import devopsdistilled.operp.server.data.service.account.PaidTransactionService;
import devopsdistilled.operp.server.data.service.account.PayableAccountService;
import devopsdistilled.operp.server.data.service.account.ReceivableAccountService;
import devopsdistilled.operp.server.data.service.account.ReceivedTransactionService;
@Configuration
public class AccountRmiContext extends RmiContext {
@Bean
public RmiProxyFactoryBean payableAccountService() {
RmiProxyFactoryBean rmiProxy = new RmiProxyFactoryBean();
rmiProxy.setServiceInterface(PayableAccountService.class);
String serviceName = rmiProxy.getServiceInterface().getCanonicalName();
rmiProxy.setServiceUrl(rmiUrl + "/" + serviceName);
return rmiProxy;
}
@Bean
public RmiProxyFactoryBean receivableAccountService() {
RmiProxyFactoryBean rmiProxy = new RmiProxyFactoryBean();
rmiProxy.setServiceInterface(ReceivableAccountService.class);
String serviceName = rmiProxy.getServiceInterface().getCanonicalName();
rmiProxy.setServiceUrl(rmiUrl + "/" + serviceName);
return rmiProxy;
}
@Bean
public RmiProxyFactoryBean paidTransactionService() {
RmiProxyFactoryBean rmiProxy = new RmiProxyFactoryBean();
rmiProxy.setServiceInterface(PaidTransactionService.class);
String serviceName = rmiProxy.getServiceInterface().getCanonicalName();
rmiProxy.setServiceUrl(rmiUrl + "/" + serviceName);
return rmiProxy;
}
@Bean
public RmiProxyFactoryBean receivedTransactionService() {
RmiProxyFactoryBean rmiProxy = new RmiProxyFactoryBean();
rmiProxy.setServiceInterface(ReceivedTransactionService.class);
String serviceName = rmiProxy.getServiceInterface().getCanonicalName();
rmiProxy.setServiceUrl(rmiUrl + "/" + serviceName);
return rmiProxy;
}
}