Author: gvanmatre Date: Fri Aug 26 19:45:41 2005 New Revision: 240380 URL: http://svn.apache.org/viewcvs?rev=240380&view=rev Log: Cleaned up some missing copyright's and minor refactoring.
Added: struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/QueryParam.java Removed: struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/states.xml Modified: struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/Address.java struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/Contact.java struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/GenericComparator.java struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/Rolodex.java struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/RolodexDao.java struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/State.java struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/dex.xml struts/shale/trunk/use-cases/src/test/org/apache/shale/usecases/rolodex/RolodexTestCase.java struts/shale/trunk/use-cases/src/web/WEB-INF/clay-config.xml struts/shale/trunk/use-cases/src/web/WEB-INF/faces-config.xml Modified: struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/Address.java URL: http://svn.apache.org/viewcvs/struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/Address.java?rev=240380&r1=240379&r2=240380&view=diff ============================================================================== --- struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/Address.java (original) +++ struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/Address.java Fri Aug 26 19:45:41 2005 @@ -1,3 +1,19 @@ +/* + * Copyright 2004-2005 The Apache Software Foundation. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package org.apache.shale.usecases.rolodex; /** Modified: struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/Contact.java URL: http://svn.apache.org/viewcvs/struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/Contact.java?rev=240380&r1=240379&r2=240380&view=diff ============================================================================== --- struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/Contact.java (original) +++ struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/Contact.java Fri Aug 26 19:45:41 2005 @@ -1,3 +1,19 @@ +/* + * Copyright 2004-2005 The Apache Software Foundation. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package org.apache.shale.usecases.rolodex; import java.io.UnsupportedEncodingException; Modified: struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/GenericComparator.java URL: http://svn.apache.org/viewcvs/struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/GenericComparator.java?rev=240380&r1=240379&r2=240380&view=diff ============================================================================== --- struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/GenericComparator.java (original) +++ struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/GenericComparator.java Fri Aug 26 19:45:41 2005 @@ -1,3 +1,19 @@ +/* + * Copyright 2004-2005 The Apache Software Foundation. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package org.apache.shale.usecases.rolodex; import java.util.ArrayList; Added: struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/QueryParam.java URL: http://svn.apache.org/viewcvs/struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/QueryParam.java?rev=240380&view=auto ============================================================================== --- struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/QueryParam.java (added) +++ struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/QueryParam.java Fri Aug 26 19:45:41 2005 @@ -0,0 +1,72 @@ +/* + * Copyright 2004-2005 The Apache Software Foundation. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.shale.usecases.rolodex; + +/** + * <p>This class simulates the classic struts FormBean. The + * request query parameter will be populated via the managed + * bean property setter injection.</p> + + */ +public class QueryParam { + + /** + * <p>Holds the value of the target tab index when + * clicking on a tab, <code>"#{managed-bean-name.changeTab}"}</code>. + * </p> + */ + private String tabIndex = null; + + /** + * <p>Holds the selected name when clicking on a contact, + * <code>"#{managed-bean-name.selectContact}"</code>.</p> + */ + private String selectedName = null; + + + /** + * @return Returns the tabIndex. + */ + public String getTabIndex() { + return tabIndex; + } + + + /** + * @param tabIndex The tabIndex to set. + */ + public void setTabIndex(String tabIndex) { + this.tabIndex = tabIndex; + } + + + /** + * @return Returns the selectedName. + */ + public String getSelectedName() { + return selectedName; + } + + + /** + * @param selectedName The selectedName to set. + */ + public void setSelectedName(String selectedName) { + this.selectedName = selectedName; + } + +} Modified: struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/Rolodex.java URL: http://svn.apache.org/viewcvs/struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/Rolodex.java?rev=240380&r1=240379&r2=240380&view=diff ============================================================================== --- struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/Rolodex.java (original) +++ struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/Rolodex.java Fri Aug 26 19:45:41 2005 @@ -1,3 +1,19 @@ +/* + * Copyright 2004-2005 The Apache Software Foundation. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package org.apache.shale.usecases.rolodex; import java.io.UnsupportedEncodingException; @@ -247,8 +263,10 @@ log.info("changeTab()"); FacesContext context = FacesContext.getCurrentInstance(); - Map requestMap = context.getExternalContext().getRequestParameterMap(); - String tabIndex = (String) requestMap.get("tabIndex"); + + QueryParam paramObj = (QueryParam) getBean("queryParam"); + String tabIndex = paramObj.getTabIndex(); + if (tabIndex != null) { setSelectedTab(Integer.parseInt(tabIndex)); @@ -344,8 +362,9 @@ FacesContext context = FacesContext.getCurrentInstance(); // look for the commandLink query parameter - Map requestMap = context.getExternalContext().getRequestParameterMap(); - String name = (String) requestMap.get("selectedName"); + QueryParam paramObj = (QueryParam) getBean("queryParam"); + String name = paramObj.getSelectedName(); + if (name != null) { // find the dao cached in application scope RolodexDao dao = (RolodexDao) getBean("rolodexDao"); Modified: struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/RolodexDao.java URL: http://svn.apache.org/viewcvs/struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/RolodexDao.java?rev=240380&r1=240379&r2=240380&view=diff ============================================================================== --- struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/RolodexDao.java (original) +++ struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/RolodexDao.java Fri Aug 26 19:45:41 2005 @@ -1,3 +1,19 @@ +/* + * Copyright 2004-2005 The Apache Software Foundation. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package org.apache.shale.usecases.rolodex; import java.io.IOException; Modified: struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/State.java URL: http://svn.apache.org/viewcvs/struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/State.java?rev=240380&r1=240379&r2=240380&view=diff ============================================================================== --- struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/State.java (original) +++ struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/State.java Fri Aug 26 19:45:41 2005 @@ -1,3 +1,19 @@ +/* + * Copyright 2004-2005 The Apache Software Foundation. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + package org.apache.shale.usecases.rolodex; /** Modified: struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/dex.xml URL: http://svn.apache.org/viewcvs/struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/dex.xml?rev=240380&r1=240379&r2=240380&view=diff ============================================================================== --- struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/dex.xml (original) +++ struts/shale/trunk/use-cases/src/java/org/apache/shale/usecases/rolodex/dex.xml Fri Aug 26 19:45:41 2005 @@ -1,3 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + + Copyright 2004-2005 The Apache Software Foundation. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +--> + <dex> <states> <state abbrState="AL" state="Alabama" country="United States" abbrCountry="US"/> Modified: struts/shale/trunk/use-cases/src/test/org/apache/shale/usecases/rolodex/RolodexTestCase.java URL: http://svn.apache.org/viewcvs/struts/shale/trunk/use-cases/src/test/org/apache/shale/usecases/rolodex/RolodexTestCase.java?rev=240380&r1=240379&r2=240380&view=diff ============================================================================== --- struts/shale/trunk/use-cases/src/test/org/apache/shale/usecases/rolodex/RolodexTestCase.java (original) +++ struts/shale/trunk/use-cases/src/test/org/apache/shale/usecases/rolodex/RolodexTestCase.java Fri Aug 26 19:45:41 2005 @@ -119,10 +119,13 @@ // simulate clicking a tab public void testChangeTab() { + QueryParam paramObj = new QueryParam(); for (int t = 0; t < RolodexDao.TAB_INDEX.length; t++) { // tab links add a param of the tab index - request.addParameter("tabIndex", String.valueOf(t)); + paramObj.setTabIndex(String.valueOf(t)); + ValueBinding vb = application.createValueBinding("queryParam"); + vb.setValue(facesContext, paramObj); // add a dummy contact viewController.setSelectedContact(new Contact()); @@ -163,6 +166,7 @@ // return the contacts on the first page List contacts = viewController.getContactsForTab(); + QueryParam paramObj = new QueryParam(); Iterator ci = contacts.iterator(); while (ci.hasNext()) { Contact contact = (Contact) ci.next(); @@ -175,7 +179,9 @@ // clear out the selected contact viewController.setSelectedContact(null); - request.addParameter("selectedName", nameParam); + paramObj.setSelectedName(nameParam); + ValueBinding vb = application.createValueBinding("queryParam"); + vb.setValue(facesContext, paramObj); // invoke the method on the view controller as if it was fired // via an action method binding event on the name collumn in the @@ -223,7 +229,10 @@ } catch (UnsupportedEncodingException e) { } - request.addParameter("selectedName", nameParam); + QueryParam paramObj = new QueryParam(); + paramObj.setSelectedName(nameParam); + ValueBinding vb = application.createValueBinding("queryParam"); + vb.setValue(facesContext, paramObj); // invoke the method on the view controller as if it was fired // via an action method binding event on the name collumn in the Modified: struts/shale/trunk/use-cases/src/web/WEB-INF/clay-config.xml URL: http://svn.apache.org/viewcvs/struts/shale/trunk/use-cases/src/web/WEB-INF/clay-config.xml?rev=240380&r1=240379&r2=240380&view=diff ============================================================================== --- struts/shale/trunk/use-cases/src/web/WEB-INF/clay-config.xml (original) +++ struts/shale/trunk/use-cases/src/web/WEB-INF/clay-config.xml Fri Aug 26 19:45:41 2005 @@ -1,3 +1,23 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + + Copyright 2004-2005 The Apache Software Foundation. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +--> + <!DOCTYPE view PUBLIC "-//Apache Software Foundation//DTD Shale Clay View//EN" "http://jakarta.apache.org/struts/dtds/clay-config_1_1.dtd"> <view> Modified: struts/shale/trunk/use-cases/src/web/WEB-INF/faces-config.xml URL: http://svn.apache.org/viewcvs/struts/shale/trunk/use-cases/src/web/WEB-INF/faces-config.xml?rev=240380&r1=240379&r2=240380&view=diff ============================================================================== --- struts/shale/trunk/use-cases/src/web/WEB-INF/faces-config.xml (original) +++ struts/shale/trunk/use-cases/src/web/WEB-INF/faces-config.xml Fri Aug 26 19:45:41 2005 @@ -459,7 +459,7 @@ <managed-bean> <description> - View controller for the rolodex usecase + View controller for the JSP view rolodex usecase </description> <managed-bean-name>rolodex</managed-bean-name> <managed-bean-class> @@ -470,13 +470,33 @@ <managed-bean> <description> - View controller for the rolodex usecase + View controller for the HTML view rolodex usecase </description> <managed-bean-name>rolodex$hrolodex</managed-bean-name> <managed-bean-class> org.apache.shale.usecases.rolodex.Rolodex </managed-bean-class> <managed-bean-scope>session</managed-bean-scope> + </managed-bean> + + <managed-bean> + <description> + This class simulates the classic Struts FormBean where + request parameters are populated in a POJO object. + </description> + <managed-bean-name>queryParam</managed-bean-name> + <managed-bean-class> + org.apache.shale.usecases.rolodex.QueryParam + </managed-bean-class> + <managed-bean-scope>request</managed-bean-scope> + <managed-property> + <property-name>tabIndex</property-name> + <value>#{param.tabIndex}</value> + </managed-property> + <managed-property> + <property-name>selectedName</property-name> + <value>#{param.selectedName}</value> + </managed-property> </managed-bean> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]