2
0
Fork 0

Upgraded backend api with generics.

This commit is contained in:
Willem Cazander 2014-05-28 14:16:03 +02:00
parent 9a6227be5b
commit 1b3e65fa83
53 changed files with 282 additions and 256 deletions

View file

@ -22,6 +22,7 @@
package net.forwardfire.vasc.ejb3;
import java.io.Serializable;
import java.util.List;
import java.util.Map;
@ -37,7 +38,7 @@ import net.forwardfire.vasc.backend.VascEntryRecordCreator;
* @author Willem Cazander
* @version 1.0 18 Nov 2012
*/
public class VascServiceRemoteBackend implements VascBackend {
public class VascServiceRemoteBackend<DATA_OBJECT extends Serializable> implements VascBackend<DATA_OBJECT> {
private String backendId = null;
private VascServiceManager vascManager = null;
@ -66,7 +67,7 @@ public class VascServiceRemoteBackend implements VascBackend {
// we cant change id
}
public void delete(Object object) throws VascBackendException {
public void delete(DATA_OBJECT object) throws VascBackendException {
Object[] args = new Object[1];
args[0]=object;
vascManager.invokeBackendMethod(backendId, "delete", args);
@ -89,11 +90,11 @@ public class VascServiceRemoteBackend implements VascBackend {
}
@SuppressWarnings("unchecked")
public List<Object> execute(VascBackendState state) throws VascBackendException {
public List<DATA_OBJECT> execute(VascBackendState state) throws VascBackendException {
Object[] args = new Object[1];
args[0]=state;
Object result = vascManager.invokeBackendMethod(backendId, "execute", args);
return (List<Object>)result;
return (List<DATA_OBJECT>)result;
}
public long fetchTotalExecuteSize(VascBackendState state) {
@ -127,14 +128,15 @@ public class VascServiceRemoteBackend implements VascBackend {
return (Boolean)result;
}
public Object merge(Object object) throws VascBackendException {
@SuppressWarnings("unchecked")
public DATA_OBJECT merge(DATA_OBJECT object) throws VascBackendException {
Object[] args = new Object[1];
args[0]=object;
Object result = vascManager.invokeBackendMethod(backendId, "merge", args);
return result;
return (DATA_OBJECT)result;
}
public void persist(Object object) throws VascBackendException {
public void persist(DATA_OBJECT object) throws VascBackendException {
Object[] args = new Object[1];
args[0]=object;
vascManager.invokeBackendMethod(backendId, "delete", args);