You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by id...@apache.org on 2007/05/18 15:07:43 UTC
svn commit: r539448 - in
/myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook:
AddressDao.java InMemoryAddressDao.java JpaAddressDao.java
web/Controller.java
Author: idus
Date: Fri May 18 06:07:42 2007
New Revision: 539448
URL: http://svn.apache.org/viewvc?view=rev&rev=539448
Log:
added rudimental implementation for address search
Modified:
myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/AddressDao.java
myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/InMemoryAddressDao.java
myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/JpaAddressDao.java
myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/web/Controller.java
Modified: myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/AddressDao.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/AddressDao.java?view=diff&rev=539448&r1=539447&r2=539448
==============================================================================
--- myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/AddressDao.java (original)
+++ myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/AddressDao.java Fri May 18 06:07:42 2007
@@ -28,9 +28,9 @@
Address updateAddress(Address address) throws AddressDaoException;
- List<Address> findAddresses() throws AddressDaoException;
+ List<Address> findAddresses(String filter) throws AddressDaoException;
- List<Address> findAddresses(String column, boolean order) throws AddressDaoException;
+ List<Address> findAddresses(String filter, String column, boolean order) throws AddressDaoException;
void removeAddress(Address address) throws AddressDaoException;
Modified: myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/InMemoryAddressDao.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/InMemoryAddressDao.java?view=diff&rev=539448&r1=539447&r2=539448
==============================================================================
--- myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/InMemoryAddressDao.java (original)
+++ myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/InMemoryAddressDao.java Fri May 18 06:07:42 2007
@@ -55,11 +55,11 @@
return address;
}
- public List<Address> findAddresses(String column, boolean order) {
- return findAddresses();
+ public List<Address> findAddresses(String filter, String column, boolean order) {
+ return findAddresses(filter);
}
- public synchronized List<Address> findAddresses() {
+ public synchronized List<Address> findAddresses(String filter) {
LOG.debug("Find addresses: "+addresses);
return Collections.unmodifiableList(addresses);
}
Modified: myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/JpaAddressDao.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/JpaAddressDao.java?view=diff&rev=539448&r1=539447&r2=539448
==============================================================================
--- myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/JpaAddressDao.java (original)
+++ myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/JpaAddressDao.java Fri May 18 06:07:42 2007
@@ -45,19 +45,35 @@
return address;
}
- public List<Address> findAddresses() throws AddressDaoException {
- return getJpaTemplate().find("select a from Address a");
+ public List<Address> findAddresses(String filter) throws AddressDaoException {
+ return findAddresses(filter, null, true);
}
- public List<Address> findAddresses(String column, boolean order) throws AddressDaoException {
- return getJpaTemplate().find("select a from Address a order by a." + column + (order?" desc":" asc"));
+ public List<Address> findAddresses(String filter, String column, boolean order) throws AddressDaoException {
+ StringBuilder builder = new StringBuilder();
+ builder.append("select a from Address a");
+ if (filter != null) {
+ if (filter.indexOf('_') == -1 && filter.indexOf('%') == -1) {
+ filter = "%" + filter + "%";
+ }
+ builder.append(" where a.firstName like '");
+ builder.append(filter);
+ builder.append("' or a.lastName like '");
+ builder.append(filter);
+ builder.append("'");
+ }
+ if (column != null) {
+ builder.append(" order by a.");
+ builder.append(column);
+ builder.append(order ? " desc" : " asc");
+ }
+ return getJpaTemplate().find(builder.toString());
}
- public void removeAddress(Address address) throws AddressDaoException {
+ public void removeAddress(Address address) throws AddressDaoException {
address = getAddress(address.getId());
getJpaTemplate().remove(address);
}
-
public Address getAddress(Integer id) {
return getJpaTemplate().find(Address.class, id);
Modified: myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/web/Controller.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/web/Controller.java?view=diff&rev=539448&r1=539447&r2=539448
==============================================================================
--- myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/web/Controller.java (original)
+++ myfaces/tobago/trunk/example/addressbook/src/main/java/org/apache/myfaces/tobago/example/addressbook/web/Controller.java Fri May 18 06:07:42 2007
@@ -109,7 +109,7 @@
public void setAddressDao(AddressDao addressDao) throws AddressDaoException {
this.addressDao = addressDao;
- currentAddressList = addressDao.findAddresses();
+ currentAddressList = addressDao.findAddresses(searchCriterion);
}
public void sheetSorter(ActionEvent event) throws AddressDaoException {
@@ -118,11 +118,12 @@
UIColumn column = (UIColumn) sortEvent.getColumn();
SheetState sheetState = sortEvent.getSheet().getSheetState(FacesContext.getCurrentInstance());
- currentAddressList = addressDao.findAddresses(column.getId(), sheetState.isAscending());
+ currentAddressList = addressDao.findAddresses(searchCriterion, column.getId(), sheetState.isAscending());
}
}
public String search() throws AddressDaoException {
+ currentAddressList = addressDao.findAddresses(searchCriterion);
return OUTCOME_LIST;
}
@@ -172,7 +173,7 @@
addressDao.removeAddress(address);
}
selectedAddresses.resetSelected();
- currentAddressList = addressDao.findAddresses();
+ currentAddressList = addressDao.findAddresses(searchCriterion);
return OUTCOME_LIST;
}
@@ -180,12 +181,12 @@
LOG.debug("action: storeAddress");
currentAddress = addressDao.updateAddress(currentAddress);
selectedAddresses.resetSelected();
- currentAddressList = addressDao.findAddresses();
+ currentAddressList = addressDao.findAddresses(searchCriterion);
return OUTCOME_LIST;
}
public String cancel() throws AddressDaoException {
- currentAddressList = addressDao.findAddresses();
+ currentAddressList = addressDao.findAddresses(searchCriterion);
return OUTCOME_LIST;
}