@EventMethod(portletName = "PortletHubTests_SPEC_23_JSPRP_TX", processingEvents = {
@PortletQName(namespaceURI="http://www.apache.org/", localPart="prpevent")
})
public void doEvent(EventRequest eventReq, EventResponse eventResp) {
MutableRenderParameters mrp = eventResp.getRenderParameters();
String testcase = (String) eventReq.getEvent().getValue();
if (testcase == null || testcase.isEmpty()) {
mrp.setValue("status", "Failed. No test case parameter present.");
} else if (testcase.equals(V3PORTLETHUBTESTS_SPEC_23_JSPRP_ACTION1) ||
testcase.equals(V3PORTLETHUBTESTS_SPEC_23_JSPRP_ACTION2)) {
mrp.setValue("status", "OK");
mrp.setValue("prptestcase", testcase);
}
}
java类javax.portlet.EventRequest的实例源码
PortletHubTests_SPEC_23_JSPRP_TX.java 文件源码
项目:portals-pluto
阅读 17
收藏 0
点赞 0
评论 0
PortletHubTests_SPEC_23_JSAction.java 文件源码
项目:portals-pluto
阅读 16
收藏 0
点赞 0
评论 0
@EventMethod(portletName = "PortletHubTests_SPEC_23_JSAction", processingEvents = {
@PortletQName(namespaceURI="http://www.apache.org/", localPart="event")
})
public void doEvent(EventRequest eventReq, EventResponse eventResp) {
MutableRenderParameters mrp = eventResp.getRenderParameters();
String testcase = mrp.getValue("testcase");
if (testcase == null || testcase.isEmpty()) {
mrp.setValue("status", "Failed. No test case parameter present.");
} else if (testcase.equals(V3PORTLETHUBTESTS_SPEC_23_JSACTION_ACTION6)) {
mrp.setValue("status", "OK");
} else {
mrp.setValue("status", "Failed. Unknown test case: " + testcase);
}
}
AddlPortletTests_SPEC2_5_RenderGenericPortlet_event.java 文件源码
项目:portals-pluto
阅读 23
收藏 0
点赞 0
评论 0
@ProcessEvent(qname = "AddlPortletTests_SPEC2_5_RenderGenericPortlet")
public void processEvent(EventRequest portletReq, EventResponse portletResp)
throws PortletException, IOException {
JSR286SpecTestCaseDetails tcd = new JSR286SpecTestCaseDetails();
/* TestCase: V2AddlPortletTests_SPEC2_5_RenderGenericPortlet_eventDispatching1 */
/* Details: "The GenericPortlet processEvent method will dispatch the */
/* request to a subclass method annotated with the tag */
/* @ProcessEvent(qname=<eventname>), where <eventname> */
/* must be in the format provided by Qname.toString()" */
Event event = portletReq.getEvent();
String qName = event.getName();
TestResult tr1 =
tcd.getTestResultFailed(V2ADDLPORTLETTESTS_SPEC2_5_RENDERGENERICPORTLET_EVENTDISPATCHING1);
if (qName.toString().equals("AddlPortletTests_SPEC2_5_RenderGenericPortlet")) {
tr1.setTcSuccess(true);
} else {
tr1.appendTcDetail(
"Failed because QName is not AddlPortletTests_SPEC2_5_RenderGenericPortlet");
}
portletReq.getPortletSession().setAttribute(
Constants.RESULT_ATTR_PREFIX + "AddlPortletTests_SPEC2_5_RenderGenericPortlet_event_a",
tr1.toString(), APPLICATION_SCOPE);
}
AddlPortletTests_SPEC2_5_RenderGenericPortlet.java 文件源码
项目:portals-pluto
阅读 18
收藏 0
点赞 0
评论 0
@ProcessEvent(name = "AddlPortletTests_SPEC2_5_RenderGenericPortlet_localPart")
public void processEvent(EventRequest portletReq, EventResponse response)
throws PortletException, IOException {
JSR286SpecTestCaseDetails tcd = new JSR286SpecTestCaseDetails();
/*
* TestCase:
* V2AddlPortletTests_SPEC2_5_RenderGenericPortlet_eventDispatching2
*/
/* Details: "The GenericPortlet processEvent method will dispatch the */
/* request to a subclass method annotated with the tag */
/* @ProcessEvent(name=<event_name_local_part>)" */
TestResult tr2 = tcd.getTestResultFailed(
V2ADDLPORTLETTESTS_SPEC2_5_RENDERGENERICPORTLET_EVENTDISPATCHING2);
tr2.setTcSuccess(true);
portletReq.getPortletSession().setAttribute(
RESULT_ATTR_PREFIX
+ "AddlPortletTests_SPEC2_5_RenderGenericPortlet_event_b",
tr2.toString(), APPLICATION_SCOPE);
}
DispatcherReqRespTests2_SPEC2_19_ForwardServletEventResponse_event.java 文件源码
项目:portals-pluto
阅读 17
收藏 0
点赞 0
评论 0
@Override
public void processEvent(EventRequest portletReq, EventResponse portletResp)
throws PortletException, IOException {
portletResp.setRenderParameters(portletReq);
long tid = Thread.currentThread().getId();
portletReq.setAttribute(THREADID_ATTR, tid);
// Now do the actual dispatch
String target = SERVLET_PREFIX + "DispatcherReqRespTests2_SPEC2_19_ForwardServletEventResponse_servlet" + SERVLET_SUFFIX + "?" + QUERY_STRING;
PortletRequestDispatcher rd = portletConfig.getPortletContext()
.getRequestDispatcher(target);
rd.forward(portletReq, portletResp);
}
DispatcherReqRespTests2_SPEC2_19_ForwardServletEventRequest_event.java 文件源码
项目:portals-pluto
阅读 17
收藏 0
点赞 0
评论 0
@Override
public void processEvent(EventRequest portletReq, EventResponse portletResp)
throws PortletException, IOException {
portletResp.setRenderParameters(portletReq);
long tid = Thread.currentThread().getId();
portletReq.setAttribute(THREADID_ATTR, tid);
// Prereq for: V2DispatcherReqRespTests2_SPEC2_19_ForwardServletEventRequest_getAttribute
portletReq.setAttribute(ATTR_PREFIX +"V2DispatcherReqRespTests2_SPEC2_19_ForwardServletEventRequest_getAttribute", "Value1");
// Prereq for: V2DispatcherReqRespTests2_SPEC2_19_ForwardServletEventRequest_getAttributeNames
portletReq.setAttribute(ATTR_PREFIX + "V2DispatcherReqRespTests2_SPEC2_19_ForwardServletEventRequest_getAttributeNames", "Value1");
// Now do the actual dispatch
String target = SERVLET_PREFIX + "DispatcherReqRespTests2_SPEC2_19_ForwardServletEventRequest_servlet" + SERVLET_SUFFIX + "?" + QUERY_STRING;
PortletRequestDispatcher rd = portletConfig.getPortletContext()
.getRequestDispatcher(target);
rd.forward(portletReq, portletResp);
}
AnnotationMethodHandlerAdapter.java 文件源码
项目:spring4-understanding
阅读 21
收藏 0
点赞 0
评论 0
@Override
public void handleEvent(EventRequest request, EventResponse response, Object handler) throws Exception {
Object returnValue = doHandle(request, response, handler);
if (returnValue != null) {
throw new IllegalStateException("Invalid event method return value: " + returnValue);
}
}
AnnotationMethodHandlerAdapter.java 文件源码
项目:spring4-understanding
阅读 20
收藏 0
点赞 0
评论 0
public boolean match(PortletRequest request) {
if (!this.modes.isEmpty() && !this.modes.contains(request.getPortletMode())) {
return false;
}
if (StringUtils.hasLength(this.phase) &&
!this.phase.equals(request.getAttribute(PortletRequest.LIFECYCLE_PHASE))) {
return false;
}
if (StringUtils.hasLength(this.value)) {
if (this.phase.equals(PortletRequest.ACTION_PHASE) &&
!this.value.equals(request.getParameter(ActionRequest.ACTION_NAME))) {
return false;
}
else if (this.phase.equals(PortletRequest.RENDER_PHASE) &&
!(new WindowState(this.value)).equals(request.getWindowState())) {
return false;
}
else if (this.phase.equals(PortletRequest.RESOURCE_PHASE) &&
!this.value.equals(((ResourceRequest) request).getResourceID())) {
return false;
}
else if (this.phase.equals(PortletRequest.EVENT_PHASE)) {
Event event = ((EventRequest) request).getEvent();
if (!this.value.equals(event.getName()) && !this.value.equals(event.getQName().toString())) {
return false;
}
}
}
return (PortletAnnotationMappingUtils.checkRequestMethod(this.methods, request) &&
PortletAnnotationMappingUtils.checkParameters(this.params, request) &&
PortletAnnotationMappingUtils.checkHeaders(this.headers, request));
}
DefaultAnnotationHandlerMapping.java 文件源码
项目:spring4-understanding
阅读 24
收藏 0
点赞 0
评论 0
@Override
public boolean match(PortletRequest request) {
if (!PortletRequest.EVENT_PHASE.equals(request.getAttribute(PortletRequest.LIFECYCLE_PHASE))) {
return false;
}
if ("".equals(this.eventName)) {
return true;
}
Event event = ((EventRequest) request).getEvent();
return (this.eventName.equals(event.getName()) || this.eventName.equals(event.getQName().toString()));
}
PortletWrappingController.java 文件源码
项目:spring4-understanding
阅读 19
收藏 0
点赞 0
评论 0
@Override
public void handleEventRequest(
EventRequest request, EventResponse response) throws Exception {
if (!(this.portletInstance instanceof EventPortlet)) {
logger.debug("Ignoring event request for non-event target portlet: " + this.portletInstance.getClass());
return;
}
EventPortlet eventPortlet = (EventPortlet) this.portletInstance;
// Delegate to PortletContentGenerator for checking and preparing.
check(request, response);
// Execute in synchronized block if required.
if (isSynchronizeOnSession()) {
PortletSession session = request.getPortletSession(false);
if (session != null) {
Object mutex = PortletUtils.getSessionMutex(session);
synchronized (mutex) {
eventPortlet.processEvent(request, response);
return;
}
}
}
eventPortlet.processEvent(request, response);
}