01: /*
02: * Licensed to the Apache Software Foundation (ASF) under one or more
03: * contributor license agreements. See the NOTICE file distributed with
04: * this work for additional information regarding copyright ownership.
05: * The ASF licenses this file to You under the Apache License, Version 2.0
06: * (the "License"); you may not use this file except in compliance with
07: * the License. You may obtain a copy of the License at
08: *
09: * http://www.apache.org/licenses/LICENSE-2.0
10: *
11: * Unless required by applicable law or agreed to in writing, software
12: * distributed under the License is distributed on an "AS IS" BASIS,
13: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: * See the License for the specific language governing permissions and
15: * limitations under the License.
16: */
17: package org.apache.pluto.spi.optional;
18:
19: import java.util.List;
20:
21: /**
22: * Provides callback for executing portal administration
23: * tasks within the portlet environment. This is key for
24: * when the portal needs to accessing items such as the
25: * session.
26: *
27: * Example Use Cases for the PortalAdministrationService:
28: * <ul>
29: * <li>PortletException
30: * <p>The portal wants to ensure that portlets never
31: * become stuck in an unusable state. To make sure
32: * this happens, they want the ability to clear the
33: * session if they repetedly catch exception from
34: * container invocations
35: * </p>
36: * <p>By implementing this services and registering
37: * and administrative request handler, the portal
38: * can invoke the doAdmin method of the container
39: * and then receive the request through the handler
40: * executing within the portlet environment (as
41: * opposed to the portal environment)
42: * </p>
43: * </li>
44: * </ul>
45: */
46: public interface PortalAdministrationService {
47:
48: List getAdministrativeRequestListeners();
49:
50: List getPortletInvocationListeners();
51:
52: }
|