From 18127a2dfc362ffd7de4110e013a10a9f894469b Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Sun, 3 May 2015 12:09:00 +1200 Subject: Implmenet reflection json conversion --- src/org/traccar/database/Convertable.java | 26 -------- src/org/traccar/database/ObjectConverter.java | 86 --------------------------- src/org/traccar/database/QueryBuilder.java | 13 ++-- 3 files changed, 6 insertions(+), 119 deletions(-) delete mode 100644 src/org/traccar/database/Convertable.java delete mode 100644 src/org/traccar/database/ObjectConverter.java (limited to 'src/org/traccar/database') diff --git a/src/org/traccar/database/Convertable.java b/src/org/traccar/database/Convertable.java deleted file mode 100644 index cc1a88ceb..000000000 --- a/src/org/traccar/database/Convertable.java +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright 2015 Anton Tananaev (anton.tananaev@gmail.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.traccar.database; - -import javax.json.JsonObject; - -public interface Convertable { - - public JsonObject toJson(); - - public void fromJson(JsonObject json) throws Exception; - -} diff --git a/src/org/traccar/database/ObjectConverter.java b/src/org/traccar/database/ObjectConverter.java deleted file mode 100644 index 5a7f7083a..000000000 --- a/src/org/traccar/database/ObjectConverter.java +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Copyright 2015 Anton Tananaev (anton.tananaev@gmail.com) - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.traccar.database; - -import java.text.DateFormat; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.Collection; -import java.util.Date; -import javax.json.Json; -import javax.json.JsonArray; -import javax.json.JsonArrayBuilder; -import javax.json.JsonObject; -import javax.json.JsonObjectBuilder; -import org.traccar.helper.Log; - -public class ObjectConverter { - - public static final DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ssZ"); - - public static JsonArray arrayToJson(Collection collection) { - - JsonArrayBuilder array = Json.createArrayBuilder(); - - for (Convertable object : collection) { - array.add(object.toJson()); - } - - return array.build(); - } - - public static String getString(JsonObject json, String key) { - if (json.containsKey(key)) { - return json.getString(key); - } - return null; - } - - public static void putString(JsonObjectBuilder json, String key, String value) { - if (value != null) { - json.add(key, value); - } - } - - public static long getLong(JsonObject json, String key) { - if (json.containsKey(key)) { - return json.getJsonNumber(key).longValue(); - } - return 0; - } - - public static void putLong(JsonObjectBuilder json, String key, long value) { - json.add(key, value); - } - - public static Date getDate(JsonObject json, String key) { - if (json.containsKey(key)) { - try { - return dateFormat.parse(json.getString(key)); - } catch (ParseException error) { - Log.warning(error); - } - } - return null; - } - - public static void putDate(JsonObjectBuilder json, String key, Date value) { - if (value != null) { - json.add(key, dateFormat.format(value)); - } - } - -} diff --git a/src/org/traccar/database/QueryBuilder.java b/src/org/traccar/database/QueryBuilder.java index 29a737f20..d05f48c09 100644 --- a/src/org/traccar/database/QueryBuilder.java +++ b/src/org/traccar/database/QueryBuilder.java @@ -15,7 +15,6 @@ */ package org.traccar.database; -import java.beans.Introspector; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.sql.PreparedStatement; @@ -176,17 +175,17 @@ public class QueryBuilder { String name = method.getName().substring(3); try { if (method.getReturnType().equals(boolean.class)) { - return setBoolean(name, (Boolean) method.invoke(object)); + setBoolean(name, (Boolean) method.invoke(object)); } else if (method.getReturnType().equals(int.class)) { - return setInteger(name, (Integer) method.invoke(object)); + setInteger(name, (Integer) method.invoke(object)); } else if (method.getReturnType().equals(long.class)) { - return setLong(name, (Long) method.invoke(object)); + setLong(name, (Long) method.invoke(object)); } else if (method.getReturnType().equals(double.class)) { - return setDouble(name, (Double) method.invoke(object)); + setDouble(name, (Double) method.invoke(object)); } else if (method.getReturnType().equals(String.class)) { - return setString(name, (String) method.invoke(object)); + setString(name, (String) method.invoke(object)); } else if (method.getReturnType().equals(Date.class)) { - return setDate(name, (Date) method.invoke(object)); + setDate(name, (Date) method.invoke(object)); } } catch (IllegalAccessException error) { } catch (InvocationTargetException error) { -- cgit v1.2.3