[cai18n-dev] [GIT] Compiler assisted internalization library branch, master, updated. 1e4c54f2cb4f90ed5af9d40afe9573d2dd9f7a76

added by portage for gitosis-gentoo git-noreply at pixie.qos.ch
Wed Aug 26 16:22:44 CEST 2009


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Compiler assisted internalization library".

The branch, master has been updated
       via  1e4c54f2cb4f90ed5af9d40afe9573d2dd9f7a76 (commit)
      from  2d5189416acbfd4acbdcfa98a74eb31ded7ae4e8 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
http://git.qos.ch/gitweb/?p=cai18n.git;a=commit;h=1e4c54f2cb4f90ed5af9d40afe9573d2dd9f7a76
http://github.com/ceki/cai18n/commit/1e4c54f2cb4f90ed5af9d40afe9573d2dd9f7a76

commit 1e4c54f2cb4f90ed5af9d40afe9573d2dd9f7a76
Author: Ceki Gulcu <ceki at qos.ch>
Date:   Wed Aug 26 16:19:42 2009 +0200

    x- Enum class can now be annotated which makes it much easier during verification

diff --git a/cai18n-api/src/main/java/ch/qos/cai18n/Cai18nConstants.java b/cai18n-api/src/main/java/ch/qos/cai18n/Cai18nConstants.java
new file mode 100644
index 0000000..7568ff0
--- /dev/null
+++ b/cai18n-api/src/main/java/ch/qos/cai18n/Cai18nConstants.java
@@ -0,0 +1,8 @@
+package ch.qos.cai18n;
+
+public class Cai18nConstants {
+
+  final public static String CODE_URL_PREFIX = "http://cai18n.qos.ch/codes.html";
+  final public static String MISSING_RB_ANNOTATION_URL =  Cai18nConstants.CODE_URL_PREFIX+"#missingRBAnnotation";
+  
+}
diff --git a/cai18n-api/src/test/java/ch/qos/cai18n/sample/Colors.java b/cai18n-api/src/main/java/ch/qos/cai18n/LocaleNames.java
similarity index 77%
copy from cai18n-api/src/test/java/ch/qos/cai18n/sample/Colors.java
copy to cai18n-api/src/main/java/ch/qos/cai18n/LocaleNames.java
index fda5f1f..73119e0 100644
--- a/cai18n-api/src/test/java/ch/qos/cai18n/sample/Colors.java
+++ b/cai18n-api/src/main/java/ch/qos/cai18n/LocaleNames.java
@@ -19,11 +19,15 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
+package ch.qos.cai18n;
 
-package ch.qos.cai18n.sample;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
 
