Skip to content

Commit

Permalink
Merge pull request #38 from Ninja-Squad/topic/osgi
Browse files Browse the repository at this point in the history
Make DbSetup osgi-ready by adding attributes in the manifest
  • Loading branch information
jnizet committed Apr 3, 2015
2 parents 49a9056 + 4261ff3 commit 2b8edc9
Show file tree
Hide file tree
Showing 7 changed files with 92 additions and 84 deletions.
12 changes: 11 additions & 1 deletion build.gradle
Expand Up @@ -20,6 +20,7 @@ apply plugin : 'jacoco'
apply plugin : 'maven'
apply plugin : 'signing'
apply plugin : 'javadocHotfix'
apply plugin : 'osgi'

group = 'com.ninja-squad'
sourceCompatibility = 1.6
Expand Down Expand Up @@ -78,6 +79,7 @@ pmdMain {
}

findbugs {
toolVersion = '2.0.3'
sourceSets = [sourceSets.main]
ignoreFailures = true
}
Expand All @@ -102,6 +104,14 @@ def sharedManifest = manifest {
jar {
manifest {
from sharedManifest
instruction 'Bundle-Vendor', 'ninja-squad.com'
instructionReplace 'Export-Package',
'com.ninja_squad.dbsetup',
'com.ninja_squad.dbsetup.bind',
'com.ninja_squad.dbsetup.destination',
'com.ninja_squad.dbsetup.generator',
'com.ninja_squad.dbsetup.operation'
instruction 'Import-Package', '!javax.annotation.*', '*'
}
}

Expand Down Expand Up @@ -243,5 +253,5 @@ signing {
}

task wrapper(type: Wrapper) {
gradleVersion = '1.8'
gradleVersion = '2.3'
}
137 changes: 68 additions & 69 deletions config/pmd/ruleset.xml
Expand Up @@ -8,90 +8,89 @@
The PMD ruleset used by ninja-core
</description>

<rule ref="rulesets/basic.xml">
<rule ref="rulesets/java/empty.xml">
<exclude name="EmptyCatchBlock"/>
</rule>
<rule ref="rulesets/basic.xml/EmptyCatchBlock">
<rule ref="rulesets/java/empty.xml/EmptyCatchBlock">
<properties>
<property name="allowCommentedBlocks" value="true"/>
</properties>
</rule>

<rule ref="rulesets/java/braces.xml"/>

<rule ref="rulesets/braces.xml"/>
<rule ref="rulesets/java/clone.xml"/>

<rule ref="rulesets/java/controversial.xml/AssignmentInOperand"/>
<rule ref="rulesets/java/controversial.xml/DontImportSun"/>

<rule ref="rulesets/clone.xml"/>
<rule ref="rulesets/java/design.xml/SimplifyBooleanReturns"/>
<rule ref="rulesets/java/design.xml/SimplifyBooleanExpressions"/>
<rule ref="rulesets/java/design.xml/SwitchStmtsShouldHaveDefault"/>
<rule ref="rulesets/java/design.xml/ConstructorCallsOverridableMethod"/>
<rule ref="rulesets/java/design.xml/FinalFieldCouldBeStatic"/>
<rule ref="rulesets/java/design.xml/DefaultLabelNotLastInSwitchStmt"/>
<rule ref="rulesets/java/design.xml/OptimizableToArrayCall"/>
<rule ref="rulesets/java/design.xml/EqualsNull"/>
<rule ref="rulesets/java/design.xml/InstantiationToGetClass"/>
<rule ref="rulesets/java/design.xml/IdempotentOperations"/>
<rule ref="rulesets/java/design.xml/SimpleDateFormatNeedsLocale"/>
<rule ref="rulesets/java/design.xml/UseLocaleWithCaseConversions"/>
<rule ref="rulesets/java/design.xml/AvoidProtectedFieldInFinalClass"/>
<rule ref="rulesets/java/design.xml/AssignmentToNonFinalStatic"/>
<rule ref="rulesets/java/design.xml/MissingStaticMethodInNonInstantiatableClass"/>
<rule ref="rulesets/java/design.xml/MissingBreakInSwitch"/>
<rule ref="rulesets/java/design.xml/UseNotifyAllInsteadOfNotify"/>
<rule ref="rulesets/java/design.xml/AvoidInstanceofChecksInCatchClause"/>
<rule ref="rulesets/java/design.xml/SimplifyConditional"/>
<rule ref="rulesets/java/design.xml/CompareObjectsWithEquals"/>
<rule ref="rulesets/java/design.xml/PositionLiteralsFirstInComparisons"/>
<rule ref="rulesets/java/design.xml/UncommentedEmptyMethod"/>
<rule ref="rulesets/java/design.xml/AvoidConstantsInterface"/>
<rule ref="rulesets/java/design.xml/UnsynchronizedStaticDateFormatter"/>
<rule ref="rulesets/java/design.xml/PreserveStackTrace"/>
<rule ref="rulesets/java/design.xml/ClassWithOnlyPrivateConstructorsShouldBeFinal"/>
<rule ref="rulesets/java/design.xml/SingularField"/>
<rule ref="rulesets/java/design.xml/ReturnEmptyArrayRatherThanNull"/>
<rule ref="rulesets/java/design.xml/AbstractClassWithoutAnyMethod"/>

<rule ref="rulesets/controversial.xml/UnusedModifier"/>
<rule ref="rulesets/controversial.xml/AssignmentInOperand"/>
<rule ref="rulesets/controversial.xml/DontImportSun"/>
<rule ref="rulesets/java/finalizers.xml"/>

<rule ref="rulesets/design.xml/SimplifyBooleanReturns"/>
<rule ref="rulesets/design.xml/SimplifyBooleanExpressions"/>
<rule ref="rulesets/design.xml/SwitchStmtsShouldHaveDefault"/>
<rule ref="rulesets/design.xml/ConstructorCallsOverridableMethod"/>
<rule ref="rulesets/design.xml/FinalFieldCouldBeStatic"/>
<rule ref="rulesets/design.xml/DefaultLabelNotLastInSwitchStmt"/>
<rule ref="rulesets/design.xml/OptimizableToArrayCall"/>
<rule ref="rulesets/design.xml/EqualsNull"/>
<rule ref="rulesets/design.xml/InstantiationToGetClass"/>
<rule ref="rulesets/design.xml/IdempotentOperations"/>
<rule ref="rulesets/design.xml/SimpleDateFormatNeedsLocale"/>
<rule ref="rulesets/design.xml/UseLocaleWithCaseConversions"/>
<rule ref="rulesets/design.xml/AvoidProtectedFieldInFinalClass"/>
<rule ref="rulesets/design.xml/AssignmentToNonFinalStatic"/>
<rule ref="rulesets/design.xml/MissingStaticMethodInNonInstantiatableClass"/>
<rule ref="rulesets/design.xml/MissingBreakInSwitch"/>
<rule ref="rulesets/design.xml/UseNotifyAllInsteadOfNotify"/>
<rule ref="rulesets/design.xml/AvoidInstanceofChecksInCatchClause"/>
<rule ref="rulesets/design.xml/SimplifyConditional"/>
<rule ref="rulesets/design.xml/CompareObjectsWithEquals"/>
<rule ref="rulesets/design.xml/PositionLiteralsFirstInComparisons"/>
<rule ref="rulesets/design.xml/UncommentedEmptyMethod"/>
<rule ref="rulesets/design.xml/AvoidConstantsInterface"/>
<rule ref="rulesets/design.xml/UnsynchronizedStaticDateFormatter"/>
<rule ref="rulesets/design.xml/PreserveStackTrace"/>
<rule ref="rulesets/design.xml/ClassWithOnlyPrivateConstructorsShouldBeFinal"/>
<rule ref="rulesets/design.xml/SingularField"/>
<rule ref="rulesets/design.xml/ReturnEmptyArrayRatherThanNull"/>
<rule ref="rulesets/design.xml/AbstractClassWithoutAnyMethod"/>
<rule ref="rulesets/java/imports.xml"/>

<rule ref="rulesets/finalizers.xml"/>
<rule ref="rulesets/java/naming.xml/VariableNamingConventions"/>
<rule ref="rulesets/java/naming.xml/MethodNamingConventions"/>
<rule ref="rulesets/java/naming.xml/ClassNamingConventions"/>
<rule ref="rulesets/java/naming.xml/AbstractNaming"/>
<rule ref="rulesets/java/naming.xml/AvoidDollarSigns"/>
<rule ref="rulesets/java/naming.xml/MethodWithSameNameAsEnclosingClass"/>
<rule ref="rulesets/java/naming.xml/SuspiciousHashcodeMethodName"/>
<rule ref="rulesets/java/naming.xml/SuspiciousConstantFieldName"/>
<rule ref="rulesets/java/naming.xml/SuspiciousEqualsMethodName"/>
<rule ref="rulesets/java/naming.xml/AvoidFieldNameMatchingTypeName"/>
<rule ref="rulesets/java/naming.xml/AvoidFieldNameMatchingMethodName"/>
<rule ref="rulesets/java/naming.xml/NoPackage"/>
<rule ref="rulesets/java/naming.xml/PackageCase"/>
<rule ref="rulesets/java/naming.xml/BooleanGetMethodName"/>

<rule ref="rulesets/imports.xml"/>
<rule ref="rulesets/java/optimizations.xml/UseArrayListInsteadOfVector"/>
<rule ref="rulesets/java/optimizations.xml/SimplifyStartsWith"/>
<rule ref="rulesets/java/optimizations.xml/UseArraysAsList"/>
<rule ref="rulesets/java/optimizations.xml/AvoidArrayLoops"/>
<rule ref="rulesets/java/optimizations.xml/UnnecessaryWrapperObjectCreation"/>
<rule ref="rulesets/java/optimizations.xml/AddEmptyString"/>

<rule ref="rulesets/naming.xml/VariableNamingConventions"/>
<rule ref="rulesets/naming.xml/MethodNamingConventions"/>
<rule ref="rulesets/naming.xml/ClassNamingConventions"/>
<rule ref="rulesets/naming.xml/AbstractNaming"/>
<rule ref="rulesets/naming.xml/AvoidDollarSigns"/>
<rule ref="rulesets/naming.xml/MethodWithSameNameAsEnclosingClass"/>
<rule ref="rulesets/naming.xml/SuspiciousHashcodeMethodName"/>
<rule ref="rulesets/naming.xml/SuspiciousConstantFieldName"/>
<rule ref="rulesets/naming.xml/SuspiciousEqualsMethodName"/>
<rule ref="rulesets/naming.xml/AvoidFieldNameMatchingTypeName"/>
<rule ref="rulesets/naming.xml/AvoidFieldNameMatchingMethodName"/>
<rule ref="rulesets/naming.xml/NoPackage"/>
<rule ref="rulesets/naming.xml/PackageCase"/>
<rule ref="rulesets/naming.xml/BooleanGetMethodName"/>
<rule ref="rulesets/java/strictexception.xml/AvoidCatchingThrowable"/>
<rule ref="rulesets/java/strictexception.xml/SignatureDeclareThrowsException"/>
<rule ref="rulesets/java/strictexception.xml/AvoidCatchingNPE"/>
<rule ref="rulesets/java/strictexception.xml/AvoidThrowingRawExceptionTypes"/>
<rule ref="rulesets/java/strictexception.xml/DoNotExtendJavaLangError"/>
<rule ref="rulesets/java/strictexception.xml/DoNotThrowExceptionInFinally"/>
<rule ref="rulesets/java/strictexception.xml/AvoidThrowingNewInstanceOfSameException"/>

<rule ref="rulesets/optimizations.xml/UseArrayListInsteadOfVector"/>
<rule ref="rulesets/optimizations.xml/SimplifyStartsWith"/>
<rule ref="rulesets/optimizations.xml/UseArraysAsList"/>
<rule ref="rulesets/optimizations.xml/AvoidArrayLoops"/>
<rule ref="rulesets/optimizations.xml/UnnecessaryWrapperObjectCreation"/>
<rule ref="rulesets/optimizations.xml/AddEmptyString"/>

<rule ref="rulesets/strictexception.xml/AvoidCatchingThrowable"/>
<rule ref="rulesets/strictexception.xml/SignatureDeclareThrowsException"/>
<rule ref="rulesets/strictexception.xml/AvoidCatchingNPE"/>
<rule ref="rulesets/strictexception.xml/AvoidThrowingRawExceptionTypes"/>
<rule ref="rulesets/strictexception.xml/DoNotExtendJavaLangError"/>
<rule ref="rulesets/strictexception.xml/DoNotThrowExceptionInFinally"/>
<rule ref="rulesets/strictexception.xml/AvoidThrowingNewInstanceOfSameException"/>

<rule ref="rulesets/strings.xml">
<rule ref="rulesets/java/strings.xml">
<exclude name="AvoidDuplicateLiterals"/>
</rule>

<rule ref="rulesets/unusedcode.xml"/>
<rule ref="rulesets/java/unusedcode.xml"/>-->
</ruleset>
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
4 changes: 2 additions & 2 deletions gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
#Thu Oct 31 17:54:45 CET 2013
#Sat Mar 28 16:21:07 CET 2015
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=http\://services.gradle.org/distributions/gradle-1.8-bin.zip
distributionUrl=http\://services.gradle.org/distributions/gradle-2.3-bin.zip
12 changes: 6 additions & 6 deletions src/main/java/com/ninja_squad/dbsetup/bind/Binders.java
Expand Up @@ -196,8 +196,8 @@ public void bind(java.sql.PreparedStatement stmt, int param, Object value) throw
else if (value instanceof java.util.Date) {
stmt.setTime(param, new Time(((java.util.Date) value).getTime()));
}
else if (value instanceof java.util.Calendar) {
stmt.setTime(param, new Time(((java.util.Calendar) value).getTimeInMillis()));
else if (value instanceof Calendar) {
stmt.setTime(param, new Time(((Calendar) value).getTimeInMillis()));
}
else if (value instanceof String) {
stmt.setTime(param, Time.valueOf((String) value));
Expand Down Expand Up @@ -277,8 +277,8 @@ public void bind(java.sql.PreparedStatement stmt, int param, Object value) throw
else if (value instanceof java.util.Date) {
stmt.setTimestamp(param, new Timestamp(((java.util.Date) value).getTime()));
}
else if (value instanceof java.util.Calendar) {
stmt.setTimestamp(param, new Timestamp(((java.util.Calendar) value).getTimeInMillis()));
else if (value instanceof Calendar) {
stmt.setTimestamp(param, new Timestamp(((Calendar) value).getTimeInMillis()));
}
else if (value instanceof String) {
String valueAsString = (String) value;
Expand Down Expand Up @@ -314,8 +314,8 @@ public void bind(java.sql.PreparedStatement stmt, int param, Object value) throw
else if (value instanceof java.util.Date) {
stmt.setDate(param, new Date(((java.util.Date) value).getTime()));
}
else if (value instanceof java.util.Calendar) {
stmt.setDate(param, new Date(((java.util.Calendar) value).getTimeInMillis()));
else if (value instanceof Calendar) {
stmt.setDate(param, new Date(((Calendar) value).getTimeInMillis()));
}
else if (value instanceof String) {
stmt.setDate(param, Date.valueOf((String) value));
Expand Down
Expand Up @@ -24,15 +24,14 @@

package com.ninja_squad.dbsetup.operation;

import javax.annotation.Nonnull;
import javax.annotation.concurrent.Immutable;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

import javax.annotation.Nonnull;
import javax.annotation.concurrent.Immutable;

import com.ninja_squad.dbsetup.bind.BinderConfiguration;

/**
Expand Down Expand Up @@ -100,7 +99,7 @@ public String toString() {
boolean first = true;
for (Operation operation : operations) {
if (!first) {
builder.append("\n");
builder.append('\n');
}
else {
first = false;
Expand Down
4 changes: 2 additions & 2 deletions src/main/java/com/ninja_squad/dbsetup/operation/Insert.java
Expand Up @@ -254,12 +254,12 @@ private String generateSqlQuery(List<String> allColumnNames) {
sql.append(") values (");
for (Iterator<String> it = allColumnNames.iterator(); it.hasNext(); ) {
it.next();
sql.append("?");
sql.append('?');
if (it.hasNext()) {
sql.append(", ");
}
}
sql.append(")");
sql.append(')');

return sql.toString();
}
Expand Down

0 comments on commit 2b8edc9

Please sign in to comment.