[jackson-dataformat-smile] 13/31: Improved version handling

Hilko Bengen bengen at alioth.debian.org
Mon Sep 2 17:37:23 UTC 2013


This is an automated email from the git hooks/post-receive script.

bengen pushed a commit to annotated tag jackson-dataformat-smile-2.0.0
in repository jackson-dataformat-smile.

commit 44896ce7f5d0c7cc6974d344653a04c8ae75e8ac
Author: Tatu Saloranta <tsaloranta at gmail.com>
Date:   Wed Dec 28 23:47:26 2011 -0800

    Improved version handling
---
 .../jackson/dataformat/smile/ModuleVersion.java    |   12 +++++++++++
 .../jackson/dataformat/smile/SmileFactory.java     |    3 +--
 .../jackson/dataformat/smile/SmileGenerator.java   |   11 ++++++++++
 .../jackson/dataformat/smile/SmileParser.java      |    7 +++----
 .../fasterxml/jackson/dataformat/smile/VERSION.txt |    2 ++
 .../jackson/dataformat/smile/TestVersions.java     |   22 +++++++++++++++-----
 6 files changed, 46 insertions(+), 11 deletions(-)

diff --git a/src/main/java/com/fasterxml/jackson/dataformat/smile/ModuleVersion.java b/src/main/java/com/fasterxml/jackson/dataformat/smile/ModuleVersion.java
new file mode 100644
index 0000000..ae02a60
--- /dev/null
+++ b/src/main/java/com/fasterxml/jackson/dataformat/smile/ModuleVersion.java
@@ -0,0 +1,12 @@
+package com.fasterxml.jackson.dataformat.smile;
+
+import com.fasterxml.jackson.core.util.VersionUtil;
+
+/**
+ * Helper class used for finding and caching version information
+ * for this module.
+ */
+public class ModuleVersion extends VersionUtil
+{
+    public final static ModuleVersion instance = new ModuleVersion();
+}
diff --git a/src/main/java/com/fasterxml/jackson/dataformat/smile/SmileFactory.java b/src/main/java/com/fasterxml/jackson/dataformat/smile/SmileFactory.java
index de7a7db..86f6827 100644
--- a/src/main/java/com/fasterxml/jackson/dataformat/smile/SmileFactory.java
+++ b/src/main/java/com/fasterxml/jackson/dataformat/smile/SmileFactory.java
@@ -7,7 +7,6 @@ import com.fasterxml.jackson.core.*;
 import com.fasterxml.jackson.core.format.InputAccessor;
 import com.fasterxml.jackson.core.format.MatchStrength;
 import com.fasterxml.jackson.core.io.IOContext;
