Upgraded backend api with generics.
This commit is contained in:
parent
9a6227be5b
commit
1b3e65fa83
53 changed files with 282 additions and 256 deletions
|
|
@ -23,6 +23,7 @@
|
|||
package net.forwardfire.vasc.test.frontend.data;
|
||||
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
import net.forwardfire.vasc.annotations.VascDefaultValue;
|
||||
|
|
@ -41,8 +42,9 @@ import net.forwardfire.vasc.validators.VascStringLength;
|
|||
* @author Willem Cazander
|
||||
* @version 1.0 Mar 28, 2007
|
||||
*/
|
||||
@SuppressWarnings("serial")
|
||||
@VascEntry(headerName="En een tooltip op het model")
|
||||
public class TestModelOrder {
|
||||
public class TestModelOrder implements Serializable {
|
||||
|
||||
private Integer id = null;
|
||||
private String name = null;
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@
|
|||
package net.forwardfire.vasc.test.frontend.data;
|
||||
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
import net.forwardfire.vasc.annotations.VascDefaultValue;
|
||||
|
|
@ -41,8 +42,9 @@ import net.forwardfire.vasc.validators.VascStringLength;
|
|||
* @author Willem Cazander
|
||||
* @version 1.0 Feb 7, 2012
|
||||
*/
|
||||
@SuppressWarnings("serial")
|
||||
@VascEntry(headerName="OrderLine")
|
||||
public class TestModelOrderLine {
|
||||
public class TestModelOrderLine implements Serializable {
|
||||
|
||||
private TestModelOrder order = null;
|
||||
private String name = null;
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@
|
|||
|
||||
package net.forwardfire.vasc.test.frontend.data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
|
@ -45,8 +46,8 @@ import net.forwardfire.vasc.backend.data.BeanVascEntryRecordCreator;
|
|||
public class TestModelVascDataSource {
|
||||
|
||||
//private List<TestModelOrder> testModels = null;
|
||||
public ListObjectVascDataSource orderModel = null;
|
||||
public ListObjectVascDataSource orderLineModel = null;
|
||||
public ListObjectVascDataSource<TestModelOrder> orderModel = null;
|
||||
public ListObjectVascDataSource<TestModelOrderLine> orderLineModel = null;
|
||||
|
||||
public TestModelVascDataSource() {
|
||||
this(new ArrayList<TestModelOrder>(200),new ArrayList<TestModelOrderLine>(200));
|
||||
|
|
@ -86,26 +87,26 @@ public class TestModelVascDataSource {
|
|||
}
|
||||
}
|
||||
|
||||
class ListObjectVascDataSource extends AbstractVascBackend {
|
||||
class ListObjectVascDataSource<DATA_OBJECT extends Serializable> extends AbstractVascBackend<DATA_OBJECT> {
|
||||
private Class<?> modelClass = null;
|
||||
private List<Object> modelList = null;
|
||||
private List<DATA_OBJECT> modelList = null;
|
||||
private String nullLabel = null;
|
||||
private String nullKeyValue = null;
|
||||
|
||||
public ListObjectVascDataSource(Class<?> modelClass,List<Object> modelList) {
|
||||
public ListObjectVascDataSource(Class<?> modelClass,List<DATA_OBJECT> modelList) {
|
||||
this.modelClass=modelClass;
|
||||
this.modelList=modelList;
|
||||
}
|
||||
|
||||
public List<Object> getObjectList() {
|
||||
public List<DATA_OBJECT> getObjectList() {
|
||||
return modelList;
|
||||
}
|
||||
|
||||
public List<Object> execute(VascBackendState state) throws VascBackendException {
|
||||
public List<DATA_OBJECT> execute(VascBackendState state) throws VascBackendException {
|
||||
if (state.getDataParameterKeys().isEmpty()==false) {
|
||||
List<Object> result = new ArrayList<Object>(modelList.size()/2);
|
||||
List<DATA_OBJECT> result = new ArrayList<DATA_OBJECT>(modelList.size()/2);
|
||||
DefaultElementObjectPropertyValue helper = new DefaultElementObjectPropertyValue();
|
||||
for (Object row:modelList) {
|
||||
for (DATA_OBJECT row:modelList) {
|
||||
boolean addRow = true;
|
||||
for (String key:state.getDataParameterKeys()) {
|
||||
Object keyValue = state.getDataParameter(key);
|
||||
|
|
@ -129,26 +130,26 @@ public class TestModelVascDataSource {
|
|||
}
|
||||
return result;
|
||||
} else {
|
||||
List<Object> result = new ArrayList<Object>(modelList.size());
|
||||
for (Object row:modelList) {
|
||||
List<DATA_OBJECT> result = new ArrayList<DATA_OBJECT>(modelList.size());
|
||||
for (DATA_OBJECT row:modelList) {
|
||||
result.add(row);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
public void persist(Object object) throws VascBackendException {
|
||||
public void persist(DATA_OBJECT object) throws VascBackendException {
|
||||
modelList.add(object);
|
||||
}
|
||||
|
||||
public Object merge(Object object) throws VascBackendException {
|
||||
public DATA_OBJECT merge(DATA_OBJECT object) throws VascBackendException {
|
||||
if(modelList.contains(object)==false) {
|
||||
modelList.add(object);
|
||||
}
|
||||
return object;
|
||||
}
|
||||
|
||||
public void delete(Object object) throws VascBackendException {
|
||||
public void delete(DATA_OBJECT object) throws VascBackendException {
|
||||
modelList.remove(object);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue