1 11 package org.jboss.portal.test.portlet.preferences.spec; 12 13 import org.jboss.portal.junit.result.InvokeURLResult; 14 import org.jboss.portal.junit.result.AssertResult; 15 import org.jboss.portal.junit.Result; 16 import org.jboss.portal.test.portlet.AbstractPortlet; 17 18 import javax.portlet.ActionRequest; 19 import javax.portlet.ActionResponse; 20 import javax.portlet.PortletException; 21 import javax.portlet.PortletSecurityException; 22 import javax.portlet.RenderRequest; 23 import javax.portlet.RenderResponse; 24 import javax.portlet.PortletURL; 25 import javax.portlet.PortletPreferences; 26 import java.io.IOException ; 27 28 32 public class ValidationStoresPortlet extends AbstractPortlet 33 { 34 35 public void processAction(final ActionRequest request, ActionResponse response) throws PortletException, PortletSecurityException, IOException 36 { 37 int requestCount = getRequestCount(request); 38 if (requestCount == 1) 39 { 40 AssertResult result = new AssertResult(); 41 result.execute(new AssertResult.Test() 42 { 43 public void run() throws Exception 44 { 45 PortletPreferences prefs = request.getPreferences(); 47 48 assertEquals("single_pref_value", prefs.getValue("single_pref", "other")); 50 assertEquals(new String []{"multi_pref_value_1","multi_pref_value_2"}, 51 prefs.getValues("multi_pref", new String []{"other"})); 52 53 prefs.setValue("single_pref", "new_single_pref"); 55 prefs.setValues("multi_pref", new String []{"new_multi_pref_value_1","new_multi_pref_value_2"}); 56 57 assertEquals("new_single_pref", prefs.getValue("single_pref", "other")); 59 assertEquals(new String []{"new_multi_pref_value_1","new_multi_pref_value_2"}, prefs.getValues("multi_pref", new String []{"other"})); 60 61 prefs.store(); 63 64 assertTrue(ValidationStoresValidator.isValidateInvoked()); 66 67 assertEquals("new_single_pref", prefs.getValue("single_pref", "other")); 69 assertEquals(new String []{"new_multi_pref_value_1","new_multi_pref_value_2"}, prefs.getValues("multi_pref", new String []{"other"})); 70 } 71 }); 72 setRequestLocal(request, result); 73 } 74 else if (requestCount == 2) 75 { 76 AssertResult result = (AssertResult)getRequestLocal(request); 77 result.execute(new AssertResult.Test() 78 { 79 public void run() throws Exception 80 { 81 PortletPreferences prefs = request.getPreferences(); 83 84 assertEquals("new_single_pref", prefs.getValue("single_pref", "other")); 86 assertEquals(new String []{"new_multi_pref_value_1","new_multi_pref_value_2"}, prefs.getValues("multi_pref", new String []{"other"})); 87 } 88 }); 89 } 90 } 91 92 public void render(final RenderRequest request, RenderResponse response) throws PortletException, PortletSecurityException, IOException 93 { 94 Result result = null; 95 int requestCount = getRequestCount(request); 96 if (requestCount == 0 || requestCount == 1) 97 { 98 PortletURL url = response.createActionURL(); 99 result = new InvokeURLResult(url.toString()); 100 } 101 else if (requestCount == 2) 102 { 103 result = (Result)getRequestLocal(request); 104 } 105 106 sendResult(response, result); 108 } 109 } 110 | Popular Tags |