org.axonframework.serializer
Class MavenArtifactRevisionResolver

java.lang.Object
  extended by org.axonframework.serializer.MavenArtifactRevisionResolver
All Implemented Interfaces:
RevisionResolver

public class MavenArtifactRevisionResolver
extends Object
implements RevisionResolver

RevisionResolver that uses Maven meta data to retrieve the application version. This application version is used as event revision.

By default, Maven stores the meta-data in a file called 'pom.properties' in the JAR files under 'META-INF/maven/<groupId>/<artifactId>/'.

Since:
2.1
Author:
Allard Buijze

Constructor Summary
MavenArtifactRevisionResolver(String groupId, String artifactId)
          Initialize the RevisionResolver to look for the version in the Meta Data of the artifact with given groupId and artifactId.
MavenArtifactRevisionResolver(String groupId, String artifactId, ClassLoader classLoader)
          Initialize the RevisionResolver to look for the version in the Meta Data of the artifact with given groupId and artifactId.
 
Method Summary
 String revisionOf(Class<?> payloadType)
          Returns the revision for the given payloadType.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MavenArtifactRevisionResolver

public MavenArtifactRevisionResolver(String groupId,
                                     String artifactId)
                              throws IOException
Initialize the RevisionResolver to look for the version in the Meta Data of the artifact with given groupId and artifactId.

The class loader that loaded the MavenArtifactRevisionResolver class is used to load the artifact configuration.

Parameters:
groupId - The groupId as defined in the pom.xml file of the module
artifactId - The artifactId as defined in the pom.xml file of the module
Throws:
IOException - When an exception occurs reading from the maven configuration file

MavenArtifactRevisionResolver

public MavenArtifactRevisionResolver(String groupId,
                                     String artifactId,
                                     ClassLoader classLoader)
                              throws IOException
Initialize the RevisionResolver to look for the version in the Meta Data of the artifact with given groupId and artifactId.

Parameters:
groupId - The groupId as defined in the pom.xml file of the module
artifactId - The artifactId as defined in the pom.xml file of the module
classLoader - The class loader to load the artifact configuration with
Throws:
IOException - When an exception occurs reading from the maven configuration file
Method Detail

revisionOf

public String revisionOf(Class<?> payloadType)
Description copied from interface: RevisionResolver
Returns the revision for the given payloadType.

The revision is used by upcasters to decide whether they need to process a certain serialized event. Generally, the revision needs to be modified each time the structure of an event has been changed in an incompatible manner.

Specified by:
revisionOf in interface RevisionResolver
Parameters:
payloadType - The type for which to return the revision
Returns:
the revision for the given payloadType


Copyright © 2010-2016. All Rights Reserved.