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

gturri-guest pushed a commit to tag temp
in repository axmlrpc.

commit 0b40aeea14f9586c4efdb543e028027a147a583b
Author: Guillaume Turri <[email protected]>
Date:   Tue Apr 12 10:48:03 2016 +0200

    Adapt rules to fix build
    
    * remove the test which relies on wiremock since this test package
      isn't available in debian
    * embed the source of jISO8601: since this package only contains
      one class, we'd rather bring this source here, then creating an
      ad hoc debian package
---
 debian/fr/turri/jiso8601/Iso8601Deserializer.java | 144 ++++++++++++++++++++++
 debian/maven.ignoreRules                          |  11 ++
 debian/pom.xml                                    |  42 -------
 debian/rules                                      |   7 +-
 4 files changed, 159 insertions(+), 45 deletions(-)

diff --git a/debian/fr/turri/jiso8601/Iso8601Deserializer.java 
b/debian/fr/turri/jiso8601/Iso8601Deserializer.java
new file mode 100644
index 0000000..034cec7
--- /dev/null
+++ b/debian/fr/turri/jiso8601/Iso8601Deserializer.java
@@ -0,0 +1,144 @@
+package fr.turri.jiso8601;
+
+import java.util.Calendar;
+import java.util.Date;
+import java.util.GregorianCalendar;
+import java.util.TimeZone;
+
+public class Iso8601Deserializer {
+       private Iso8601Deserializer(){}
+
+       public static Date toDate(String toParse){
+               return toCalendar(toParse).getTime();
+       }
+
+       public static Calendar toCalendar(String toParse){
+               if ( toParse.indexOf('T') == -1 ){
+                       return buildCalendarWithDateOnly(toParse, toParse);
+               }
+               int indexOfT = toParse.indexOf('T');
+               Calendar result = 
buildCalendarWithDateOnly(toParse.substring(0, indexOfT), toParse);
+               return parseHour(result, toParse.substring(indexOfT+1));
+       }
+
+       private static Calendar parseHour(Calendar result, String hourStr){
+               String basicFormatHour = hourStr.replace(":", "");
+
+               int indexOfZ = basicFormatHour.indexOf('Z');
+               if ( indexOfZ != -1 ){
+                       parseHourWithoutHandlingTimeZone(result, 
basicFormatHour.substring(0, indexOfZ));
+               } else {
+                       int indexOfSign = getIndexOfSign(basicFormatHour);
+                       if ( indexOfSign == -1 ){
+                               parseHourWithoutHandlingTimeZone(result, 
basicFormatHour);
+                               result.setTimeZone(TimeZone.getDefault());
+                       } else {
+                               parseHourWithoutHandlingTimeZone(result, 
basicFormatHour.substring(0, indexOfSign));
+                               result.setTimeZone(TimeZone.getTimeZone("GMT" + 
basicFormatHour.substring(indexOfSign)));
+                       }
+               }
+               return result;
+       }
+
+       private static int getIndexOfSign(String str){
+               int index = str.indexOf('+');
+               return index != -1 ? index : str.indexOf('-');
+       }
+
+       private static void parseHourWithoutHandlingTimeZone(Calendar calendar, 
String basicFormatHour){
+               basicFormatHour = basicFormatHour.replace(',', '.');
+               int indexOfDot = basicFormatHour.indexOf('.');
+               double fractionalPart = 0;
+               if ( indexOfDot != -1 ){
+                       fractionalPart = Double.parseDouble("0" + 
basicFormatHour.substring(indexOfDot));
+                       basicFormatHour = basicFormatHour.substring(0, 
indexOfDot);
+               }
+
+               if ( basicFormatHour.length() >= 2 ){
+                       calendar.set(Calendar.HOUR_OF_DAY, 
Integer.parseInt(basicFormatHour.substring(0, 2)));
+               }
+
+               if ( basicFormatHour.length() > 2 ){
+                       calendar.set(Calendar.MINUTE, 
Integer.parseInt(basicFormatHour.substring(2, 4)));
+               } else {
+                       fractionalPart *= 60;
+               }
+
+               if ( basicFormatHour.length() > 4 ){
+                       calendar.set(Calendar.SECOND, 
Integer.parseInt(basicFormatHour.substring(4, 6)));
+               } else {
+                       fractionalPart *= 60;
+               }
+
+               calendar.set(Calendar.MILLISECOND, (int) (fractionalPart * 
1000));
+       }
+
+       private static Calendar buildCalendarWithDateOnly(String dateStr, 
String originalDate){
+               Calendar result = new 
GregorianCalendar(TimeZone.getTimeZone("UTC"));
+               result.setMinimalDaysInFirstWeek(4);
+               result.setFirstDayOfWeek(Calendar.MONDAY);
+               result.set(Calendar.HOUR_OF_DAY, 0);
+               result.set(Calendar.MINUTE, 0);
+               result.set(Calendar.SECOND, 0);
+               result.set(Calendar.MILLISECOND, 0);
+               String basicFormatDate = dateStr.replaceAll("-", "");
+
+               if ( basicFormatDate.indexOf('W') != -1 ){
+                       return parseWeekDate(result, basicFormatDate);
+               } else if ( basicFormatDate.length() == 7 ){
+                       return parseOrdinalDate(result, basicFormatDate);
+               } else {
+                       return parseCalendarDate(result, basicFormatDate, 
originalDate);
+               }
+       }
+
+       private static Calendar parseCalendarDate(Calendar result, String 
basicFormatDate, String originalDate){
+               if ( basicFormatDate.length() == 2 ){
+                       return parseCalendarDateWithCenturyOnly(result, 
basicFormatDate);
+               } else if ( basicFormatDate.length() == 4){
+                       return parseCalendarDateWithYearOnly(result, 
basicFormatDate);
+               } else {
+                       return 
parseCalendarDateWithPrecisionGreaterThanYear(result, basicFormatDate, 
originalDate);
+               }
+       }
+
+       private static Calendar parseCalendarDateWithCenturyOnly(Calendar 
result, String basicFormatDate){
+               result.set(Integer.parseInt(basicFormatDate) * 100, 0, 1);
+               return result;
+       }
+
+       private static Calendar parseCalendarDateWithYearOnly(Calendar result, 
String basicFormatDate){
+               result.set(Integer.parseInt(basicFormatDate), 0, 1);
+               return result;
+       }
+
+       private static Calendar 
parseCalendarDateWithPrecisionGreaterThanYear(Calendar result, String 
basicFormatDate, String originalDate){
+               int year = Integer.parseInt(basicFormatDate.substring(0, 4));
+               int month = Integer.parseInt(basicFormatDate.substring(4, 6)) - 
1;
+               if ( basicFormatDate.length() == 6 ){
+                       result.set(year, month, 1);
+                       return result;
+               }
+
+               if ( basicFormatDate.length() == 8 ){
+                       result.set(year, month, 
Integer.parseInt(basicFormatDate.substring(6)));
+                       return result;
+               }
+               throw new RuntimeException("Can't parse " + originalDate);
+       }
+
+       private static Calendar parseWeekDate(Calendar result, String 
basicFormatDate) {
+               result.set(Calendar.YEAR, 
Integer.parseInt(basicFormatDate.substring(0, 4)));
+               result.set(Calendar.WEEK_OF_YEAR, 
Integer.parseInt(basicFormatDate.substring(5, 7)));
+               result.set(Calendar.DAY_OF_WEEK, basicFormatDate.length() == 7
+                               ? Calendar.MONDAY
+                               : Calendar.SUNDAY + 
Integer.parseInt(basicFormatDate.substring(7)));
+               return result;
+       }
+
+       private static Calendar parseOrdinalDate(Calendar calendar, String 
basicFormatOrdinalDate) {
+               calendar.set(Calendar.YEAR, 
Integer.parseInt(basicFormatOrdinalDate.substring(0, 4)));
+               calendar.set(Calendar.DAY_OF_YEAR, 
Integer.parseInt(basicFormatOrdinalDate.substring(4)));
+               return calendar;
+       }
+}
diff --git a/debian/maven.ignoreRules b/debian/maven.ignoreRules
new file mode 100644
index 0000000..2d4381c
--- /dev/null
+++ b/debian/maven.ignoreRules
@@ -0,0 +1,11 @@
+
+com.github.tomakehurst wiremock * * * *
+fr.turri jISO8601 * * * *
+org.apache.maven.plugins maven-assembly-plugin * * * *
+org.apache.maven.plugins maven-dependency-plugin * * * *
+org.apache.maven.plugins maven-surefire-plugin * * * *
+org.codehaus.mojo cobertura-maven-plugin * * * *
+org.codehaus.mojo findbugs-maven-plugin * * * *
+org.mockito mockito-all * * * *
+org.pitest pitest-maven * * * *
+org.sonatype.plugins nexus-staging-maven-plugin * * * *
diff --git a/debian/pom.xml b/debian/pom.xml
deleted file mode 100644
index 81d0c5e..0000000
--- a/debian/pom.xml
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version='1.0' encoding='UTF-8'?>
-<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd";>
-       <modelVersion>4.0.0</modelVersion>
-       <groupId>de.timroes</groupId>
-       <artifactId>aXMLRPC</artifactId>
-       <version>1.8.1</version>
-       <packaging>jar</packaging>
-       <properties>
-               <debian.hasPackageVersion>
-               </debian.hasPackageVersion>
-               <debian.originalVersion>1.8.0</debian.originalVersion>
-               <debian.package>libaxmlrpc-java</debian.package>
-       </properties>
-       <name>aXMLRPC</name>
-       <description>Lightweight Java XML-RPC working also on 
Android.</description>
-       <url>https://github.com/timroes/aXMLRPC</url>
-       <licenses>
-               <license>
-                       <name>The MIT License (MIT)</name>
-               </license>
-       </licenses>
-       <developers>
-               <developer>
-                       <id>timroes</id>
-                       <name>Tim Roes</name>
-                       <email>[email protected]</email>
-               </developer>
-       </developers>
-       <dependencies>
-               <dependency>
-                       <groupId>junit</groupId>
-                       <artifactId>junit</artifactId>
-                       <version>4.12</version>
-                       <scope>test</scope>
-               </dependency>
-       </dependencies>
-       <scm>
-               <connection>scm:[email protected]:timroes/aXMLRPC.git</connection>
-               
<developerConnection>scm:[email protected]:timroes/aXMLRPC.git</developerConnection>
-               <url>scm:[email protected]:timroes/aXMLRPC.git</url>
-       </scm>
-</project>
diff --git a/debian/rules b/debian/rules
index 076313c..7888116 100755
--- a/debian/rules
+++ b/debian/rules
@@ -6,11 +6,12 @@ include /usr/share/cdbs/1/class/maven.mk
 JAVA_HOME := /usr/lib/jvm/default-java
 
 pre-build::
-       cp debian/pom.xml .
-       mh_patchpoms -plibaxmlrpc-java --keep-pom-version
+       cp -r debian/fr src/main/java
+       mv src/test/java/de/timeroes/axmlrpc/TestResponseParser.java debian || 
true
 
 clean::
-       rm -f pom.xml
+       rm -rf src/main/java/fr
+       cp debian/TestResponseParser.java src/test/java/de/timeroes/axmlrpc/
 
 get-orig-source:
        uscan --download-current-version --force-download --symlink

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

_______________________________________________
pkg-java-commits mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-commits

Reply via email to