-public enum Colors {
-	RED, 
-	BLUE,
-	GREEN;
+ at Retention(RetentionPolicy.RUNTIME)
+ at Target(ElementType.TYPE)
+public @interface LocaleNames {
+  String[] value();
 }
diff --git a/cai18n-api/src/main/java/ch/qos/cai18n/MessageConveyor.java b/cai18n-api/src/main/java/ch/qos/cai18n/MessageConveyor.java
index 1edc794..d471b5a 100644
--- a/cai18n-api/src/main/java/ch/qos/cai18n/MessageConveyor.java
+++ b/cai18n-api/src/main/java/ch/qos/cai18n/MessageConveyor.java
@@ -20,13 +20,14 @@
  * SOFTWARE.
  */
 
-
 package ch.qos.cai18n;
 
 import java.text.MessageFormat;
 import java.util.Locale;
 import java.util.ResourceBundle;
 
+import ch.qos.cai18n.util.AnnotationExtractor;
+
 public class MessageConveyor implements IMessageConveyor {
 
   Locale locale;
@@ -35,17 +36,23 @@ public class MessageConveyor implements IMessageConveyor {
     this.locale = locale;
   }
 
-
   public <E extends Enum<?>> String getMessage(E e, Object... args) {
-  String code = e.toString();
-    ResourceBundle rb = ResourceBundle
-        .getBundle(e.getClass().getName(), locale);
+    String code = e.toString();
+
+    String resouceBundleName = AnnotationExtractor.getResourceBundleName(e
+        .getClass());
+    if (resouceBundleName == null) {
+      throw new IllegalArgumentException(
+          "Missing ResourceBundleAnnotation in [" + e.getClass().getName()
+              + "]. See also " + Cai18nConstants.MISSING_RB_ANNOTATION_URL);
+    }
+    ResourceBundle rb = ResourceBundle.getBundle(resouceBundleName, locale);
 
     String value = rb.getString(code);
     if (value == null) {
       return "No key found for " + code;
     } else {
-      if (args.length == 0) {
+      if (args == null || args.length == 0) {
         return value;
       } else {
         return MessageFormat.format(value, args);
diff --git a/cai18n-api/src/test/java/ch/qos/cai18n/sample/Colors.java b/cai18n-api/src/main/java/ch/qos/cai18n/ResourceBundleName.java
similarity index 77%
copy from cai18n-api/src/test/java/ch/qos/cai18n/sample/Colors.java
copy to cai18n-api/src/main/java/ch/qos/cai18n/ResourceBundleName.java
index fda5f1f..449aebd 100644
--- a/cai18n-api/src/test/java/ch/qos/cai18n/sample/Colors.java
+++ b/cai18n-api/src/main/java/ch/qos/cai18n/ResourceBundleName.java
@@ -19,11 +19,15 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
+package ch.qos.cai18n;
 
-package ch.qos.cai18n.sample;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
 
-public enum Colors {
-	RED, 
-	BLUE,
-	GREEN;
+ at Retention(RetentionPolicy.RUNTIME)
+ at Target(ElementType.TYPE)
+public @interface ResourceBundleName {
+  String value();
 }
diff --git a/cai18n-api/src/main/java/ch/qos/cai18n/MessageConveyor.java b/cai18n-api/src/main/java/ch/qos/cai18n/util/AnnotationExtractor.java
similarity index 60%
copy from cai18n-api/src/main/java/ch/qos/cai18n/MessageConveyor.java
copy to cai18n-api/src/main/java/ch/qos/cai18n/util/AnnotationExtractor.java
index 1edc794..28763c7 100644
--- a/cai18n-api/src/main/java/ch/qos/cai18n/MessageConveyor.java
+++ b/cai18n-api/src/main/java/ch/qos/cai18n/util/AnnotationExtractor.java
@@ -19,38 +19,28 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
+package ch.qos.cai18n.util;
 
+import ch.qos.cai18n.LocaleNames;
+import ch.qos.cai18n.ResourceBundleName;
 
-package ch.qos.cai18n;
-
-import java.text.MessageFormat;
-import java.util.Locale;
-import java.util.ResourceBundle;
-
-public class MessageConveyor implements IMessageConveyor {
-
-  Locale locale;
-
-  public MessageConveyor(Locale locale) {
-    this.locale = locale;
+public class AnnotationExtractor {
+  
+  static public <E extends Enum<?>> String getResourceBundleName(Class<E> someClass) {
+    ResourceBundleName rbnAnnotation = (ResourceBundleName) someClass.getAnnotation(ResourceBundleName.class);
+    if(rbnAnnotation == null) {
+      return null;
+    }
+    return rbnAnnotation.value();
   }
 
-
-  public <E extends Enum<?>> String getMessage(E e, Object... args) {
-  String code = e.toString();
-    ResourceBundle rb = ResourceBundle
-        .getBundle(e.getClass().getName(), locale);
-
-    String value = rb.getString(code);
-    if (value == null) {
-      return "No key found for " + code;
-    } else {
-      if (args.length == 0) {
-        return value;
-      } else {
-        return MessageFormat.format(value, args);
-      }
+  
+  static public <E extends Enum<?>> String[] getLocaleNames(Class<E> someClass) {
+    LocaleNames localeNamesAnnotation = (LocaleNames) someClass.getAnnotation(LocaleNames.class);
+    if(localeNamesAnnotation == null) {
+      return null;
     }
+    return localeNamesAnnotation.value();
   }
 
 }
diff --git a/cai18n-api/src/main/java/ch/qos/cai18n/verifier/Cai18nError.java b/cai18n-api/src/main/java/ch/qos/cai18n/verifier/Cai18nError.java
index 92f8134..3243345 100644
--- a/cai18n-api/src/main/java/ch/qos/cai18n/verifier/Cai18nError.java
+++ b/cai18n-api/src/main/java/ch/qos/cai18n/verifier/Cai18nError.java
@@ -26,19 +26,24 @@ import java.util.Locale;
 public class Cai18nError {
 
   enum ErrorType {
-    EMPTY_RB, EMPTY_ENUM, ABSENT_IN_RB, ABSENT_IN_ENUM;
+    MISSING_RBN_ANNOTATION, FAILED_TO_FIND_RB, EMPTY_RB, EMPTY_ENUM, ABSENT_IN_RB, ABSENT_IN_ENUM;
   }
 
   final ErrorType errorType;
   final String code;
   final Locale locale;
+  final Class<?> enumClass;
   final String enumClassName;
+  final String resouceBundleName;
 
-  Cai18nError(ErrorType errorType, String code, String enumClassName, Locale locale) {
+  Cai18nError(ErrorType errorType, String code, Class<?> enumClass,
+      Locale locale, String resourceBundleName) {
     this.errorType = errorType;
     this.code = code;
-    this.enumClassName = enumClassName;
+    this.enumClass = enumClass;
+    this.enumClassName = enumClass.getName();
     this.locale = locale;
+    this.resouceBundleName = resourceBundleName;
   }
 
   public ErrorType getErrorType() {
@@ -53,23 +58,32 @@ public class Cai18nError {
     return locale;
   }
 
-  public String getEnumClassName() {
-    return enumClassName;
+  public Class<?> getEnumClass() {
+    return enumClass;
   }
 
   @Override
   public String toString() {
     switch (errorType) {
+    case MISSING_RBN_ANNOTATION:
+      return "Missing @ResourceBundleName annotation in enun class ["
+          + enumClassName + "]";
+    case FAILED_TO_FIND_RB:
+      return "Failed to locate resource bundle [" + resouceBundleName
+          + "]for locale [" + locale + "] for enum class [" + enumClassName
+          + "]";
     case EMPTY_RB:
-      return "Empty resource bundle for locale [" + locale + "]";
+      return "Empty resource bundle named [" + resouceBundleName
+          + "] for locale [" + locale + "]";
     case EMPTY_ENUM:
       return "Empty enum class [" + enumClassName + "]";
     case ABSENT_IN_ENUM:
-      return "Code [" + code + "] present in resource bundle locale [" + locale
+      return "Code [" + code + "] present in resource bundle named ["
+          + resouceBundleName + "] for locale [" + locale
           + "] but absent in enum class [" + enumClassName + "]";
     case ABSENT_IN_RB:
       return "Code [" + code + "] present in enum class [" + enumClassName
-          + "] but absent in resource bundle locale [" + locale + "]";
+          + "] but absent in resource bundle named ["+resouceBundleName+"] for locale [" + locale + "]";
     default:
       throw new IllegalStateException("Impossible to reach here");
     }
diff --git a/cai18n-api/src/main/java/ch/qos/cai18n/verifier/ErrorFactory.java b/cai18n-api/src/main/java/ch/qos/cai18n/verifier/ErrorFactory.java
index b9af952..2f74f53 100644
--- a/cai18n-api/src/main/java/ch/qos/cai18n/verifier/ErrorFactory.java
+++ b/cai18n-api/src/main/java/ch/qos/cai18n/verifier/ErrorFactory.java
@@ -28,14 +28,16 @@ import ch.qos.cai18n.verifier.Cai18nError.ErrorType;
 public class ErrorFactory {
 
   final Locale locale;
-  final String enumClassName;
- 
-  public ErrorFactory(String enumClassName, Locale locale) {
+  final Class<?> enumClass;
+  final String resourceBundleName;
+  
+  public ErrorFactory(Class<?> enumClass, Locale locale, String resourceBundleName) {
     this.locale = locale;
-    this.enumClassName = enumClassName;
+    this.enumClass = enumClass;
+    this.resourceBundleName = resourceBundleName;
   }
  
   Cai18nError buildError(ErrorType errorType, String code) {
-    return new Cai18nError(errorType, code, enumClassName, locale);
+    return new Cai18nError(errorType, code, enumClass, locale, resourceBundleName);
   }
 }
diff --git a/cai18n-api/src/main/java/ch/qos/cai18n/verifier/MessageCodeVerifier.java b/cai18n-api/src/main/java/ch/qos/cai18n/verifier/MessageCodeVerifier.java
index a1c2aca..8fb2d2f 100644
--- a/cai18n-api/src/main/java/ch/qos/cai18n/verifier/MessageCodeVerifier.java
+++ b/cai18n-api/src/main/java/ch/qos/cai18n/verifier/MessageCodeVerifier.java
@@ -28,12 +28,14 @@ import java.util.Locale;
 import java.util.ResourceBundle;
 import java.util.Set;
 
+import ch.qos.cai18n.util.AnnotationExtractor;
 import ch.qos.cai18n.verifier.Cai18nError.ErrorType;
 
 /**
+ * Given an enum class, verify that the corresponding resource bundles contain
+ * the correct codes.
  * 
  * @author Ceki Gulcu
- *
  */
 public class MessageCodeVerifier {
 
@@ -59,24 +61,41 @@ public class MessageCodeVerifier {
    */
   public List<Cai18nError> verify(Locale locale) {
     List<Cai18nError> errorList = new ArrayList<Cai18nError>();
-    ResourceBundle rb = ResourceBundle.getBundle(enumClass.getName(), locale,
+
+    String resouceBundleName = AnnotationExtractor
+        .getResourceBundleName(enumClass);
+
+    if (resouceBundleName == null) {
+      errorList.add(new Cai18nError(ErrorType.MISSING_RBN_ANNOTATION, "",
+          enumClass, locale, ""));
+      // no point in continuing
+      return errorList;
+    }
+
+    ResourceBundle rb = ResourceBundle.getBundle(resouceBundleName, locale,
         classLoader);
 
-    ErrorFactory errorFactory = new ErrorFactory(enumClass.getName(), locale);
+    ErrorFactory errorFactory = new ErrorFactory(enumClass, locale,
+        resouceBundleName);
+
+    if (rb == null) {
+      errorList.add(errorFactory.buildError(ErrorType.FAILED_TO_FIND_RB, ""));
+    }
+
     Set<String> rbKeySet = rb.keySet();
     if (rbKeySet.size() == 0) {
       errorList.add(errorFactory.buildError(ErrorType.EMPTY_RB, ""));
     }
 
     Enum<?>[] enumArray = enumClass.getEnumConstants();
-    if(enumArray == null || enumArray.length == 0) {
+    if (enumArray == null || enumArray.length == 0) {
       errorList.add(errorFactory.buildError(ErrorType.EMPTY_ENUM, ""));
     }
-    
-    if(errorList.size() != 0) {
+
+    if (errorList.size() != 0) {
       return errorList;
     }
-    
+
     for (Enum<?> e : enumArray) {
       String enumKey = e.toString();
       if (rbKeySet.contains(enumKey)) {
diff --git a/cai18n-api/src/test/java/ch/qos/cai18n/sample/Colors.java b/cai18n-api/src/test/java/ch/qos/cai18n/sample/Colors.java
index fda5f1f..3dc468a 100644
--- a/cai18n-api/src/test/java/ch/qos/cai18n/sample/Colors.java
+++ b/cai18n-api/src/test/java/ch/qos/cai18n/sample/Colors.java
@@ -22,8 +22,9 @@
 
 package ch.qos.cai18n.sample;
 
+import ch.qos.cai18n.ResourceBundleName;
+
+ at ResourceBundleName("colors")
 public enum Colors {
-	RED, 
-	BLUE,
-	GREEN;
+  RED, BLUE, GREEN;
 }
diff --git a/cai18n-api/src/test/java/ch/qos/cai18n/sample/ResourceBunleBasedMC_Test.java b/cai18n-api/src/test/java/ch/qos/cai18n/sample/MessageConveyorTest.java
similarity index 94%
rename from cai18n-api/src/test/java/ch/qos/cai18n/sample/ResourceBunleBasedMC_Test.java
rename to cai18n-api/src/test/java/ch/qos/cai18n/sample/MessageConveyorTest.java
index 93a8289..94bb2e2 100644
--- a/cai18n-api/src/test/java/ch/qos/cai18n/sample/ResourceBunleBasedMC_Test.java
+++ b/cai18n-api/src/test/java/ch/qos/cai18n/sample/MessageConveyorTest.java
@@ -30,7 +30,7 @@ import org.junit.Test;
 
 import ch.qos.cai18n.MessageConveyor;
 
-public class ResourceBunleBasedMC_Test {
+public class MessageConveyorTest {
 
   @Test
   public void smoke_EN() {
diff --git a/cai18n-api/src/test/java/ch/qos/cai18n/sample/PackageTest.java b/cai18n-api/src/test/java/ch/qos/cai18n/sample/PackageTest.java
index 70c8a34..499c65e 100644
--- a/cai18n-api/src/test/java/ch/qos/cai18n/sample/PackageTest.java
+++ b/cai18n-api/src/test/java/ch/qos/cai18n/sample/PackageTest.java
@@ -27,6 +27,6 @@ import org.junit.runners.Suite;
 import org.junit.runners.Suite.SuiteClasses;
 
 @RunWith(Suite.class)
- at SuiteClasses( { MessageCodeVerifierTest.class, ResourceBunleBasedMC_Test.class })
+ at SuiteClasses( { MessageCodeVerifierTest.class, MessageConveyorTest.class })
 public class PackageTest {
 }
diff --git a/cai18n-api/src/main/java/ch/qos/cai18n/verifier/ErrorFactory.java b/cai18n-api/src/test/java/ch/qos/cai18n/util/AnnatationExtractorTest.java
similarity index 65%
copy from cai18n-api/src/main/java/ch/qos/cai18n/verifier/ErrorFactory.java
copy to cai18n-api/src/test/java/ch/qos/cai18n/util/AnnatationExtractorTest.java
index b9af952..9766236 100644
--- a/cai18n-api/src/main/java/ch/qos/cai18n/verifier/ErrorFactory.java
+++ b/cai18n-api/src/test/java/ch/qos/cai18n/util/AnnatationExtractorTest.java
@@ -19,23 +19,29 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
-package ch.qos.cai18n.verifier;
+package ch.qos.cai18n.util;
 
-import java.util.Locale;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
 
-import ch.qos.cai18n.verifier.Cai18nError.ErrorType;
+import java.util.Arrays;
 
-public class ErrorFactory {
+import org.junit.Test;
 
-  final Locale locale;
-  final String enumClassName;
- 
-  public ErrorFactory(String enumClassName, Locale locale) {
-    this.locale = locale;
-    this.enumClassName = enumClassName;
+
+public class AnnatationExtractorTest {
+
+  @Test
+  public void resourcceBundleName() {
+    String result = AnnotationExtractor.getResourceBundleName(Fruit.class);
+    assertEquals("fruits", result);
   }
- 
-  Cai18nError buildError(ErrorType errorType, String code) {
-    return new Cai18nError(errorType, code, enumClassName, locale);
+  
+  @Test
+  public void localeNames() {
+    String[] result = AnnotationExtractor.getLocaleNames(Fruit.class);
+    assertTrue(Arrays.equals(new String[] {"fr", "en"}, result));
   }
+  
+  
 }
diff --git a/cai18n-api/src/test/java/ch/qos/cai18n/sample/Colors.java b/cai18n-api/src/test/java/ch/qos/cai18n/util/Fruit.java
similarity index 83%
copy from cai18n-api/src/test/java/ch/qos/cai18n/sample/Colors.java
copy to cai18n-api/src/test/java/ch/qos/cai18n/util/Fruit.java
index fda5f1f..610077b 100644
--- a/cai18n-api/src/test/java/ch/qos/cai18n/sample/Colors.java
+++ b/cai18n-api/src/test/java/ch/qos/cai18n/util/Fruit.java
@@ -19,11 +19,14 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
  * SOFTWARE.
  */
+package ch.qos.cai18n.util;
 
-package ch.qos.cai18n.sample;
+import ch.qos.cai18n.LocaleNames;
+import ch.qos.cai18n.ResourceBundleName;
 
-public enum Colors {
-	RED, 
-	BLUE,
-	GREEN;
+ at ResourceBundleName("fruits")
+ at LocaleNames({"fr", "en"})
+public enum Fruit {
+  APPLE,
+  ORANGE;
 }
diff --git a/cai18n-api/src/test/resources/ch/qos/cai18n/sample/Colors_en.properties b/cai18n-api/src/test/resources/colors_en.properties
similarity index 100%
rename from cai18n-api/src/test/resources/ch/qos/cai18n/sample/Colors_en.properties
rename to cai18n-api/src/test/resources/colors_en.properties
diff --git a/cai18n-api/src/test/resources/ch/qos/cai18n/sample/Colors_fr.properties b/cai18n-api/src/test/resources/colors_fr.properties
similarity index 100%
rename from cai18n-api/src/test/resources/ch/qos/cai18n/sample/Colors_fr.properties
rename to cai18n-api/src/test/resources/colors_fr.properties
diff --git a/maven-cai18n-plugin/src/main/java/ch/qos/cai18n/VerifyMojo.java b/maven-cai18n-plugin/src/main/java/ch/qos/cai18n/VerifyMojo.java
index 90e19b0..15db43f 100644
--- a/maven-cai18n-plugin/src/main/java/ch/qos/cai18n/VerifyMojo.java
+++ b/maven-cai18n-plugin/src/main/java/ch/qos/cai18n/VerifyMojo.java
@@ -45,8 +45,8 @@ import ch.qos.cai18n.verifier.MessageCodeVerifier;
  */
 public class VerifyMojo extends AbstractMojo {
 
-  final static String MISSING_LOCALE = "http://cai18n.qos.ch/codes.html#missingLocale";
-  final static String MISSING_ENUM_CLASS = "http://cai18n.qos.ch/codes.html#missingEnumClass";
+  final static String MISSING_LOCALE = Cai18nConstants.CODE_URL_PREFIX+"#missingLocale";
+  final static String MISSING_ENUM_CLASS = Cai18nConstants.CODE_URL_PREFIX+"#missingEnumClass";
 
   /**
    * @parameter alias="enumClass"

-----------------------------------------------------------------------

Summary of changes:
 .../main/java/ch/qos/cai18n/Cai18nConstants.java   |    8 ++++
 .../{IMessageConveyor.java => LocaleNames.java}    |   15 ++++---
 .../main/java/ch/qos/cai18n/MessageConveyor.java   |   19 ++++++---
 ...essageConveyor.java => ResourceBundleName.java} |   15 ++++---
 .../AnnotationExtractor.java}                      |   44 ++++++++------------
 .../java/ch/qos/cai18n/verifier/Cai18nError.java   |   30 ++++++++++----
 .../java/ch/qos/cai18n/verifier/ErrorFactory.java  |   12 +++--
 .../qos/cai18n/verifier/MessageCodeVerifier.java   |   33 ++++++++++++---
 .../src/test/java/ch/qos/cai18n/sample/Colors.java |    7 ++-
 ...eBasedMC_Test.java => MessageConveyorTest.java} |    2 +-
 .../java/ch/qos/cai18n/sample/PackageTest.java     |    2 +-
 .../qos/cai18n/util/AnnatationExtractorTest.java}  |   32 ++++++++------
 .../cai18n/{sample/Colors.java => util/Fruit.java} |   13 ++++--
 .../Colors_en.properties => colors_en.properties}  |    0
 .../Colors_fr.properties => colors_fr.properties}  |    0
 .../src/main/java/ch/qos/cai18n/VerifyMojo.java    |    4 +-
 16 files changed, 144 insertions(+), 92 deletions(-)
 create mode 100644 cai18n-api/src/main/java/ch/qos/cai18n/Cai18nConstants.java
 copy cai18n-api/src/main/java/ch/qos/cai18n/{IMessageConveyor.java => LocaleNames.java} (79%)
 copy cai18n-api/src/main/java/ch/qos/cai18n/{IMessageConveyor.java => ResourceBundleName.java} (78%)
 copy cai18n-api/src/main/java/ch/qos/cai18n/{MessageConveyor.java => util/AnnotationExtractor.java} (60%)
 rename cai18n-api/src/test/java/ch/qos/cai18n/sample/{ResourceBunleBasedMC_Test.java => MessageConveyorTest.java} (94%)
 copy cai18n-api/src/{main/java/ch/qos/cai18n/verifier/ErrorFactory.java => test/java/ch/qos/cai18n/util/AnnatationExtractorTest.java} (65%)
 copy cai18n-api/src/test/java/ch/qos/cai18n/{sample/Colors.java => util/Fruit.java} (83%)
 rename cai18n-api/src/test/resources/{ch/qos/cai18n/sample/Colors_en.properties => colors_en.properties} (100%)
 rename cai18n-api/src/test/resources/{ch/qos/cai18n/sample/Colors_fr.properties => colors_fr.properties} (100%)


hooks/post-receive
-- 
Compiler assisted internalization library



More information about the cal10n-dev mailing list