Author: obruce Date: 2014-05-13 14:39:37 +0200 (Tue, 13 May 2014) New Revision: 2973 Url: http://forge.chorem.org/projects/jtimer/repository/revisions/2973 Log: Correction Storage date en long pour les temps Modified: branches/ng-jtimer/src/main/java/org/chorem/jtimer/storage/Storage.java branches/ng-jtimer/src/main/java/org/chorem/jtimer/web/TimeResource.java branches/ng-jtimer/src/main/webapp/js/controllers.js Modified: branches/ng-jtimer/src/main/java/org/chorem/jtimer/storage/Storage.java =================================================================== --- branches/ng-jtimer/src/main/java/org/chorem/jtimer/storage/Storage.java 2014-05-12 16:17:30 UTC (rev 2972) +++ branches/ng-jtimer/src/main/java/org/chorem/jtimer/storage/Storage.java 2014-05-13 12:39:37 UTC (rev 2973) @@ -9,11 +9,14 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.logging.Level; +import java.util.logging.Logger; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.chorem.jtimer.entities.TimerTask; import org.chorem.jtimer.entities.TimerTime; +import org.chorem.jtimer.web.TasksResource; /** * Implementation du stockage des taches en base de données basée sur h2. @@ -29,6 +32,8 @@ */ public class Storage { + private final static Logger LOGGER = Logger.getLogger(TasksResource.class.getName()); + private static final Log log = LogFactory.getLog(Storage.class); protected static final String TABLE_TASK = "task"; @@ -153,7 +158,7 @@ " PRIMARY KEY (id, taskId))"); statement.executeUpdate("CREATE TABLE " + TABLE_TIME + "(taskid LONG NOT NULL," + - " date DATE," + + " date LONG," + " uuid varchar(255) unique," + " duration LONG," + " PRIMARY KEY (taskid, date, uuid)," + @@ -214,7 +219,7 @@ task.setName(rs.getString("name")); task.setParent(rs.getString("parent")); task.setTodayTime(0); - task.setCreationDate(new java.util.Date(rs.getDate("modifdate").getTime())); + task.setCreationDate(new java.util.Date(rs.getLong("modifdate"))); task.setTotalTime(rs.getLong("totalduration")); tasks.add(task); } @@ -327,7 +332,7 @@ " VALUES(?, ?, ?, ?)"); statement.setLong(1, task.getNumber()); - statement.setDate(2, new java.sql.Date(date.getTime())); + statement.setLong(2, date.getTime()); //TODO statement.setString(3, uuid); statement.setLong(4, duration); statement.executeUpdate(); @@ -346,7 +351,9 @@ " VALUES(?, ?, ?, ?)"); statement.setLong(1, number); - statement.setDate(2, new java.sql.Date(time.getCreationDate().getTime())); + statement.setLong(2, time.getCreationDate().getTime()); + + LOGGER.log(Level.WARNING, "Storage add times datetime " +time.getCreationDate().getTime()); statement.setString(3, time.getTimeId()); statement.setLong(4, time.getTime()); statement.executeUpdate(); @@ -385,7 +392,7 @@ time.setTaskId(taskid); time.setTimeId(rs.getString("uuid")); time.setTime(rs.getLong("duration")); - time.setCreationDate(new java.util.Date(rs.getDate("date").getTime())); + time.setCreationDate(new java.util.Date(rs.getLong("date"))); times.add(time); Modified: branches/ng-jtimer/src/main/java/org/chorem/jtimer/web/TimeResource.java =================================================================== --- branches/ng-jtimer/src/main/java/org/chorem/jtimer/web/TimeResource.java 2014-05-12 16:17:30 UTC (rev 2972) +++ branches/ng-jtimer/src/main/java/org/chorem/jtimer/web/TimeResource.java 2014-05-13 12:39:37 UTC (rev 2973) @@ -18,10 +18,7 @@ public class TimeResource extends ServerResource { - private GsonBuilder builder; - protected Storage storage; - private final static Logger LOGGER = Logger.getLogger(TasksResource.class.getName()); /** * Methode qui initialis la resource @@ -29,22 +26,6 @@ */ @Override protected void doInit() throws ResourceException { - - //GSON builder to format dates - builder = new GsonBuilder(); - - builder.registerTypeAdapter(Date.class, new JsonDeserializer<Date>() { - public Date deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException { - return new Date(json.getAsJsonPrimitive().getAsLong()); - } - }); - builder.registerTypeAdapter(Date.class, new JsonSerializer<Date>() { - @Override - public JsonElement serialize(Date date, Type type, JsonSerializationContext jsonSerializationContext) { - return new JsonPrimitive(date.getTime()); - } - }); - storage = (Storage)getContext().getAttributes().get(Storage.class.getName()); } @@ -59,8 +40,9 @@ String taskId = (String)getRequest().getAttributes().get("taskId"); List<TimerTime> timerTimes = storage.getTimes(taskId); - Gson gson = builder.create(); + Gson gson = new Gson(); String json = gson.toJson(timerTimes); + return new StringRepresentation(json, MediaType.APPLICATION_JSON); } @@ -71,7 +53,6 @@ */ @Delete public void deleteTask() { - String timeId = (String)getRequest().getAttributes().get("taskId"); storage.deleteTimeWithId(timeId); } @@ -85,7 +66,7 @@ String timeId = (String)getRequest().getAttributes().get("taskId"); long number = storage.getTaskNumber(timeId); - Gson gson = builder.create(); + Gson gson = new Gson(); String repr1 = representation.getText(); TimerTime t = gson.fromJson(repr1, TimerTime.class); Modified: branches/ng-jtimer/src/main/webapp/js/controllers.js =================================================================== --- branches/ng-jtimer/src/main/webapp/js/controllers.js 2014-05-12 16:17:30 UTC (rev 2972) +++ branches/ng-jtimer/src/main/webapp/js/controllers.js 2014-05-13 12:39:37 UTC (rev 2973) @@ -244,7 +244,7 @@ var timer = function() { $interval(function() { actionToServ(); - }, 30000); //TODO: for now 10s but for real put at least 2h: 200000000 + }, 30000); //TODO: for now 30s but for real put at least 2h: 200000000 }; timer(); @@ -253,7 +253,7 @@ */ var actionToServ = function(){ //Si en ligne on envoie les donnees - if ( $scope.online == true) { + if ( $scope.online) { pushChangesToServ(); getTasksFromServ();