killbill-memoizeit

util: reformat tag code and tests No functional change. The

6/12/2012 9:36:35 PM

Changes

util/src/main/java/com/ning/billing/util/tag/dao/TaggableDao.java 28(+0 -28)

Details

diff --git a/util/src/main/java/com/ning/billing/util/tag/api/DefaultTagService.java b/util/src/main/java/com/ning/billing/util/tag/api/DefaultTagService.java
index e5627e5..0a1fa28 100644
--- a/util/src/main/java/com/ning/billing/util/tag/api/DefaultTagService.java
+++ b/util/src/main/java/com/ning/billing/util/tag/api/DefaultTagService.java
@@ -21,8 +21,8 @@ import com.ning.billing.util.api.TagService;
 import com.ning.billing.util.api.TagUserApi;
 
 public class DefaultTagService implements TagService {
-    
     private static final String TAG_DEFINITION_SERVICE_NAME = "tag-service";
+
     private final TagUserApi api;
 
     @Inject
diff --git a/util/src/main/java/com/ning/billing/util/tag/api/DefaultTagUserApi.java b/util/src/main/java/com/ning/billing/util/tag/api/DefaultTagUserApi.java
index 4a065de..c3edd34 100644
--- a/util/src/main/java/com/ning/billing/util/tag/api/DefaultTagUserApi.java
+++ b/util/src/main/java/com/ning/billing/util/tag/api/DefaultTagUserApi.java
@@ -35,7 +35,7 @@ public class DefaultTagUserApi implements TagUserApi {
     private final TagDao tagDao;
 
     @Inject
-    public DefaultTagUserApi(TagDefinitionDao tagDefinitionDao, TagDao tagDao) {
+    public DefaultTagUserApi(final TagDefinitionDao tagDefinitionDao, final TagDao tagDao) {
         this.tagDefinitionDao = tagDefinitionDao;
         this.tagDao = tagDao;
     }
@@ -61,31 +61,31 @@ public class DefaultTagUserApi implements TagUserApi {
         tagDefinitionDao.deleteAllTagsForDefinition(definitionName, context);
     }
 
-	@Override
-	public TagDefinition getTagDefinition(final String name)
-			throws TagDefinitionApiException {
-		return tagDefinitionDao.getByName(name);
-	}
+    @Override
+    public TagDefinition getTagDefinition(final String name)
+            throws TagDefinitionApiException {
+        return tagDefinitionDao.getByName(name);
+    }
 
     @Override
-    public void addTags(UUID objectId, ObjectType objectType, List<TagDefinition> tagDefinitions, CallContext context) {
+    public void addTags(final UUID objectId, final ObjectType objectType, final List<TagDefinition> tagDefinitions, final CallContext context) {
         tagDao.insertTags(objectId, objectType, tagDefinitions, context);
     }
 
     @Override
-    public void addTag(UUID objectId, ObjectType objectType, TagDefinition tagDefinition, CallContext context) {
+    public void addTag(final UUID objectId, final ObjectType objectType, final TagDefinition tagDefinition, final CallContext context) {
         tagDao.insertTag(objectId, objectType, tagDefinition, context);
     }
 
     @Override
-    public void removeTag(UUID objectId, ObjectType objectType, TagDefinition tagDefinition, CallContext context) {
+    public void removeTag(final UUID objectId, final ObjectType objectType, final TagDefinition tagDefinition, final CallContext context) {
         tagDao.deleteTag(objectId, objectType, tagDefinition, context);
     }
 
     @Override
-    public void removeTags(UUID objectId, ObjectType objectType, List<TagDefinition> tagDefinitions, CallContext context)  {
+    public void removeTags(final UUID objectId, final ObjectType objectType, final List<TagDefinition> tagDefinitions, final CallContext context) {
         // TODO: consider making this batch
-        for (TagDefinition tagDefinition : tagDefinitions) {
+        for (final TagDefinition tagDefinition : tagDefinitions) {
             tagDao.deleteTag(objectId, objectType, tagDefinition, context);
         }
     }
@@ -94,26 +94,4 @@ public class DefaultTagUserApi implements TagUserApi {
     public Map<String, Tag> getTags(final UUID objectId, final ObjectType objectType) {
         return tagDao.loadEntities(objectId, objectType);
     }
-
-//    @Override
-//    public Tag createControlTags(String controlTagName) throws TagDefinitionApiException {
-//        ControlTagType type = null;
-//        for(ControlTagType t : ControlTagType.values()) {
-//            if(t.toString().equals(controlTagName)) {
-//                type = t;
-//            }
-//        }
-//
-//        if(type == null) {
-//            throw new TagDefinitionApiException(ErrorCode.CONTROL_TAG_DOES_NOT_EXIST, controlTagName);
-//        }
-//        return new DefaultControlTag(type);
-//    }
-//
-//    @Override
-//    public Tag createDescriptiveTags(List) throws TagDefinitionApiException {
-//        TagDefinition tagDefinition = getTagDefinition(tagDefinitionName);
-//
-//        return new DescriptiveTag(tagDefinition);
-//    }
 }
diff --git a/util/src/main/java/com/ning/billing/util/tag/dao/DefaultTagDefinitionDao.java b/util/src/main/java/com/ning/billing/util/tag/dao/DefaultTagDefinitionDao.java
index 39970da..53dbd90 100644
--- a/util/src/main/java/com/ning/billing/util/tag/dao/DefaultTagDefinitionDao.java
+++ b/util/src/main/java/com/ning/billing/util/tag/dao/DefaultTagDefinitionDao.java
@@ -19,12 +19,13 @@ package com.ning.billing.util.tag.dao;
 import java.util.ArrayList;
 import java.util.List;
 
-import com.ning.billing.util.callcontext.CallContext;
-import com.ning.billing.util.tag.ControlTagType;
 import org.skife.jdbi.v2.IDBI;
+
 import com.google.inject.Inject;
 import com.ning.billing.ErrorCode;
 import com.ning.billing.util.api.TagDefinitionApiException;
+import com.ning.billing.util.callcontext.CallContext;
+import com.ning.billing.util.tag.ControlTagType;
 import com.ning.billing.util.tag.DefaultTagDefinition;
 import com.ning.billing.util.tag.TagDefinition;
 
@@ -32,18 +33,18 @@ public class DefaultTagDefinitionDao implements TagDefinitionDao {
     private final TagDefinitionSqlDao dao;
 
     @Inject
-    public DefaultTagDefinitionDao(IDBI dbi) {
+    public DefaultTagDefinitionDao(final IDBI dbi) {
         this.dao = dbi.onDemand(TagDefinitionSqlDao.class);
     }
 
     @Override
     public List<TagDefinition> getTagDefinitions() {
         // get user definitions from the database
-        List<TagDefinition> definitionList = new ArrayList<TagDefinition>();
+        final List<TagDefinition> definitionList = new ArrayList<TagDefinition>();
         definitionList.addAll(dao.get());
 
         // add control tag definitions
-        for (ControlTagType controlTag : ControlTagType.values()) {
+        for (final ControlTagType controlTag : ControlTagType.values()) {
             definitionList.add(new DefaultTagDefinition(controlTag.toString(), controlTag.getDescription(), true));
         }
 
@@ -53,8 +54,8 @@ public class DefaultTagDefinitionDao implements TagDefinitionDao {
     @Override
     public TagDefinition getByName(final String definitionName) {
         // add control tag definitions
-        for (ControlTagType controlTag : ControlTagType.values()) {
-            if(definitionName.equals(controlTag.name())) {
+        for (final ControlTagType controlTag : ControlTagType.values()) {
+            if (definitionName.equals(controlTag.name())) {
                 return new DefaultTagDefinition(controlTag.toString(), controlTag.getDescription(), true);
             }
         }
@@ -68,19 +69,19 @@ public class DefaultTagDefinitionDao implements TagDefinitionDao {
             throw new TagDefinitionApiException(ErrorCode.TAG_DEFINITION_CONFLICTS_WITH_CONTROL_TAG, definitionName);
         }
 
-        TagDefinition existingDefinition = dao.getByName(definitionName);
+        final TagDefinition existingDefinition = dao.getByName(definitionName);
 
         if (existingDefinition != null) {
             throw new TagDefinitionApiException(ErrorCode.TAG_DEFINITION_ALREADY_EXISTS, definitionName);
         }
 
-        TagDefinition definition = new DefaultTagDefinition(definitionName, description, false);
+        final TagDefinition definition = new DefaultTagDefinition(definitionName, description, false);
         dao.create(definition, context);
         return definition;
     }
 
     private boolean isControlTagName(final String definitionName) {
-        for (ControlTagType controlTagName : ControlTagType.values()) {
+        for (final ControlTagType controlTagName : ControlTagType.values()) {
             if (controlTagName.toString().equals(definitionName)) {
                 return true;
             }
@@ -91,7 +92,7 @@ public class DefaultTagDefinitionDao implements TagDefinitionDao {
 
     @Override
     public void deleteAllTagsForDefinition(final String definitionName, final CallContext context) throws TagDefinitionApiException {
-        TagDefinition existingDefinition = dao.getByName(definitionName);
+        final TagDefinition existingDefinition = dao.getByName(definitionName);
         if (existingDefinition == null) {
             throw new TagDefinitionApiException(ErrorCode.TAG_DEFINITION_DOES_NOT_EXIST, definitionName);
         }
@@ -105,7 +106,7 @@ public class DefaultTagDefinitionDao implements TagDefinitionDao {
             throw new TagDefinitionApiException(ErrorCode.TAG_DEFINITION_IN_USE, definitionName);
         }
 
-        TagDefinition existingDefinition = dao.getByName(definitionName);
+        final TagDefinition existingDefinition = dao.getByName(definitionName);
 
         if (existingDefinition == null) {
             throw new TagDefinitionApiException(ErrorCode.TAG_DEFINITION_DOES_NOT_EXIST, definitionName);
diff --git a/util/src/main/java/com/ning/billing/util/tag/dao/TagBinder.java b/util/src/main/java/com/ning/billing/util/tag/dao/TagBinder.java
index d2d4a6f..d1a8a7c 100644
--- a/util/src/main/java/com/ning/billing/util/tag/dao/TagBinder.java
+++ b/util/src/main/java/com/ning/billing/util/tag/dao/TagBinder.java
@@ -26,6 +26,7 @@ import org.skife.jdbi.v2.SQLStatement;
 import org.skife.jdbi.v2.sqlobject.Binder;
 import org.skife.jdbi.v2.sqlobject.BinderFactory;
 import org.skife.jdbi.v2.sqlobject.BindingAnnotation;
+
 import com.ning.billing.util.tag.Tag;
 
 @BindingAnnotation(TagBinder.TagBinderFactory.class)
@@ -33,9 +34,9 @@ import com.ning.billing.util.tag.Tag;
 @Target({ElementType.PARAMETER})
 public @interface TagBinder {
     public static class TagBinderFactory implements BinderFactory {
-        public Binder build(Annotation annotation) {
+        public Binder build(final Annotation annotation) {
             return new Binder<TagBinder, Tag>() {
-                public void bind(SQLStatement q, TagBinder bind, Tag tag) {
+                public void bind(final SQLStatement q, final TagBinder bind, final Tag tag) {
                     q.bind("id", tag.getId().toString());
                     q.bind("tagDefinitionName", tag.getTagDefinitionName());
                 }
diff --git a/util/src/main/java/com/ning/billing/util/tag/dao/TagDao.java b/util/src/main/java/com/ning/billing/util/tag/dao/TagDao.java
index 4e29fc2..db059ce 100644
--- a/util/src/main/java/com/ning/billing/util/tag/dao/TagDao.java
+++ b/util/src/main/java/com/ning/billing/util/tag/dao/TagDao.java
@@ -16,86 +16,19 @@
 
 package com.ning.billing.util.tag.dao;
 
-import com.ning.billing.invoice.api.InvoiceApiException;
+import java.util.List;
+import java.util.UUID;
+
 import com.ning.billing.util.callcontext.CallContext;
 import com.ning.billing.util.dao.AuditedCollectionDao;
 import com.ning.billing.util.dao.ObjectType;
 import com.ning.billing.util.tag.Tag;
 import com.ning.billing.util.tag.TagDefinition;
 
-import java.util.List;
-import java.util.UUID;
-
 public interface TagDao extends AuditedCollectionDao<Tag> {
     void insertTag(UUID objectId, ObjectType objectType, TagDefinition tagDefinition, CallContext context);
 
     void insertTags(UUID objectId, ObjectType objectType, List<TagDefinition> tagDefinitions, CallContext context);
 
     void deleteTag(UUID objectId, ObjectType objectType, TagDefinition tagDefinition, CallContext context);
-
-//@Override
-//	public List<Tag> getTagList() {
-//		return tagStore.getEntityList();
-//	}
-//
-//	@Override
-//	public boolean hasTag(final TagDefinition tagDefinition) {
-//		return tagStore.containsTagForDefinition(tagDefinition);
-//	}
-//
-//    @Override
-//    public boolean hasTag(ControlTagType controlTagType) {
-//        return tagStore.containsTagForControlTagType(controlTagType);
-//    }
-//
-//	@Override
-//	public void addTag(final TagDefinition definition) {
-//		Tag tag = new DescriptiveTag(definition);
-//		tagStore.add(tag) ;
-//	}
-//
-//    @Override
-//    public void addTags(final List<Tag> tags) {
-//        this.tagStore.add(tags);
-//    }
-//
-//	@Override
-//	public void addTagsFromDefinitions(final List<TagDefinition> tagDefinitions) {
-//		if (tagStore != null) {
-//            List<Tag> tags = new ArrayList<Tag>();
-//            if (tagDefinitions != null) {
-//                for (TagDefinition tagDefinition : tagDefinitions) {
-//                    try {
-//                        ControlTagType controlTagType = ControlTagType.valueOf(tagDefinition.getName());
-//                        tags.add(new DefaultControlTag(controlTagType));
-//                    } catch (IllegalArgumentException ex) {
-//                        tags.add(new DescriptiveTag(tagDefinition));
-//                    }
-//                }
-//            }
-//
-//			this.tagStore.add(tags);
-//		}
-//	}
-//
-//	@Override
-//	public void clearTags() {
-//		this.tagStore.clear();
-//	}
-//
-//	@Override
-//	public void removeTag(final TagDefinition tagDefinition) {
-//		tagStore.remove(tagDefinition);
-//	}
-//
-//	@Override
-//	public boolean generateInvoice() {
-//		return tagStore.generateInvoice();
-//	}
-//
-//	@Override
-//	public boolean processPayment() {
-//		return tagStore.processPayment();
-//	}
-
 }
diff --git a/util/src/main/java/com/ning/billing/util/tag/dao/TagDefinitionDao.java b/util/src/main/java/com/ning/billing/util/tag/dao/TagDefinitionDao.java
index 112ff75..cc10c93 100644
--- a/util/src/main/java/com/ning/billing/util/tag/dao/TagDefinitionDao.java
+++ b/util/src/main/java/com/ning/billing/util/tag/dao/TagDefinitionDao.java
@@ -18,8 +18,8 @@ package com.ning.billing.util.tag.dao;
 
 import java.util.List;
 
-import com.ning.billing.util.callcontext.CallContext;
 import com.ning.billing.util.api.TagDefinitionApiException;
+import com.ning.billing.util.callcontext.CallContext;
 import com.ning.billing.util.tag.TagDefinition;
 
 public interface TagDefinitionDao {
diff --git a/util/src/main/java/com/ning/billing/util/tag/dao/TagDefinitionSqlDao.java b/util/src/main/java/com/ning/billing/util/tag/dao/TagDefinitionSqlDao.java
index f273c56..8524c53 100644
--- a/util/src/main/java/com/ning/billing/util/tag/dao/TagDefinitionSqlDao.java
+++ b/util/src/main/java/com/ning/billing/util/tag/dao/TagDefinitionSqlDao.java
@@ -25,11 +25,6 @@ import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.util.UUID;
 
-import com.ning.billing.util.callcontext.CallContext;
-import com.ning.billing.util.callcontext.CallContextBinder;
-import com.ning.billing.util.entity.dao.EntitySqlDao;
-import com.ning.billing.util.tag.DefaultTagDefinition;
-import com.ning.billing.util.tag.TagDefinition;
 import org.skife.jdbi.v2.SQLStatement;
 import org.skife.jdbi.v2.StatementContext;
 import org.skife.jdbi.v2.sqlobject.Bind;
@@ -42,6 +37,12 @@ import org.skife.jdbi.v2.sqlobject.customizers.RegisterMapper;
 import org.skife.jdbi.v2.sqlobject.stringtemplate.ExternalizedSqlViaStringTemplate3;
 import org.skife.jdbi.v2.tweak.ResultSetMapper;
 
+import com.ning.billing.util.callcontext.CallContext;
+import com.ning.billing.util.callcontext.CallContextBinder;
+import com.ning.billing.util.entity.dao.EntitySqlDao;
+import com.ning.billing.util.tag.DefaultTagDefinition;
+import com.ning.billing.util.tag.TagDefinition;
+
 @ExternalizedSqlViaStringTemplate3
 @RegisterMapper(TagDefinitionSqlDao.TagDefinitionMapper.class)
 public interface TagDefinitionSqlDao extends EntitySqlDao<TagDefinition> {
@@ -64,9 +65,9 @@ public interface TagDefinitionSqlDao extends EntitySqlDao<TagDefinition> {
     public class TagDefinitionMapper implements ResultSetMapper<TagDefinition> {
         @Override
         public TagDefinition map(final int index, final ResultSet result, final StatementContext context) throws SQLException {
-            UUID id = UUID.fromString(result.getString("id"));
-            String name = result.getString("name");
-            String description = result.getString("description");
+            final UUID id = UUID.fromString(result.getString("id"));
+            final String name = result.getString("name");
+            final String description = result.getString("description");
             return new DefaultTagDefinition(id, name, description, false);
         }
     }
@@ -87,4 +88,4 @@ public interface TagDefinitionSqlDao extends EntitySqlDao<TagDefinition> {
             }
         }
     }
-}
\ No newline at end of file
+}
diff --git a/util/src/main/java/com/ning/billing/util/tag/dao/TagHistoryBinder.java b/util/src/main/java/com/ning/billing/util/tag/dao/TagHistoryBinder.java
index 67bb3ca..05d9414 100644
--- a/util/src/main/java/com/ning/billing/util/tag/dao/TagHistoryBinder.java
+++ b/util/src/main/java/com/ning/billing/util/tag/dao/TagHistoryBinder.java
@@ -16,30 +16,30 @@
 
 package com.ning.billing.util.tag.dao;
 
-import com.ning.billing.util.dao.EntityHistory;
-import com.ning.billing.util.dao.MappedEntity;
-import com.ning.billing.util.tag.Tag;
-import org.skife.jdbi.v2.SQLStatement;
-import org.skife.jdbi.v2.sqlobject.Binder;
-import org.skife.jdbi.v2.sqlobject.BinderFactory;
-import org.skife.jdbi.v2.sqlobject.BindingAnnotation;
-
 import java.lang.annotation.Annotation;
 import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
 
+import org.skife.jdbi.v2.SQLStatement;
+import org.skife.jdbi.v2.sqlobject.Binder;
+import org.skife.jdbi.v2.sqlobject.BinderFactory;
+import org.skife.jdbi.v2.sqlobject.BindingAnnotation;
+
+import com.ning.billing.util.dao.EntityHistory;
+import com.ning.billing.util.tag.Tag;
+
 @BindingAnnotation(TagHistoryBinder.TagHistoryBinderFactory.class)
 @Retention(RetentionPolicy.RUNTIME)
 @Target({ElementType.PARAMETER})
 public @interface TagHistoryBinder {
     public static class TagHistoryBinderFactory implements BinderFactory {
         @Override
-        public Binder build(Annotation annotation) {
+        public Binder build(final Annotation annotation) {
             return new Binder<TagHistoryBinder, EntityHistory<Tag>>() {
                 @Override
-                public void bind(SQLStatement q, TagHistoryBinder bind, EntityHistory<Tag> tagHistory) {
+                public void bind(final SQLStatement q, final TagHistoryBinder bind, final EntityHistory<Tag> tagHistory) {
                     q.bind("recordId", tagHistory.getValue());
                     q.bind("changeType", tagHistory.getChangeType().toString());
                     q.bind("id", tagHistory.getId().toString());
@@ -48,4 +48,4 @@ public @interface TagHistoryBinder {
             };
         }
     }
-}
\ No newline at end of file
+}
diff --git a/util/src/main/java/com/ning/billing/util/tag/dao/TagMapper.java b/util/src/main/java/com/ning/billing/util/tag/dao/TagMapper.java
index bf08dcd..da0083d 100644
--- a/util/src/main/java/com/ning/billing/util/tag/dao/TagMapper.java
+++ b/util/src/main/java/com/ning/billing/util/tag/dao/TagMapper.java
@@ -20,11 +20,10 @@ import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.util.UUID;
 
-import com.ning.billing.util.dao.MapperBase;
-import org.joda.time.DateTime;
 import org.skife.jdbi.v2.StatementContext;
 import org.skife.jdbi.v2.tweak.ResultSetMapper;
 
+import com.ning.billing.util.dao.MapperBase;
 import com.ning.billing.util.tag.ControlTagType;
 import com.ning.billing.util.tag.DefaultControlTag;
 import com.ning.billing.util.tag.DescriptiveTag;
@@ -33,16 +32,16 @@ import com.ning.billing.util.tag.Tag;
 public class TagMapper extends MapperBase implements ResultSetMapper<Tag> {
     @Override
     public Tag map(final int index, final ResultSet result, final StatementContext context) throws SQLException {
-        String name = result.getString("tag_definition_name");
+        final String name = result.getString("tag_definition_name");
 
         ControlTagType thisTagType = null;
-        for (ControlTagType controlTagType : ControlTagType.values()) {
+        for (final ControlTagType controlTagType : ControlTagType.values()) {
             if (name.equals(controlTagType.toString())) {
                 thisTagType = controlTagType;
             }
         }
 
-        UUID id = UUID.fromString(result.getString("id"));
+        final UUID id = UUID.fromString(result.getString("id"));
         if (thisTagType == null) {
             return new DescriptiveTag(id, name);
         } else {
diff --git a/util/src/main/java/com/ning/billing/util/tag/dao/TagSqlDao.java b/util/src/main/java/com/ning/billing/util/tag/dao/TagSqlDao.java
index bde62e7..5f4b8bb 100644
--- a/util/src/main/java/com/ning/billing/util/tag/dao/TagSqlDao.java
+++ b/util/src/main/java/com/ning/billing/util/tag/dao/TagSqlDao.java
@@ -40,32 +40,32 @@ import com.ning.billing.util.tag.Tag;
 @RegisterMapper(TagMapper.class)
 public interface TagSqlDao extends UpdatableEntityCollectionSqlDao<Tag>, Transactional<TagSqlDao>, Transmogrifier {
     @Override
-    @SqlBatch(transactional=false)
+    @SqlBatch(transactional = false)
     public void insertFromTransaction(@Bind("objectId") final String objectId,
                                       @ObjectTypeBinder final ObjectType objectType,
                                       @TagBinder final Collection<Tag> tags,
                                       @CallContextBinder final CallContext context);
 
     @Override
-    @SqlBatch(transactional=false)
+    @SqlBatch(transactional = false)
     public void updateFromTransaction(@Bind("objectId") final String objectId,
                                       @ObjectTypeBinder final ObjectType objectType,
                                       @TagBinder final Collection<Tag> tags,
                                       @CallContextBinder final CallContext context);
 
     @Override
-    @SqlBatch(transactional=false)
+    @SqlBatch(transactional = false)
     public void deleteFromTransaction(@Bind("objectId") final String objectId,
                                       @ObjectTypeBinder final ObjectType objectType,
                                       @TagBinder final Collection<Tag> tags,
                                       @CallContextBinder final CallContext context);
 
     @Override
-    @SqlBatch(transactional=false)
+    @SqlBatch(transactional = false)
     public void addHistoryFromTransaction(@Bind("objectId") final String objectId,
-                                               @ObjectTypeBinder final ObjectType objectType,
-                                               @TagHistoryBinder final List<EntityHistory<Tag>> histories,
-                                               @CallContextBinder final CallContext context);
+                                          @ObjectTypeBinder final ObjectType objectType,
+                                          @TagHistoryBinder final List<EntityHistory<Tag>> histories,
+                                          @CallContextBinder final CallContext context);
 
     @SqlUpdate
     public void addTagFromTransaction(@Bind("id") final String tagId,
@@ -84,4 +84,4 @@ public interface TagSqlDao extends UpdatableEntityCollectionSqlDao<Tag>, Transac
     public Tag findTag(@Bind("tagDefinitionName") final String tagName,
                        @Bind("objectId") final String objectId,
                        @ObjectTypeBinder final ObjectType objectType);
-}
\ No newline at end of file
+}
diff --git a/util/src/main/java/com/ning/billing/util/tag/DefaultControlTag.java b/util/src/main/java/com/ning/billing/util/tag/DefaultControlTag.java
index 330b204..20efa9c 100644
--- a/util/src/main/java/com/ning/billing/util/tag/DefaultControlTag.java
+++ b/util/src/main/java/com/ning/billing/util/tag/DefaultControlTag.java
@@ -48,21 +48,25 @@ public class DefaultControlTag extends DescriptiveTag implements ControlTag {
         final int prime = 31;
         int result = super.hashCode();
         result = prime * result + ((controlTagType == null) ? 0
-                                                           : controlTagType.hashCode());
+                : controlTagType.hashCode());
         return result;
     }
 
     @Override
-    public boolean equals(Object obj) {
-        if (this == obj)
+    public boolean equals(final Object obj) {
+        if (this == obj) {
             return true;
-        if (!super.equals(obj))
+        }
+        if (!super.equals(obj)) {
             return false;
-        if (getClass() != obj.getClass())
+        }
+        if (getClass() != obj.getClass()) {
             return false;
-        DefaultControlTag other = (DefaultControlTag) obj;
-        if (controlTagType != other.controlTagType)
+        }
+        final DefaultControlTag other = (DefaultControlTag) obj;
+        if (controlTagType != other.controlTagType) {
             return false;
+        }
         return true;
     }
 
diff --git a/util/src/main/java/com/ning/billing/util/tag/DefaultTagDefinition.java b/util/src/main/java/com/ning/billing/util/tag/DefaultTagDefinition.java
index bd951d5..139a66c 100644
--- a/util/src/main/java/com/ning/billing/util/tag/DefaultTagDefinition.java
+++ b/util/src/main/java/com/ning/billing/util/tag/DefaultTagDefinition.java
@@ -17,6 +17,7 @@
 package com.ning.billing.util.tag;
 
 import java.util.UUID;
+
 import com.ning.billing.util.entity.EntityBase;
 
 public class DefaultTagDefinition extends EntityBase implements TagDefinition {
@@ -24,17 +25,17 @@ public class DefaultTagDefinition extends EntityBase implements TagDefinition {
     private final String description;
     private final Boolean isControlTag;
 
-    public DefaultTagDefinition(String name, String description, Boolean isControlTag) {
+    public DefaultTagDefinition(final String name, final String description, final Boolean isControlTag) {
         this(UUID.randomUUID(), name, description, isControlTag);
     }
 
-    public DefaultTagDefinition(UUID id, String name, String description, Boolean isControlTag) {
+    public DefaultTagDefinition(final UUID id, final String name, final String description, final Boolean isControlTag) {
         super(id);
         this.name = name;
         this.description = description;
         this.isControlTag = isControlTag;
     }
-    
+
     @Override
     public String getName() {
         return name;
diff --git a/util/src/main/java/com/ning/billing/util/tag/DefaultTagStore.java b/util/src/main/java/com/ning/billing/util/tag/DefaultTagStore.java
index a35b424..8bbe9e8 100644
--- a/util/src/main/java/com/ning/billing/util/tag/DefaultTagStore.java
+++ b/util/src/main/java/com/ning/billing/util/tag/DefaultTagStore.java
@@ -37,9 +37,9 @@ public class DefaultTagStore extends EntityCollectionBase<Tag> implements TagSto
      * @return true if no tags contraindicate payment processing
      */
     public boolean processPayment() {
-        for (Tag tag : entities.values()) {
+        for (final Tag tag : entities.values()) {
             if (tag instanceof ControlTag) {
-                ControlTag controlTag = (ControlTag) tag;
+                final ControlTag controlTag = (ControlTag) tag;
                 if (controlTag.getControlTagType() == ControlTagType.AUTO_PAY_OFF) {
                     return false;
                 }
@@ -49,15 +49,16 @@ public class DefaultTagStore extends EntityCollectionBase<Tag> implements TagSto
         return true;
     }
 
-    /***
+    /**
      * Collates the contents of the TagStore to determine if invoices should be generated
+     *
      * @return true if no tags contraindicate invoice generation
      */
     @Override
     public boolean generateInvoice() {
-        for (Tag tag : entities.values()) {
+        for (final Tag tag : entities.values()) {
             if (tag instanceof ControlTag) {
-                ControlTag controlTag = (ControlTag) tag;
+                final ControlTag controlTag = (ControlTag) tag;
                 if (controlTag.getControlTagType() == ControlTagType.AUTO_INVOICING_OFF) {
                     return false;
                 }
@@ -69,7 +70,7 @@ public class DefaultTagStore extends EntityCollectionBase<Tag> implements TagSto
 
     @Override
     public boolean containsTagForDefinition(final TagDefinition tagDefinition) {
-        for (Tag tag : entities.values()) {
+        for (final Tag tag : entities.values()) {
             if (tag.getTagDefinitionName().equals(tagDefinition.getName())) {
                 return true;
             }
@@ -80,7 +81,7 @@ public class DefaultTagStore extends EntityCollectionBase<Tag> implements TagSto
 
     @Override
     public boolean containsTagForControlTagType(final ControlTagType controlTagType) {
-        for (Tag tag : entities.values()) {
+        for (final Tag tag : entities.values()) {
             if (tag.getTagDefinitionName().equals(controlTagType.toString())) {
                 return true;
             }
@@ -90,8 +91,8 @@ public class DefaultTagStore extends EntityCollectionBase<Tag> implements TagSto
     }
 
     @Override
-    public Tag remove(TagDefinition tagDefinition) {
-        Tag tag = entities.get(tagDefinition.getName());
+    public Tag remove(final TagDefinition tagDefinition) {
+        final Tag tag = entities.get(tagDefinition.getName());
         return (tag == null) ? null : entities.remove(tag);
     }
-}
\ No newline at end of file
+}
diff --git a/util/src/main/java/com/ning/billing/util/tag/DescriptiveTag.java b/util/src/main/java/com/ning/billing/util/tag/DescriptiveTag.java
index 3f875be..7c87e7b 100644
--- a/util/src/main/java/com/ning/billing/util/tag/DescriptiveTag.java
+++ b/util/src/main/java/com/ning/billing/util/tag/DescriptiveTag.java
@@ -24,19 +24,19 @@ public class DescriptiveTag extends EntityBase implements Tag {
     private final String tagDefinitionName;
 
     // use to hydrate objects from the persistence layer
-    public DescriptiveTag(UUID id, String tagDefinitionName) {
+    public DescriptiveTag(final UUID id, final String tagDefinitionName) {
         super(id);
         this.tagDefinitionName = tagDefinitionName;
     }
 
     // use to create new objects
-    public DescriptiveTag(TagDefinition tagDefinition) {
+    public DescriptiveTag(final TagDefinition tagDefinition) {
         super();
         this.tagDefinitionName = tagDefinition.getName();
     }
 
     // use to create new objects
-    public DescriptiveTag(String tagDefinitionName) {
+    public DescriptiveTag(final String tagDefinitionName) {
         super();
         this.tagDefinitionName = tagDefinitionName;
     }
@@ -56,26 +56,29 @@ public class DescriptiveTag extends EntityBase implements Tag {
         final int prime = 31;
         int result = 1;
         result = prime * result + ((tagDefinitionName == null) ? 0
-                                                              : tagDefinitionName.hashCode());
+                : tagDefinitionName.hashCode());
         return result;
     }
 
     @Override
-    public boolean equals(Object obj) {
-        if (this == obj)
+    public boolean equals(final Object obj) {
+        if (this == obj) {
             return true;
-        if (obj == null)
+        }
+        if (obj == null) {
             return false;
-        if (getClass() != obj.getClass())
+        }
+        if (getClass() != obj.getClass()) {
             return false;
-        DescriptiveTag other = (DescriptiveTag) obj;
+        }
+        final DescriptiveTag other = (DescriptiveTag) obj;
         if (tagDefinitionName == null) {
-            if (other.tagDefinitionName != null)
+            if (other.tagDefinitionName != null) {
                 return false;
-        }
-        else if (!tagDefinitionName.equals(other.tagDefinitionName))
+            }
+        } else if (!tagDefinitionName.equals(other.tagDefinitionName)) {
             return false;
+        }
         return true;
     }
-
 }
diff --git a/util/src/test/java/com/ning/billing/util/tag/dao/MockTagDao.java b/util/src/test/java/com/ning/billing/util/tag/dao/MockTagDao.java
index 9253c07..09e757d 100644
--- a/util/src/test/java/com/ning/billing/util/tag/dao/MockTagDao.java
+++ b/util/src/test/java/com/ning/billing/util/tag/dao/MockTagDao.java
@@ -17,13 +17,6 @@
 package com.ning.billing.util.tag.dao;
 
 import javax.annotation.Nullable;
-
-import com.ning.billing.util.callcontext.CallContext;
-import com.ning.billing.util.dao.ObjectType;
-import com.ning.billing.util.tag.Tag;
-import com.ning.billing.util.tag.TagDefinition;
-import org.skife.jdbi.v2.sqlobject.mixins.Transmogrifier;
-
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.Iterator;
@@ -31,34 +24,41 @@ import java.util.List;
 import java.util.Map;
 import java.util.UUID;
 
+import org.skife.jdbi.v2.sqlobject.mixins.Transmogrifier;
+
+import com.ning.billing.util.callcontext.CallContext;
+import com.ning.billing.util.dao.ObjectType;
+import com.ning.billing.util.tag.Tag;
+import com.ning.billing.util.tag.TagDefinition;
+
 public class MockTagDao implements TagDao {
-    private Map<UUID, List<Tag>> tagStore = new HashMap<UUID, List<Tag>>();
+    private final Map<UUID, List<Tag>> tagStore = new HashMap<UUID, List<Tag>>();
 
     @Override
     public void saveEntitiesFromTransaction(final Transmogrifier dao, final UUID objectId, final ObjectType objectType,
-                                        final List<Tag> tags, final CallContext context) {
+                                            final List<Tag> tags, final CallContext context) {
         tagStore.put(objectId, tags);
     }
 
     @Override
-    public void saveEntities(UUID objectId, ObjectType objectType, List<Tag> tags, CallContext context) {
-        tagStore.put(objectId, tags) ;
+    public void saveEntities(final UUID objectId, final ObjectType objectType, final List<Tag> tags, final CallContext context) {
+        tagStore.put(objectId, tags);
     }
 
     @Override
-    public Map<String, Tag> loadEntities(UUID objectId, ObjectType objectType) {
+    public Map<String, Tag> loadEntities(final UUID objectId, final ObjectType objectType) {
         return getMap(tagStore.get(objectId));
     }
 
     @Override
-    public Map<String, Tag> loadEntitiesFromTransaction(Transmogrifier dao, UUID objectId, ObjectType objectType) {
+    public Map<String, Tag> loadEntitiesFromTransaction(final Transmogrifier dao, final UUID objectId, final ObjectType objectType) {
         return getMap(tagStore.get(objectId));
     }
 
     private Map<String, Tag> getMap(@Nullable final List<Tag> tags) {
-        Map<String, Tag> map = new HashMap<String, Tag>();
+        final Map<String, Tag> map = new HashMap<String, Tag>();
         if (tags != null) {
-            for (Tag tag : tags) {
+            for (final Tag tag : tags) {
                 map.put(tag.getTagDefinitionName(), tag);
             }
         }
@@ -68,8 +68,8 @@ public class MockTagDao implements TagDao {
     @Override
     public void insertTag(final UUID objectId, final ObjectType objectType,
                           final TagDefinition tagDefinition, final CallContext context) {
-        Tag tag = new Tag() {
-            private UUID id = UUID.randomUUID();
+        final Tag tag = new Tag() {
+            private final UUID id = UUID.randomUUID();
 
             @Override
             public String getTagDefinitionName() {
@@ -92,7 +92,7 @@ public class MockTagDao implements TagDao {
     @Override
     public void insertTags(final UUID objectId, final ObjectType objectType,
                            final List<TagDefinition> tagDefinitions, final CallContext context) {
-        for (TagDefinition tagDefinition : tagDefinitions) {
+        for (final TagDefinition tagDefinition : tagDefinitions) {
             insertTag(objectId, objectType, tagDefinition, context);
         }
     }
@@ -100,11 +100,11 @@ public class MockTagDao implements TagDao {
     @Override
     public void deleteTag(final UUID objectId, final ObjectType objectType,
                           final TagDefinition tagDefinition, final CallContext context) {
-        List<Tag> tags = tagStore.get(objectId);
+        final List<Tag> tags = tagStore.get(objectId);
         if (tags != null) {
-            Iterator<Tag> tagIterator = tags.iterator();
+            final Iterator<Tag> tagIterator = tags.iterator();
             while (tagIterator.hasNext()) {
-                Tag tag = tagIterator.next();
+                final Tag tag = tagIterator.next();
                 if (tag.getTagDefinitionName().equals(tagDefinition.getName())) {
                     tagIterator.remove();
                 }
diff --git a/util/src/test/java/com/ning/billing/util/tag/dao/MockTagDefinitionDao.java b/util/src/test/java/com/ning/billing/util/tag/dao/MockTagDefinitionDao.java
index 5b5956b..2d36936 100644
--- a/util/src/test/java/com/ning/billing/util/tag/dao/MockTagDefinitionDao.java
+++ b/util/src/test/java/com/ning/billing/util/tag/dao/MockTagDefinitionDao.java
@@ -21,8 +21,8 @@ import java.util.List;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 
-import com.ning.billing.util.callcontext.CallContext;
 import com.ning.billing.util.api.TagDefinitionApiException;
+import com.ning.billing.util.callcontext.CallContext;
 import com.ning.billing.util.tag.DefaultTagDefinition;
 import com.ning.billing.util.tag.TagDefinition;
 
@@ -42,7 +42,7 @@ public class MockTagDefinitionDao implements TagDefinitionDao {
     @Override
     public TagDefinition create(final String definitionName, final String description,
                                 final CallContext context) throws TagDefinitionApiException {
-        TagDefinition tag = new DefaultTagDefinition(definitionName, description, false);
+        final TagDefinition tag = new DefaultTagDefinition(definitionName, description, false);
 
         tags.put(definitionName, tag);
         return tag;
diff --git a/util/src/test/java/com/ning/billing/util/tag/MockTagStoreModuleSql.java b/util/src/test/java/com/ning/billing/util/tag/MockTagStoreModuleSql.java
index 6dbc537..213e012 100644
--- a/util/src/test/java/com/ning/billing/util/tag/MockTagStoreModuleSql.java
+++ b/util/src/test/java/com/ning/billing/util/tag/MockTagStoreModuleSql.java
@@ -19,11 +19,11 @@ package com.ning.billing.util.tag;
 
 import org.skife.jdbi.v2.Handle;
 import org.skife.jdbi.v2.IDBI;
+import org.skife.jdbi.v2.tweak.HandleCallback;
 
 import com.ning.billing.dbi.MysqlTestingHelper;
 import com.ning.billing.mock.glue.MockClockModule;
 import com.ning.billing.util.glue.TagStoreModule;
-import org.skife.jdbi.v2.tweak.HandleCallback;
 
 public class MockTagStoreModuleSql extends TagStoreModule {
     private MysqlTestingHelper helper;
@@ -40,7 +40,7 @@ public class MockTagStoreModuleSql extends TagStoreModule {
     public void execute(final String ddl) {
         helper.getDBI().withHandle(new HandleCallback<Void>() {
             @Override
-            public Void withHandle(Handle handle) throws Exception {
+            public Void withHandle(final Handle handle) throws Exception {
                 handle.execute(ddl);
                 return null;
             }
diff --git a/util/src/test/java/com/ning/billing/util/tag/TestTagStore.java b/util/src/test/java/com/ning/billing/util/tag/TestTagStore.java
index b452203..8507834 100644
--- a/util/src/test/java/com/ning/billing/util/tag/TestTagStore.java
+++ b/util/src/test/java/com/ning/billing/util/tag/TestTagStore.java
@@ -22,14 +22,6 @@ import java.util.List;
 import java.util.Map;
 import java.util.UUID;
 
-import com.ning.billing.invoice.api.InvoiceApiException;
-import com.ning.billing.util.callcontext.CallContext;
-import com.ning.billing.util.callcontext.CallOrigin;
-import com.ning.billing.util.callcontext.UserType;
-import com.ning.billing.util.callcontext.DefaultCallContextFactory;
-import com.ning.billing.util.clock.Clock;
-import com.ning.billing.util.dao.ObjectType;
-import com.ning.billing.util.tag.dao.TagDao;
 import org.apache.commons.io.IOUtils;
 import org.joda.time.DateTime;
 import org.joda.time.Seconds;
@@ -38,15 +30,22 @@ import org.skife.jdbi.v2.IDBI;
 import org.skife.jdbi.v2.tweak.HandleCallback;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-import org.testng.annotations.Guice;
 import org.testng.annotations.AfterClass;
 import org.testng.annotations.BeforeClass;
+import org.testng.annotations.Guice;
 import org.testng.annotations.Test;
 
 import com.google.inject.Inject;
 import com.ning.billing.dbi.MysqlTestingHelper;
-
+import com.ning.billing.invoice.api.InvoiceApiException;
 import com.ning.billing.util.api.TagDefinitionApiException;
+import com.ning.billing.util.callcontext.CallContext;
+import com.ning.billing.util.callcontext.CallOrigin;
+import com.ning.billing.util.callcontext.DefaultCallContextFactory;
+import com.ning.billing.util.callcontext.UserType;
+import com.ning.billing.util.clock.Clock;
+import com.ning.billing.util.dao.ObjectType;
+import com.ning.billing.util.tag.dao.TagDao;
 import com.ning.billing.util.tag.dao.TagDefinitionDao;
 
 import static org.testng.Assert.assertEquals;
@@ -55,7 +54,7 @@ import static org.testng.Assert.assertNull;
 import static org.testng.Assert.assertTrue;
 import static org.testng.Assert.fail;
 
-@Test(groups={"slow"})
+@Test(groups = {"slow"})
 @Guice(modules = MockTagStoreModuleSql.class)
 public class TestTagStore {
     @Inject
@@ -66,7 +65,7 @@ public class TestTagStore {
 
     @Inject
     private TagDao tagDao;
-    
+
     @Inject
     private TagDefinitionDao tagDefinitionDao;
 
@@ -78,7 +77,7 @@ public class TestTagStore {
     private final Logger log = LoggerFactory.getLogger(TestTagStore.class);
     private CallContext context;
 
-    @BeforeClass(groups="slow")
+    @BeforeClass(groups = "slow")
     protected void setup() throws IOException {
         // Health check test to make sure MySQL is setup properly
         try {
@@ -88,20 +87,18 @@ public class TestTagStore {
             helper.initDb(utilDdl);
 
             context = new DefaultCallContextFactory(clock).createCallContext("Tag store test", CallOrigin.TEST, UserType.TEST);
-            
+
             cleanupTags();
             tagDefinitionDao.create("tag1", "First tag", context);
             testTag = tagDefinitionDao.create("testTag", "Second tag", context);
-        }
-        catch (Throwable t) {
+        } catch (Throwable t) {
             log.error("Failed to start tag store tests", t);
             fail(t.toString());
         }
     }
 
-    @AfterClass(groups="slow")
-    public void stopMysql()
-    {
+    @AfterClass(groups = "slow")
+    public void stopMysql() {
         if (helper != null) {
             helper.stopMysql();
         }
@@ -111,7 +108,7 @@ public class TestTagStore {
         try {
             helper.getDBI().withHandle(new HandleCallback<Void>() {
                 @Override
-                public Void withHandle(Handle handle) throws Exception {
+                public Void withHandle(final Handle handle) throws Exception {
                     handle.createScript("delete from tag_definitions").execute();
                     handle.createScript("delete from tag_definition_history").execute();
                     handle.createScript("delete from tags").execute();
@@ -122,52 +119,53 @@ public class TestTagStore {
         } catch (Throwable ignore) {
         }
     }
-    @Test(groups="slow")
+
+    @Test(groups = "slow")
     public void testTagCreationAndRetrieval() {
-        UUID accountId = UUID.randomUUID();
+        final UUID accountId = UUID.randomUUID();
 
-        TagStore tagStore = new DefaultTagStore(accountId, ObjectType.ACCOUNT);
-        Tag tag = new DescriptiveTag(testTag);
+        final TagStore tagStore = new DefaultTagStore(accountId, ObjectType.ACCOUNT);
+        final Tag tag = new DescriptiveTag(testTag);
         tagStore.add(tag);
 
         tagDao.saveEntities(accountId, ObjectType.ACCOUNT, tagStore.getEntityList(), context);
 
-        Map<String, Tag> savedTags = tagDao.loadEntities(accountId, ObjectType.ACCOUNT);
+        final Map<String, Tag> savedTags = tagDao.loadEntities(accountId, ObjectType.ACCOUNT);
         assertEquals(savedTags.size(), 1);
 
-        Tag savedTag = savedTags.get(tag.getTagDefinitionName());
+        final Tag savedTag = savedTags.get(tag.getTagDefinitionName());
         assertEquals(savedTag.getTagDefinitionName(), tag.getTagDefinitionName());
         assertEquals(savedTag.getId(), tag.getId());
     }
 
 
-    @Test(groups="slow")
+    @Test(groups = "slow")
     public void testControlTagCreation() {
-        UUID accountId = UUID.randomUUID();
-        TagStore tagStore = new DefaultTagStore(accountId, ObjectType.ACCOUNT);
+        final UUID accountId = UUID.randomUUID();
+        final TagStore tagStore = new DefaultTagStore(accountId, ObjectType.ACCOUNT);
 
-        ControlTag tag = new DefaultControlTag(ControlTagType.AUTO_INVOICING_OFF);
+        final ControlTag tag = new DefaultControlTag(ControlTagType.AUTO_INVOICING_OFF);
         tagStore.add(tag);
         assertEquals(tagStore.generateInvoice(), false);
 
-        List<Tag> tagList = tagStore.getEntityList();
+        final List<Tag> tagList = tagStore.getEntityList();
         tagDao.saveEntities(accountId, ObjectType.ACCOUNT, tagList, context);
 
         tagStore.clear();
         assertEquals(tagStore.getEntityList().size(), 0);
 
-        Map<String, Tag> tagMap = tagDao.loadEntities(accountId, ObjectType.ACCOUNT);
+        final Map<String, Tag> tagMap = tagDao.loadEntities(accountId, ObjectType.ACCOUNT);
         assertEquals(tagMap.size(), 1);
 
         assertEquals(tagMap.containsKey(ControlTagType.AUTO_INVOICING_OFF.toString()), true);
     }
 
-    @Test(groups="slow")
+    @Test(groups = "slow")
     public void testDescriptiveTagCreation() {
-        UUID accountId = UUID.randomUUID();
-        TagStore tagStore = new DefaultTagStore(accountId, ObjectType.ACCOUNT);
+        final UUID accountId = UUID.randomUUID();
+        final TagStore tagStore = new DefaultTagStore(accountId, ObjectType.ACCOUNT);
 
-        String definitionName = "SomeTestTag";
+        final String definitionName = "SomeTestTag";
         TagDefinition tagDefinition = null;
         try {
             tagDefinition = tagDefinitionDao.create(definitionName, "Test tag for some test purpose", context);
@@ -175,7 +173,7 @@ public class TestTagStore {
             fail("Tag definition creation failed.", e);
         }
 
-        DescriptiveTag tag = new DescriptiveTag(tagDefinition);
+        final DescriptiveTag tag = new DescriptiveTag(tagDefinition);
         tagStore.add(tag);
         assertEquals(tagStore.generateInvoice(), true);
 
@@ -184,18 +182,18 @@ public class TestTagStore {
         tagStore.clear();
         assertEquals(tagStore.getEntityList().size(), 0);
 
-        Map<String, Tag> tagMap = tagDao.loadEntities(accountId, ObjectType.ACCOUNT);
+        final Map<String, Tag> tagMap = tagDao.loadEntities(accountId, ObjectType.ACCOUNT);
         assertEquals(tagMap.size(), 1);
 
         assertEquals(tagMap.containsKey(ControlTagType.AUTO_INVOICING_OFF.toString()), false);
     }
 
-    @Test(groups="slow")
+    @Test(groups = "slow")
     public void testMixedTagCreation() {
-        UUID accountId = UUID.randomUUID();
-        TagStore tagStore = new DefaultTagStore(accountId, ObjectType.ACCOUNT);
+        final UUID accountId = UUID.randomUUID();
+        final TagStore tagStore = new DefaultTagStore(accountId, ObjectType.ACCOUNT);
 
-        String definitionName = "MixedTagTest";
+        final String definitionName = "MixedTagTest";
         TagDefinition tagDefinition = null;
         try {
             tagDefinition = tagDefinitionDao.create(definitionName, "Test tag for some test purpose", context);
@@ -203,11 +201,11 @@ public class TestTagStore {
             fail("Tag definition creation failed.", e);
         }
 
-        DescriptiveTag descriptiveTag = new DescriptiveTag(tagDefinition);
+        final DescriptiveTag descriptiveTag = new DescriptiveTag(tagDefinition);
         tagStore.add(descriptiveTag);
         assertEquals(tagStore.generateInvoice(), true);
 
-        ControlTag controlTag = new DefaultControlTag(ControlTagType.AUTO_INVOICING_OFF);
+        final ControlTag controlTag = new DefaultControlTag(ControlTagType.AUTO_INVOICING_OFF);
         tagStore.add(controlTag);
         assertEquals(tagStore.generateInvoice(), false);
 
@@ -216,39 +214,39 @@ public class TestTagStore {
         tagStore.clear();
         assertEquals(tagStore.getEntityList().size(), 0);
 
-        Map<String, Tag> tagMap = tagDao.loadEntities(accountId, ObjectType.ACCOUNT);
+        final Map<String, Tag> tagMap = tagDao.loadEntities(accountId, ObjectType.ACCOUNT);
         assertEquals(tagMap.size(), 2);
 
         assertEquals(tagMap.containsKey(ControlTagType.AUTO_INVOICING_OFF.toString()), true);
     }
 
-    @Test(groups="slow")
+    @Test(groups = "slow")
     public void testControlTags() {
-        UUID accountId = UUID.randomUUID();
-        TagStore tagStore = new DefaultTagStore(accountId, ObjectType.ACCOUNT);
+        final UUID accountId = UUID.randomUUID();
+        final TagStore tagStore = new DefaultTagStore(accountId, ObjectType.ACCOUNT);
         assertEquals(tagStore.generateInvoice(), true);
         assertEquals(tagStore.processPayment(), true);
 
-        ControlTag invoiceTag = new DefaultControlTag(ControlTagType.AUTO_INVOICING_OFF);
+        final ControlTag invoiceTag = new DefaultControlTag(ControlTagType.AUTO_INVOICING_OFF);
         tagStore.add(invoiceTag);
         assertEquals(tagStore.generateInvoice(), false);
         assertEquals(tagStore.processPayment(), true);
 
-        ControlTag paymentTag = new DefaultControlTag(ControlTagType.AUTO_PAY_OFF);
+        final ControlTag paymentTag = new DefaultControlTag(ControlTagType.AUTO_PAY_OFF);
         tagStore.add(paymentTag);
         assertEquals(tagStore.generateInvoice(), false);
         assertEquals(tagStore.processPayment(), false);
     }
 
-    @Test(groups="slow", expectedExceptions = TagDefinitionApiException.class)
+    @Test(groups = "slow", expectedExceptions = TagDefinitionApiException.class)
     public void testTagDefinitionCreationWithControlTagName() throws TagDefinitionApiException {
-        String definitionName = ControlTagType.AUTO_PAY_OFF.toString();
+        final String definitionName = ControlTagType.AUTO_PAY_OFF.toString();
         tagDefinitionDao.create(definitionName, "This should break", context);
     }
 
-    @Test(groups="slow")
+    @Test(groups = "slow")
     public void testTagDefinitionDeletionForUnusedDefinition() throws TagDefinitionApiException {
-        String definitionName = "TestTag1234";
+        final String definitionName = "TestTag1234";
         tagDefinitionDao.create(definitionName, "Some test tag", context);
 
         TagDefinition tagDefinition = tagDefinitionDao.getByName(definitionName);
@@ -259,47 +257,47 @@ public class TestTagStore {
         assertNull(tagDefinition);
     }
 
-    @Test(groups="slow", expectedExceptions = TagDefinitionApiException.class)
+    @Test(groups = "slow", expectedExceptions = TagDefinitionApiException.class)
     public void testTagDefinitionDeletionForDefinitionInUse() throws TagDefinitionApiException {
-        String definitionName = "TestTag12345";
+        final String definitionName = "TestTag12345";
         tagDefinitionDao.create(definitionName, "Some test tag", context);
 
-        TagDefinition tagDefinition = tagDefinitionDao.getByName(definitionName);
+        final TagDefinition tagDefinition = tagDefinitionDao.getByName(definitionName);
         assertNotNull(tagDefinition);
 
-        UUID objectId = UUID.randomUUID();
-        TagStore tagStore = new DefaultTagStore(objectId, ObjectType.ACCOUNT);
-        Tag tag = new DescriptiveTag(tagDefinition);
+        final UUID objectId = UUID.randomUUID();
+        final TagStore tagStore = new DefaultTagStore(objectId, ObjectType.ACCOUNT);
+        final Tag tag = new DescriptiveTag(tagDefinition);
         tagStore.add(tag);
 
         tagDao.saveEntities(objectId, ObjectType.ACCOUNT, tagStore.getEntityList(), context);
 
-        Map<String, Tag> tagMap = tagDao.loadEntities(objectId, ObjectType.ACCOUNT);
+        final Map<String, Tag> tagMap = tagDao.loadEntities(objectId, ObjectType.ACCOUNT);
         assertEquals(tagMap.size(), 1);
 
         tagDefinitionDao.deleteTagDefinition(definitionName, context);
     }
 
-    @Test(groups="slow")
+    @Test(groups = "slow")
     public void testDeleteAllTagsForDefinitionInUse() {
-        String definitionName = "TestTag1234567";
+        final String definitionName = "TestTag1234567";
         try {
             tagDefinitionDao.create(definitionName, "Some test tag", context);
         } catch (TagDefinitionApiException e) {
             fail("Could not create tag definition", e);
         }
 
-        TagDefinition tagDefinition = tagDefinitionDao.getByName(definitionName);
+        final TagDefinition tagDefinition = tagDefinitionDao.getByName(definitionName);
         assertNotNull(tagDefinition);
 
-        UUID objectId = UUID.randomUUID();
-        TagStore tagStore = new DefaultTagStore(objectId, ObjectType.ACCOUNT);
-        Tag tag = new DescriptiveTag(tagDefinition);
+        final UUID objectId = UUID.randomUUID();
+        final TagStore tagStore = new DefaultTagStore(objectId, ObjectType.ACCOUNT);
+        final Tag tag = new DescriptiveTag(tagDefinition);
         tagStore.add(tag);
 
         tagDao.saveEntities(objectId, ObjectType.ACCOUNT, tagStore.getEntityList(), context);
 
-        Map<String, Tag> tagMap = tagDao.loadEntities(objectId, ObjectType.ACCOUNT);
+        final Map<String, Tag> tagMap = tagDao.loadEntities(objectId, ObjectType.ACCOUNT);
         assertEquals(tagMap.size(), 1);
 
         try {
@@ -315,16 +313,16 @@ public class TestTagStore {
         }
     }
 
-    @Test(groups="slow")
+    @Test(groups = "slow")
     public void testDeleteAllTagsForDefinitionNotInUse() {
-        String definitionName = "TestTag4321";
+        final String definitionName = "TestTag4321";
         try {
             tagDefinitionDao.create(definitionName, "Some test tag", context);
         } catch (TagDefinitionApiException e) {
             fail("Could not create tag definition", e);
         }
 
-        TagDefinition tagDefinition = tagDefinitionDao.getByName(definitionName);
+        final TagDefinition tagDefinition = tagDefinitionDao.getByName(definitionName);
         assertNotNull(tagDefinition);
 
         try {
@@ -340,17 +338,17 @@ public class TestTagStore {
         }
     }
 
-    @Test(groups="slow", expectedExceptions = TagDefinitionApiException.class)
+    @Test(groups = "slow", expectedExceptions = TagDefinitionApiException.class)
     public void testDeleteAllTagsForDefinitionWithWrongName() throws TagDefinitionApiException {
-        String definitionName = "TestTag654321";
-        String wrongDefinitionName = "TestTag564321";
+        final String definitionName = "TestTag654321";
+        final String wrongDefinitionName = "TestTag564321";
         try {
             tagDefinitionDao.create(definitionName, "Some test tag", context);
         } catch (TagDefinitionApiException e) {
             fail("Could not create tag definition", e);
         }
 
-        TagDefinition tagDefinition = tagDefinitionDao.getByName(definitionName);
+        final TagDefinition tagDefinition = tagDefinitionDao.getByName(definitionName);
         assertNotNull(tagDefinition);
 
         tagDefinitionDao.deleteAllTagsForDefinition(wrongDefinitionName, context);
@@ -362,50 +360,50 @@ public class TestTagStore {
         }
     }
 
-    @Test(groups="slow")
+    @Test(groups = "slow")
     public void testGetTagDefinitions() {
-        List<TagDefinition> definitionList = tagDefinitionDao.getTagDefinitions();
+        final List<TagDefinition> definitionList = tagDefinitionDao.getTagDefinitions();
         assertTrue(definitionList.size() >= ControlTagType.values().length);
     }
 
     @Test
     public void testTagInsertAudit() {
-        UUID accountId = UUID.randomUUID();
+        final UUID accountId = UUID.randomUUID();
 
-        TagStore tagStore = new DefaultTagStore(accountId, ObjectType.ACCOUNT);
-        Tag tag = new DescriptiveTag(testTag);
+        final TagStore tagStore = new DefaultTagStore(accountId, ObjectType.ACCOUNT);
+        final Tag tag = new DescriptiveTag(testTag);
         tagStore.add(tag);
 
         tagDao.saveEntities(accountId, ObjectType.ACCOUNT, tagStore.getEntityList(), context);
 
-        Map<String, Tag> savedTags = tagDao.loadEntities(accountId, ObjectType.ACCOUNT);
+        final Map<String, Tag> savedTags = tagDao.loadEntities(accountId, ObjectType.ACCOUNT);
         assertEquals(savedTags.size(), 1);
 
-        Tag savedTag = savedTags.get(tag.getTagDefinitionName());
+        final Tag savedTag = savedTags.get(tag.getTagDefinitionName());
         assertEquals(savedTag.getTagDefinitionName(), tag.getTagDefinitionName());
         assertEquals(savedTag.getId(), tag.getId());
 
-        Handle handle = dbi.open();
-        String query = String.format("select * from audit_log a inner join tag_history th on a.record_id = th.history_record_id where a.table_name = 'tag_history' and th.id='%s' and a.change_type='INSERT'",
+        final Handle handle = dbi.open();
+        final String query = String.format("select * from audit_log a inner join tag_history th on a.record_id = th.history_record_id where a.table_name = 'tag_history' and th.id='%s' and a.change_type='INSERT'",
                                      tag.getId().toString());
-        List<Map<String, Object>> result = handle.select(query);
+        final List<Map<String, Object>> result = handle.select(query);
         handle.close();
 
         assertNotNull(result);
         assertEquals(result.size(), 1);
         assertEquals(result.get(0).get("change_type"), "INSERT");
         assertNotNull(result.get(0).get("change_date"));
-        DateTime changeDate = new DateTime(result.get(0).get("change_date"));
+        final DateTime changeDate = new DateTime(result.get(0).get("change_date"));
         assertTrue(Seconds.secondsBetween(changeDate, context.getCreatedDate()).getSeconds() < 2);
         assertEquals(result.get(0).get("changed_by"), context.getUserName());
     }
 
     @Test
     public void testTagDeleteAudit() {
-        UUID accountId = UUID.randomUUID();
+        final UUID accountId = UUID.randomUUID();
 
-        TagStore tagStore = new DefaultTagStore(accountId, ObjectType.ACCOUNT);
-        Tag tag = new DescriptiveTag(testTag);
+        final TagStore tagStore = new DefaultTagStore(accountId, ObjectType.ACCOUNT);
+        final Tag tag = new DescriptiveTag(testTag);
         tagStore.add(tag);
 
         tagDao.saveEntities(accountId, ObjectType.ACCOUNT, tagStore.getEntityList(), context);
@@ -413,38 +411,38 @@ public class TestTagStore {
         tagStore.remove(tag);
         tagDao.saveEntities(accountId, ObjectType.ACCOUNT, tagStore.getEntityList(), context);
 
-        Map<String, Tag> savedTags = tagDao.loadEntities(accountId, ObjectType.ACCOUNT);
+        final Map<String, Tag> savedTags = tagDao.loadEntities(accountId, ObjectType.ACCOUNT);
         assertEquals(savedTags.size(), 0);
 
-        Handle handle = dbi.open();
-        String query = String.format("select * from audit_log a inner join tag_history th on a.record_id = th.history_record_id where a.table_name = 'tag_history' and th.id='%s' and a.change_type='DELETE'",
-                tag.getId().toString());
-        List<Map<String, Object>> result = handle.select(query);
+        final Handle handle = dbi.open();
+        final String query = String.format("select * from audit_log a inner join tag_history th on a.record_id = th.history_record_id where a.table_name = 'tag_history' and th.id='%s' and a.change_type='DELETE'",
+                                     tag.getId().toString());
+        final List<Map<String, Object>> result = handle.select(query);
         handle.close();
 
         assertNotNull(result);
         assertEquals(result.size(), 1);
         assertNotNull(result.get(0).get("change_date"));
-        DateTime changeDate = new DateTime(result.get(0).get("change_date"));
+        final DateTime changeDate = new DateTime(result.get(0).get("change_date"));
         assertTrue(Seconds.secondsBetween(changeDate, context.getUpdatedDate()).getSeconds() < 2);
         assertEquals(result.get(0).get("changed_by"), context.getUserName());
     }
 
     @Test
     public void testAddTag() {
-        UUID objectId = UUID.randomUUID();
-        ObjectType objectType = ObjectType.INVOICE;
-        TagDefinition tagDefinition = new DefaultTagDefinition("test tag", "test", false);
+        final UUID objectId = UUID.randomUUID();
+        final ObjectType objectType = ObjectType.INVOICE;
+        final TagDefinition tagDefinition = new DefaultTagDefinition("test tag", "test", false);
         tagDao.insertTag(objectId, objectType, tagDefinition, context);
-        Map<String, Tag> savedTags = tagDao.loadEntities(objectId, objectType);
+        final Map<String, Tag> savedTags = tagDao.loadEntities(objectId, objectType);
         assertEquals(savedTags.size(), 1);
     }
 
     @Test
     public void testRemoveTag() throws InvoiceApiException {
-        UUID objectId = UUID.randomUUID();
-        ObjectType objectType = ObjectType.INVOICE;
-        TagDefinition tagDefinition = new DefaultTagDefinition("test tag", "test", false);
+        final UUID objectId = UUID.randomUUID();
+        final ObjectType objectType = ObjectType.INVOICE;
+        final TagDefinition tagDefinition = new DefaultTagDefinition("test tag", "test", false);
         tagDao.insertTag(objectId, objectType, tagDefinition, context);
         Map<String, Tag> savedTags = tagDao.loadEntities(objectId, objectType);
         assertEquals(savedTags.size(), 1);
@@ -456,10 +454,10 @@ public class TestTagStore {
 
     @Test
     public void testSetTags() {
-        UUID objectId = UUID.randomUUID();
-        ObjectType objectType = ObjectType.INVOICE;
+        final UUID objectId = UUID.randomUUID();
+        final ObjectType objectType = ObjectType.INVOICE;
 
-        List<Tag> tags = new ArrayList<Tag>();
+        final List<Tag> tags = new ArrayList<Tag>();
         tags.add(new DescriptiveTag("test 1"));
         tags.add(new DescriptiveTag("test 2"));
         tags.add(new DefaultControlTag(ControlTagType.AUTO_INVOICING_OFF));