myfaces-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From gpetra...@apache.org
Subject svn commit: r937896 - in /myfaces/extensions/cdi/trunk/jse-modules/message-module: api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/ api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/payload/ impl/src/main/java/org/apache/m...
Date Sun, 25 Apr 2010 21:55:11 GMT
Author: gpetracek
Date: Sun Apr 25 21:55:11 2010
New Revision: 937896

URL: http://svn.apache.org/viewvc?rev=937896&view=rev
Log:
[EXTCDI-21] javadoc and minor improvements

Added:
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Default.java
Modified:
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/AbstractMessage.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/CompositeMessageHandler.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/ConfigRegistry.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Formatter.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/FormatterFactory.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/GenericConfig.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/LocaleResolver.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Localizable.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Message.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContext.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContextAware.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContextConfig.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContextConfigAware.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageHandler.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageInterpolator.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageResolver.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageWithSeverity.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/NamedArgument.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/payload/MessagePayloadKey.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultFormatterFactory.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageBuilder.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageContextConfig.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/ELAwareMessageInterpolator.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/NamedArguments.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/formatter/DefaultNumberFormatter.java
    myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/formatter/ToStringFormatter.java

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/AbstractMessage.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/AbstractMessage.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/AbstractMessage.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/AbstractMessage.java Sun Apr 25 21:55:11 2010
@@ -33,7 +33,7 @@ import java.util.Collections;
 /**
  * @author Gerhard Petracek
  */
