ConsumerCapabilities.java |
1 /* 2 * Copyright 2000-2001,2004 The Apache Software Foundation. 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 /* 18 19 */ 20 21 package org.apache.wsrp4j.consumer; 22 23 import oasis.names.tc.wsrp.v1.types.StateChange; 24 25 /** 26 * The consumer capababilities provides access to consumer related information. 27 * 28 * @author <a href='mailto:peter.fischer@de.ibm.com'>Peter Fischer</a> 29 */ 30 public interface ConsumerCapabilities { 31 32 /** 33 * Get the name of the consumer 34 * 35 * @return The name of the consumer 36 **/ 37 public String getConsumerAgent(); 38 39 /** 40 * Get the method which is used by the consumer to authenticate its users. 41 * 42 * @return String indicating how end-users were authenticated by the consumer. 43 **/ 44 public String getUserAuthentication(); 45 46 /** 47 * Get the locales which are supported by the consumer. 48 * (ISO-639 + "_" + ISO-3166) 49 * 50 * @return Array with string representations of the locales which are 51 * supported by the consumer 52 **/ 53 public String[] getSupportedLocales(); 54 55 /** 56 * Get the portlet modes the consumer is willing to manage. 57 * 58 * @return Array with string representations of the portlet modes which are 59 * supported by the consumer 60 **/ 61 public String[] getSupportedModes(); 62 63 /** 64 * Get the window states the consumer is willing to manage. 65 * 66 * @return Array with string representations of the window states which are 67 * supported by the consumer 68 **/ 69 public String[] getSupportedWindowStates(); 70 71 /** 72 * Returns a flag which is used to indicate the producer wether or not 73 * the processing of portlets is allowed to modify the portlet state. 74 * 75 * @return A flag 76 **/ 77 public StateChange getPortletStateChange(); 78 79 /** 80 * Get the character sets the consumer wants the remote portlet to use for encoding the markup. 81 * Valid character sets are defined <a href='http://www.iana.org/assignments/character-sets'>here</a> 82 * 83 * @return Array of string representations of the character encoding. 84 **/ 85 public String[] getCharacterEncodingSet(); 86 87 /** 88 * Get an array of mime types which are supported by the consumer. 89 * The order in the array defines the order of preference of the consumer. 90 * 91 * @return An array of mimes types the consumer supports. 92 **/ 93 public String[] getMimeTypes(); 94 95 /** 96 * Set the name of the consumer 97 * 98 * @param name The new name of the consumer 99 **/ 100 public void setConsumerAgent(String name); 101 102 /** 103 * Set the method of end user authentication used by the consumer.. 104 * 105 * @param authMethod indicating how end-users are authenticated by the consumer. 106 **/ 107 public void setUserAuthentication(String authMethod); 108 109 /** 110 * Set the mime types the consumer supports 111 * The order in the array defines the order of preference of the consumer. 112 * 113 * @param mimeTypes An array of mimes types the consumer supports. 114 **/ 115 public void setMimeTypes(String[] mimeTypes); 116 117 /** 118 * Set the locales which are supported by the consumer. 119 * Pattern: ISO-639 + "_" + ISO-3166 120 * 121 * @param locales Array of string representations of supported locales 122 **/ 123 public void setSupportedLocales(String[] locales); 124 125 /** 126 * Set the portlet modes which are supported by the consumer. 127 * 128 * @param modes Array of string representations of portlet modes 129 **/ 130 public void setSupportedModes(String[] modes); 131 132 /** 133 * Set the window states which are supported by the consumer. 134 * 135 * @param states Array of string representations of window states 136 **/ 137 public void setSupportedWindowStates(String[] states); 138 139 /** 140 * Set a flag which is used to indicate the producer wether or not 141 * the processing of portlets is allowed to modify the portlet state. 142 * 143 * @param portletStateChange A flag with one of the following values: 144 * StateChange.OK, StateChange.Clone, StateChange.Fault 145 **/ 146 public void setPortletStateChange(StateChange portletStateChange); 147 148 /** 149 * Set the character set the consumer wants the remote portlet to use for encoding the markup. 150 * Valid character sets are defined <a href='http://www.iana.org/assignments/character-sets'>here</a> 151 * 152 * @param charEncoding Array of string representations of the character encoding. 153 **/ 154 public void setCharacterEncodingSet(String[] charEncoding); 155 156 }