-import com.fasterxml.jackson.core.util.VersionUtil;
 
 /**
  * Factory used for constructing {@link SmileParser} and {@link SmileGenerator}
@@ -96,7 +95,7 @@ public class SmileFactory extends JsonFactory
 
     @Override
     public Version version() {
-        return VersionUtil.versionFor(getClass());
+        return ModuleVersion.instance.version();
     }
     
     /*
diff --git a/src/main/java/com/fasterxml/jackson/dataformat/smile/SmileGenerator.java b/src/main/java/com/fasterxml/jackson/dataformat/smile/SmileGenerator.java
index b3180c2..79c4f1d 100644
--- a/src/main/java/com/fasterxml/jackson/dataformat/smile/SmileGenerator.java
+++ b/src/main/java/com/fasterxml/jackson/dataformat/smile/SmileGenerator.java
@@ -393,6 +393,17 @@ public class SmileGenerator
         }
         return br;
     }
+
+    /*                                                                                       
+    /**********************************************************                              
+    /* Versioned                                                                             
+    /**********************************************************                              
+     */
+
+    @Override
+    public Version version() {
+        return ModuleVersion.instance.version();
+    }
     
     /*
     /**********************************************************
diff --git a/src/main/java/com/fasterxml/jackson/dataformat/smile/SmileParser.java b/src/main/java/com/fasterxml/jackson/dataformat/smile/SmileParser.java
index 0a1c2c7..8339d4d 100644
--- a/src/main/java/com/fasterxml/jackson/dataformat/smile/SmileParser.java
+++ b/src/main/java/com/fasterxml/jackson/dataformat/smile/SmileParser.java
@@ -1,7 +1,5 @@
 package com.fasterxml.jackson.dataformat.smile;
 
-import static com.fasterxml.jackson.dataformat.smile.SmileConstants.BYTE_MARKER_END_OF_STRING;
-
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
@@ -15,7 +13,8 @@ import com.fasterxml.jackson.core.base.ParserBase;
 import com.fasterxml.jackson.core.io.IOContext;
 import com.fasterxml.jackson.core.sym.BytesToNameCanonicalizer;
 import com.fasterxml.jackson.core.sym.Name;
-import com.fasterxml.jackson.core.util.VersionUtil;
+
+import static com.fasterxml.jackson.dataformat.smile.SmileConstants.BYTE_MARKER_END_OF_STRING;
 
 public class SmileParser
     extends ParserBase
@@ -315,7 +314,7 @@ public class SmileParser
 
     @Override
     public Version version() {
-        return VersionUtil.versionFor(getClass());
+        return ModuleVersion.instance.version();
     }
     
     /*
diff --git a/src/main/resources/com/fasterxml/jackson/dataformat/smile/VERSION.txt b/src/main/resources/com/fasterxml/jackson/dataformat/smile/VERSION.txt
index ad96e7c..0825e26 100644
--- a/src/main/resources/com/fasterxml/jackson/dataformat/smile/VERSION.txt
+++ b/src/main/resources/com/fasterxml/jackson/dataformat/smile/VERSION.txt
@@ -1 +1,3 @@
 ${project.version}
+${project.groupId}
+${project.artifactId}
diff --git a/src/test/java/com/fasterxml/jackson/dataformat/smile/TestVersions.java b/src/test/java/com/fasterxml/jackson/dataformat/smile/TestVersions.java
index 2d2e3d7..2c29e96 100644
--- a/src/test/java/com/fasterxml/jackson/dataformat/smile/TestVersions.java
+++ b/src/test/java/com/fasterxml/jackson/dataformat/smile/TestVersions.java
@@ -1,6 +1,9 @@
 package com.fasterxml.jackson.dataformat.smile;
 
+import java.io.*;
+
 import com.fasterxml.jackson.core.Version;
+import com.fasterxml.jackson.core.Versioned;
 
 /**
  * Tests to verify [JACKSON-278]
@@ -13,10 +16,16 @@ public class TestVersions extends SmileTestBase
     private final static int MAJOR_VERSION = 2;
     private final static int MINOR_VERSION = 0;
 
-    public void testMapperVersions()
+    private final static String GROUP_ID = "com.fasterxml.jackson";
+    private final static String ARTIFACT_ID = "jackson-dataformat-smile";
+    
+    public void testMapperVersions() throws IOException
     {
         SmileFactory f = new SmileFactory();
-        assertVersion(f.version(), MAJOR_VERSION, MINOR_VERSION);
+        f.disable(SmileParser.Feature.REQUIRE_HEADER);
+        assertVersion(f);
+        assertVersion(f.createJsonGenerator(new ByteArrayOutputStream()));
+        assertVersion(f.createJsonParser(new byte[0]));
     }
 
     /*
@@ -25,13 +34,16 @@ public class TestVersions extends SmileTestBase
     /**********************************************************
      */
     
-    private void assertVersion(Version v, int major, int minor)
+    private void assertVersion(Versioned vers)
     {
+        final Version v = vers.version();
         assertFalse("Should find version information (got "+v+")", v.isUknownVersion());
-        assertEquals(major, v.getMajorVersion());
-        assertEquals(minor, v.getMinorVersion());
+        assertEquals(MAJOR_VERSION, v.getMajorVersion());
+        assertEquals(MINOR_VERSION, v.getMinorVersion());
         // Check patch level initially, comment out for maint versions
         assertEquals(0, v.getPatchLevel());
+        assertEquals(GROUP_ID, v.getGroupId());
+        assertEquals(ARTIFACT_ID, v.getArtifactId());
     }
 }
 

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-java/jackson-dataformat-smile.git



More information about the pkg-java-commits mailing list