-public abstract class AbstractMessage implements Message, MessageContextConfigAware
+public abstract class AbstractMessage implements Message, MessageContextConfigAware<Message>
 {
     protected String messageTemplate;
     protected Set<NamedArgument> namedArguments = new HashSet<NamedArgument>();

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/CompositeMessageHandler.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/CompositeMessageHandler.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/CompositeMessageHandler.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/CompositeMessageHandler.java Sun Apr 25 21:55:11 2010
@@ -21,6 +21,9 @@ package org.apache.myfaces.extensions.cd
 import java.util.List;
 
 /**
+ * allows to add message filters to all message handlers via the fluent api easily
+ * (just one handler is exposed via the api)
+ *
  * @author Gerhard Petracek
  */
 public interface CompositeMessageHandler extends MessageHandler

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/ConfigRegistry.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/ConfigRegistry.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/ConfigRegistry.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/ConfigRegistry.java Sun Apr 25 21:55:11 2010
@@ -21,13 +21,21 @@ package org.apache.myfaces.extensions.cd
 import java.util.List;
 
 /**
- * TODO
+ * generic interface to add configs (for all artifacts which are configureable)
  *
  * @author Gerhard Petracek
  */
 public interface ConfigRegistry<T, B>
 {
-    B add(T t);
+    /**
+     * @param config typed config
+     * @return the current instance for using fluent configuration
+     */
+    B add(T config);
 
+    /**
+     * resets the existing configuration
+     * @return the config which was removed
+     */
     List<T> reset();
 }

Added: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Default.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Default.java?rev=937896&view=auto
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Default.java (added)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Default.java Sun Apr 25 21:55:11 2010
@@ -0,0 +1,36 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you 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.myfaces.extensions.cdi.message.api;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+/**
+ * marker for default implementations (e.g. formatters) to allow a different handling (if needed)
+ *
+ * @author Gerhard Petracek
+ */
+@Target({TYPE})
+@Retention(RUNTIME)
+public @interface Default
+{
+}
\ No newline at end of file

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Formatter.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Formatter.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Formatter.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Formatter.java Sun Apr 25 21:55:11 2010
@@ -19,14 +19,27 @@
 package org.apache.myfaces.extensions.cdi.message.api;
 
 /**
+ * usually a formatter is responsible for one type and allows to format
+ * this type as string
+ *
  * @author Gerhard Petracek
+ * @author Manfred Geiler
  */
 public interface Formatter<T>
 {
+    /**
+     * answers the question if the instance is able to format an object of the given type
+     * @param type the type of the instance which has to be formatted
+     * @return true to signal that the formatter is responsible for formatting the given type
+     */
     boolean isResponsibleFor(Class<?> type);
 
+    /**
+     * formats the given instance as string
+     *
+     * @param messageContext current message context
+     * @param valueToFormat an instance which should be formatted
+     * @return the formatted result as string
+     */
     String format(MessageContext messageContext, T valueToFormat);
-
-    //TODO
-    boolean isDefault();
 }

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/FormatterFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/FormatterFactory.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/FormatterFactory.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/FormatterFactory.java Sun Apr 25 21:55:11 2010
@@ -22,17 +22,40 @@ import java.io.Serializable;
 import java.util.Locale;
 
 /**
+ * creates and initialize a formatter for a given type
+ *
  * @author Gerhard Petracek
  */
 public interface FormatterFactory extends ConfigRegistry<Formatter, FormatterFactory>, Serializable
 {
+    /**
+     * @param type the type of the instance which has to be formatted
+     * @return an initialized formatter which is able to format instances of the given type (or a default formatter)
+     */
     Formatter findFormatter(Class<?> type);
 
-    void addFormatterConfig(Class<?> type, GenericConfig formatterConfig);
+    /**
+     * allows to add a config for formatting the given type
+     *
+     * @param type the type the config belongs to
+     * @param formatterConfig config for the formatter of the given type
+     * @return the instance of the factory to allow a fluent api
+     */
+    FormatterFactory addFormatterConfig(Class<?> type, GenericConfig formatterConfig);
 
-    void addFormatterConfig(Class<?> type, GenericConfig formatterConfig, Locale locale);
+    /**
+     * allows to add a config for formatting the given type
+     *
+     * @param type the type the config belongs to
+     * @param formatterConfig config for the formatter of the given type
+     * @param locale the locale the config belongs to
+     * @return the instance of the factory to allow a fluent api
+     */
+    FormatterFactory addFormatterConfig(Class<?> type, GenericConfig formatterConfig, Locale locale);
 
     /**
+     * @param type the type which has to be formatted and maybe need a config for it
+     * @param locale the current locale
      * @return the config for a given type and locale - null otherwise
      */
     GenericConfig findFormatterConfig(Class<?> type, Locale locale);

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/GenericConfig.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/GenericConfig.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/GenericConfig.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/GenericConfig.java Sun Apr 25 21:55:11 2010
@@ -21,15 +21,37 @@ package org.apache.myfaces.extensions.cd
 import java.io.Serializable;
 
 /**
+ * a key/value based config
+ *
  * @author Gerhard Petracek
  */
 public interface GenericConfig extends Serializable
 {
+    /**
+     * to add a key/value pair to the config
+     *
+     * @param key key for the current value
+     * @param value value for the current key
+     * @return the instance of the config to allow a fluent api
+     */
     GenericConfig addProperty(String key, Serializable value);
 
+    /**
+     * @param key the key of the value in question
+     * @return the value for the given key - null otherwise
+     */
     Serializable getProperty(String key);
 
+    /**
+     * @param key the key of the value in question
+     * @param targetType type of the expected value
+     * @return the value for the given key - null otherwise
+     */
     <T extends Serializable> T getProperty(String key, Class<T> targetType);
 
+    /**
+     * @param key the key of the value in question
+     * @return true if a value for the given key is available - false otherwise
+     */
     boolean containsProperty(String key);
 }
\ No newline at end of file

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/LocaleResolver.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/LocaleResolver.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/LocaleResolver.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/LocaleResolver.java Sun Apr 25 21:55:11 2010
@@ -25,5 +25,8 @@ import java.util.Locale;
  */
 public interface LocaleResolver
 {
+    /**
+     * @return the current locale
+     */
     Locale getLocale();
 }
\ No newline at end of file

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Localizable.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Localizable.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Localizable.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Localizable.java Sun Apr 25 21:55:11 2010
@@ -23,5 +23,9 @@ package org.apache.myfaces.extensions.cd
  */
 public interface Localizable
 {
+    /**
+     * @param messageContext the current context
+     * @return the text which represents the current instance for the given message context
+     */
     String toString(MessageContext messageContext);
 }

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Message.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Message.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Message.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/Message.java Sun Apr 25 21:55:11 2010
@@ -24,17 +24,34 @@ import java.io.Serializable;
 import java.util.Map;
 
 /**
+ * @author Manfred Geiler
  * @author Gerhard Petracek
  */
 public interface Message extends Localizable, Serializable
 {
+    /**
+     * @return the message template (or inline-text) of the current message
+     */
     String getTemplate();
 
+    /**
+     * @return all named and numbered arguments
+     */
     Serializable[] getArguments();
 
+    /**
+     * @param arguments 1-n new arguments for the current message
+     */
     void addArgument(Serializable... arguments);
 
+    /**
+     * @return the payload of the message
+     */
     Map<Class, Class<? extends MessagePayload>> getPayload();
 
+    /**
+     * @param key of the payload
+     * @param payload value of the payload
+     */
     void addPayload(Class key, Class<? extends MessagePayload> payload);
 }

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContext.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContext.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContext.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContext.java Sun Apr 25 21:55:11 2010
@@ -27,40 +27,93 @@ import java.io.Serializable;
  */
 public interface MessageContext extends LocaleResolver, MessageHandler, Serializable
 {
+    /**
+     * @return message builder to add and/or create a new message based on the current context via a fluent api
+     */
     MessageBuilder message();
 
+    /**
+     * @return the current config to change it or create a new one base on the current config
+     */
     MessageContextConfig config();
 
+    /**
+     * @param contextType the type of the custom implementation
+     * @return the instance of the current message context to use the api of the concrete implementation
+     */
     <T extends MessageContext> T typed(Class<T> contextType);
 
     /*
     * convenient methods
     */
 
+    /**
+     * @return creates a new context based on the current one
+     */
     MessageContext cloneContext();
 
+    /**
+     * @param message the message which should be converted to the final text
+     * @return the final text generated via the current message context
+     */
     String getMessageText(Message message);
 
+    /**
+     * @param message a message which should be added to the current context (message handlers)
+     */
     void addMessage(Message message);
 
     interface MessageBuilder
     {
+        /**
+         * @param messagePayload payload for the current message
+         * @return the current instance of the message builder to allow a fluent api
+         */
         MessageBuilder payload(Class<? extends MessagePayload>... messagePayload);
 
+        /**
+         * @param messageTemplate message template (or inline-text) for the current message
+         * @return the current instance of the message builder to allow a fluent api
+         */
         MessageBuilder text(String messageTemplate);
 
+        /**
+         * @param arguments numbered and/or named argument(s) for the current message
+         * @return the current instance of the message builder to allow a fluent api
+         */
         MessageBuilder argument(Serializable... arguments);
 
+        /**
+         * helper method to add named arguments easily
+         * @param name the name/key of the named argument
+         * @param value the value of the named argument
+         * @return the current instance of the message builder to allow a fluent api
+         */
         MessageBuilder namedArgument(String name, Serializable value);
 
         //see MessageContext for add(Message)
 
+        /**
+         * adds the message which was built via the fluent api
+         * @return the message which was built via the fluent api
+         */
         Message add();
 
+        /**
+         * @return the message which was built via the fluent api
+         */
         Message create();
 
+        /**
+         * @return the text of the message which was built via the fluent api
+         */
         String toText();
 
+        /**
+         * converts a given message to the text via the current context
+         * @param message the message which should be converted
+         * @return the converted text of the given message
+         */
         String toText(Message message);
     }
 }

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContextAware.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContextAware.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContextAware.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContextAware.java Sun Apr 25 21:55:11 2010
@@ -25,6 +25,9 @@ package org.apache.myfaces.extensions.cd
  */
 public interface MessageContextAware
 {
+    /**
+     * @param messageContext instance of the current message-context
+     */
     void setMessageContext(MessageContext messageContext);
 
     MessageContext getMessageContext();

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContextConfig.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContextConfig.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContextConfig.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContextConfig.java Sun Apr 25 21:55:11 2010
@@ -27,53 +27,109 @@ import java.util.Locale;
 public interface MessageContextConfig extends Serializable
 {
     /**
-     * create a new context based on the default context - default context won't get modified
+     * create a new context based on the default context - the default context won't get modified
      *
-     * @return
+     * @return a message context builder based on the current config
      */
     MessageContextBuilder use();
 
     /**
      * change the default context
      *
-     * @return
+     * @return a message context builder to change the current config
      */
     MessageContextBuilder change();
 
+    /**
+     * @return the current message interpolator
+     */
     MessageInterpolator getMessageInterpolator();
 
+    /**
+     * @return the current message resolver
+     */
     MessageResolver getMessageResolver();
 
+    /**
+     * @return the current locale resolver
+     */
     LocaleResolver getLocaleResolver();
 
-    //TODO
+    /**
+     * @return the current message handler
+     */
     MessageHandler getMessageHandler();
 
+    /**
+     * @return the current formatter factory
+     */
     FormatterFactory getFormatterFactory();
 
     interface MessageContextBuilder
     {
+        /**
+         * @param messageInterpolator a new message interpolator
+         * @return the instance of the current message context builder
+         */
         MessageContextBuilder messageInterpolator(MessageInterpolator messageInterpolator);
 
+        /**
+         * @param messageResolver a new message resolver
+         * @return the instance of the current message context builder
+         */
         MessageContextBuilder messageResolver(MessageResolver messageResolver);
 
+        /**
+         * @param formatter an additional argument formatter
+         * @return the instance of the current message context builder
+         */
         MessageContextBuilder addFormatter(Formatter formatter);
 
-        MessageContextBuilder addFormatterConfig(Class<?> type, GenericConfig config);
-
-        MessageContextBuilder addFormatterConfig(Class<?> type, GenericConfig config, Locale locale);
-
+        /**
+         * @param type the type the config belongs to
+         * @param formatterConfig config for the formatter of the given type
+         * @return the instance of the current message context builder
+         */
+        MessageContextBuilder addFormatterConfig(Class<?> type, GenericConfig formatterConfig);
+
+        /**
+         * @param type the type the config belongs to
+         * @param formatterConfig config for the formatter of the given type
+         * @param locale the locale the config belongs to
+         * @return the instance of the current message context builder
+         */
+        MessageContextBuilder addFormatterConfig(Class<?> type, GenericConfig formatterConfig, Locale locale);
+
+        /**
+         * @param formatterFactory a new argument formatter factory
+         * @return the instance of the current message context builder
+         */
         MessageContextBuilder formatterFactory(FormatterFactory formatterFactory);
 
+        /**
+         * @param messageHandler an additional message handler
+         * @return the instance of the current message context builder
+         */
         MessageContextBuilder addMessageHandler(MessageHandler messageHandler);
 
+        /**
+         * @param localeResolver a new locale resolver
+         * @return the instance of the current message context builder
+         */
         MessageContextBuilder localeResolver(LocaleResolver localeResolver);
 
+        /**
+         * resets the current builder to the initial state
+         * @return the instance of the current message context builder
+         */
         MessageContextBuilder reset();
 
-        @Deprecated
+        @Deprecated //currently not implemented
         MessageContextBuilder clear();
 
+        /**
+         * @return a new message context based on the current config
+         */
         MessageContext create();
     }
 }

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContextConfigAware.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContextConfigAware.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContextConfigAware.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageContextConfigAware.java Sun Apr 25 21:55:11 2010
@@ -19,14 +19,20 @@
 package org.apache.myfaces.extensions.cdi.message.api;
 
 /**
- * TODO
  * allows to store e.g. messages with the original config (if it is serializable)
  *
  * @author Gerhard Petracek
  */
-public interface MessageContextConfigAware
+public interface MessageContextConfigAware<T>
 {
-    Message setMessageContextConfig(MessageContextConfig messageContextConfig);
+    /**
+     * @param messageContextConfig config of the current message context
+     * @return the current instance
+     */
+    T setMessageContextConfig(MessageContextConfig messageContextConfig);
 
+    /**
+     * @return the stored config - null otherwise
+     */
     MessageContextConfig getMessageContextConfig();
 }

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageHandler.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageHandler.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageHandler.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageHandler.java Sun Apr 25 21:55:11 2010
@@ -28,21 +28,40 @@ import java.util.Set;
  */
 public interface MessageHandler
 {
+    /**
+     * called to add a message to a special target (known by the implementations)
+     *
+     * @param messageContext current message context
+     * @param message the new message to add
+     */
     void addMessage(MessageContext messageContext, Message message);
 
+    /**
+     * @param messageFilters message filters which should be added to the current message handler
+     */
     void addMessageFilter(MessageFilter... messageFilters);
 
+    /**
+     * @return the registered message filter(s)
+     */
     Set<MessageFilter> getMessageFilters();
 
     //TODO move to a separated interface?
-
+    /**
+     * removes an added message (if possible)
+     * @param message to be removed
+     */
     void removeMessage(Message message);
 
     //TODO move to a separated interface?
-
+    /**
+     * removes all added messages (if possible)
+     */
     void removeAllMessages();
 
     //TODO move to a separated interface?
-
+    /**
+     * @return all added messages (if they are available)
+     */
     List<Message> getMessages();
 }

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageInterpolator.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageInterpolator.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageInterpolator.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageInterpolator.java Sun Apr 25 21:55:11 2010
@@ -26,5 +26,12 @@ import java.io.Serializable;
  */
 public interface MessageInterpolator
 {
+    /**
+     * replaces the arguments of the given message with the given arguments
+     *
+     * @param messageTemplate the message template or text which has to be interpolated
+     * @param arguments a list of numbered and/or named arguments for the current message
+     * @return the final message text if an interpolation was possible - the unmodified messageTemplate otherwise
+     */
     String interpolate(String messageTemplate, Serializable... arguments);
 }

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageResolver.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageResolver.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageResolver.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageResolver.java Sun Apr 25 21:55:11 2010
@@ -31,8 +31,9 @@ public interface MessageResolver
     static final String MISSING_RESOURCE_MARKER = "???";
 
     /**
-     * @param key    unique key
-     * @param locale
+     * @param key the message template (or in-lined text) of the current message
+     * @param locale the current locale
+     * @param payload the payload of the message e.g. to use different message sources
      * @return the final but not interpolated message text
      */
     String getMessage(String key, Locale locale, Map<Class, Class<? extends MessagePayload>> payload);

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageWithSeverity.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageWithSeverity.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageWithSeverity.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/MessageWithSeverity.java Sun Apr 25 21:55:11 2010
@@ -21,9 +21,14 @@ package org.apache.myfaces.extensions.cd
 import org.apache.myfaces.extensions.cdi.message.api.payload.MessagePayload;
 
 /**
+ * convenience interface
+ * 
  * @author Gerhard Petracek
  */
 public interface MessageWithSeverity extends Message
 {
+    /**
+     * @return the severity of the message based on the message payload
+     */
     Class<? extends MessagePayload> getSeverity();
 }

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/NamedArgument.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/NamedArgument.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/NamedArgument.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/NamedArgument.java Sun Apr 25 21:55:11 2010
@@ -21,11 +21,20 @@ package org.apache.myfaces.extensions.cd
 import java.io.Serializable;
 
 /**
+ * to allow a simpler interface for adding attributes.
+ * furthermore, it allows message with mixed (numbered and named) arguments
+ * 
  * @author Gerhard Petracek
  */
 public interface NamedArgument extends Serializable
 {
+    /**
+     * @return name/key of the argument which can be used in the message-text as placeholder
+     */
     String getName();
 
+    /**
+     * @return value of the argument
+     */
     Serializable getValue();
 }

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/payload/MessagePayloadKey.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/payload/MessagePayloadKey.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/payload/MessagePayloadKey.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/api/src/main/java/org/apache/myfaces/extensions/cdi/message/api/payload/MessagePayloadKey.java Sun Apr 25 21:55:11 2010
@@ -24,6 +24,8 @@ import static java.lang.annotation.Reten
 import java.lang.annotation.Target;
 
 /**
+ * optional marker to group payload implementations
+ *
  * @author Gerhard Petracek
  */
 @Target({TYPE})

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultFormatterFactory.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultFormatterFactory.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultFormatterFactory.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultFormatterFactory.java Sun Apr 25 21:55:11 2010
@@ -90,18 +90,20 @@ public class DefaultFormatterFactory imp
         }
     }
 
-    public void addFormatterConfig(Class<?> type, GenericConfig formatterConfig)
+    public FormatterFactory addFormatterConfig(Class<?> type, GenericConfig formatterConfig)
     {
         addFormatterConfig(type, formatterConfig, Locale.getDefault());
+        return this;
     }
 
-    public void addFormatterConfig(Class<?> type, GenericConfig formatterConfig, Locale locale)
+    public FormatterFactory addFormatterConfig(Class<?> type, GenericConfig formatterConfig, Locale locale)
     {
         if (formatterConfig.containsProperty(Locale.class.getName()))
         {
             locale = formatterConfig.getProperty(Locale.class.getName(), Locale.class);
         }
         this.formatterConfigs.put(createKey(type, locale), formatterConfig);
+        return this;
     }
 
     public GenericConfig findFormatterConfig(Class<?> type, Locale locale)

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageBuilder.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageBuilder.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageBuilder.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageBuilder.java Sun Apr 25 21:55:11 2010
@@ -27,6 +27,7 @@ import org.apache.myfaces.extensions.cdi
 import org.apache.myfaces.extensions.cdi.message.api.NamedArgument;
 import org.apache.myfaces.extensions.cdi.message.api.Localizable;
 import org.apache.myfaces.extensions.cdi.message.api.Formatter;
+import org.apache.myfaces.extensions.cdi.message.api.Default;
 import org.apache.myfaces.extensions.cdi.message.api.payload.MessagePayload;
 import org.apache.myfaces.extensions.cdi.message.api.payload.MessagePayloadKey;
 import org.apache.myfaces.extensions.cdi.message.api.payload.MessageSeverity;
@@ -272,7 +273,7 @@ class DefaultMessageBuilder implements M
             argument = arguments[i];
             formatter = this.messageContext.config().getFormatterFactory().findFormatter(argument.getClass());
 
-            if (formatter != null && !formatter.isDefault())
+            if (formatter != null && !isDefaultFormatter(formatter.getClass()))
             {
                 //noinspection unchecked
                 result.append(formatter.format(this.messageContext, argument));
@@ -300,6 +301,11 @@ class DefaultMessageBuilder implements M
         return result.toString();
     }
 
+    private boolean isDefaultFormatter(Class<? extends Formatter> formatterClass)
+    {
+        return formatterClass.isAnnotationPresent(Default.class);
+    }
+
     private String extractTemplate(String template)
     {
         String result = getEscapedTemplate(template);

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageContextConfig.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageContextConfig.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageContextConfig.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/DefaultMessageContextConfig.java Sun Apr 25 21:55:11 2010
@@ -224,7 +224,7 @@ class DefaultMessageContextConfig implem
         this.messageInterpolator = new DefaultMessageInterpolator();
         this.messageResolver = null;
         this.messageHandlers = new HashSet<MessageHandler>();
-        this.localeResolver = new org.apache.myfaces.extensions.cdi.message.impl.DefaultLocaleResolver();
+        this.localeResolver = new DefaultLocaleResolver();
         this.formatterFactory = new DefaultFormatterFactory();
     }
 

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/ELAwareMessageInterpolator.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/ELAwareMessageInterpolator.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/ELAwareMessageInterpolator.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/ELAwareMessageInterpolator.java Sun Apr 25 21:55:11 2010
@@ -94,7 +94,7 @@ public class ELAwareMessageInterpolator 
 
             ValueExpression valueExpression =
                     factory.createValueExpression(elContext, "${" + expression + "}", Object.class);
-            
+
             Object value = valueExpression.getValue(elContext);
 
             if (value != null && !isUnresolvedArgument(expression, value))

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/NamedArguments.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/NamedArguments.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/NamedArguments.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/NamedArguments.java Sun Apr 25 21:55:11 2010
@@ -28,6 +28,10 @@ import java.util.Map;
 /**
  * @author Gerhard Petracek
  */
+
+/**
+ * @author Gerhard Petracek
+ */
 public class NamedArguments
 {
     private NamedArgumentBuilder namedArgumentBuilder = new NamedArgumentBuilder();

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/formatter/DefaultNumberFormatter.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/formatter/DefaultNumberFormatter.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/formatter/DefaultNumberFormatter.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/formatter/DefaultNumberFormatter.java Sun Apr 25 21:55:11 2010
@@ -74,11 +74,6 @@ class DefaultNumberFormatter implements 
         }
     }
 
-    public boolean isDefault()
-    {
-        return false;
-    }
-
     private void resetConfig()
     {
         this.groupingSeparator = null;

Modified: myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/formatter/ToStringFormatter.java
URL: http://svn.apache.org/viewvc/myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/formatter/ToStringFormatter.java?rev=937896&r1=937895&r2=937896&view=diff
==============================================================================
--- myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/formatter/ToStringFormatter.java (original)
+++ myfaces/extensions/cdi/trunk/jse-modules/message-module/impl/src/main/java/org/apache/myfaces/extensions/cdi/message/impl/formatter/ToStringFormatter.java Sun Apr 25 21:55:11 2010
@@ -18,6 +18,7 @@
  */
 package org.apache.myfaces.extensions.cdi.message.impl.formatter;
 
+import org.apache.myfaces.extensions.cdi.message.api.Default;
 import org.apache.myfaces.extensions.cdi.message.api.Formatter;
 import org.apache.myfaces.extensions.cdi.message.api.MessageContext;
 
@@ -26,6 +27,7 @@ import java.io.Serializable;
 /**
  * @author Gerhard Petracek
  */
+@Default
 class ToStringFormatter implements Formatter<Object>, Serializable
 {
     private static final long serialVersionUID = 3529715901768617301L;
@@ -46,9 +48,4 @@ class ToStringFormatter implements Forma
     {
         return valueToFormat != null ? valueToFormat.toString() : "";
     }
-
-    public boolean isDefault()
-    {
-        return true;
-    }
 }



Mime
View raw message