org.openiot.gsn.utils.Helpers.java Source code

Java tutorial

Introduction

Here is the source code for org.openiot.gsn.utils.Helpers.java

Source

/**
*    Copyright (c) 2011-2014, OpenIoT
*   
*    This file is part of OpenIoT.
*
*    OpenIoT is free software: you can redistribute it and/or modify
*    it under the terms of the GNU Lesser General Public License as published by
*    the Free Software Foundation, version 3 of the License.
*
*    OpenIoT is distributed in the hope that it will be useful,
*    but WITHOUT ANY WARRANTY; without even the implied warranty of
*    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
*    GNU Lesser General Public License for more details.
*
*    You should have received a copy of the GNU Lesser General Public License
*    along with OpenIoT.  If not, see <http://www.gnu.org/licenses/>.
*
*     Contact: OpenIoT mailto: info@openiot.eu
 * @author Timotee Maret
 * @author Ali Salehi
 * @author Sofiane Sarni
*/

package org.openiot.gsn.utils;

import java.util.Properties;

import org.apache.log4j.PropertyConfigurator;
import org.joda.time.DateTime;
import org.joda.time.format.DateTimeFormat;
import org.joda.time.format.DateTimeFormatter;
import org.joda.time.format.ISODateTimeFormat;

public class Helpers {
    public static void initLoggerToDebug() {
        Properties properties = new Properties();
        properties.put("log4j.rootLogger", "DEBUG,console");
        properties.put("log4j.appender.console", "org.apache.log4j.ConsoleAppender");
        properties.put("log4j.appender.console.Threshold", "DEBUG");
        properties.put("log4j.logger.com.mchange", "WARN");
        properties.put("log4j.logger.org.mortbay", "WARN");
        properties.put("log4j.logger.org.apache", "WARN");
        properties.put("log4j.appender.console.layout", "org.apache.log4j.PatternLayout");
        properties.put("log4j.appender.console.layout.ConversionPattern", "%-6p[%d] [%t] (%13F:%L) %3x - %m%n");
        PropertyConfigurator.configure(properties);
    }

    public static String formatTimePeriod(long timestamp) {
        if (timestamp < 1000)
            return timestamp + " ms";
        if (timestamp < 60 * 1000)
            return (timestamp / 1000) + " sec";
        if (timestamp < 60 * 60 * 1000)
            return (timestamp / (1000 * 60)) + " min";
        if (timestamp < 24 * 60 * 60 * 1000)
            return (timestamp / (1000 * 60 * 60)) + " h";
        return (timestamp / (24 * 1000 * 60 * 60)) + " day";
    }

    public static long convertTimeFromIsoToLong(String time) throws Exception {
        DateTimeFormatter fmt = ISODateTimeFormat.dateTime();
        return fmt.parseDateTime(time).getMillis();
    }

    public static long convertTimeFromIsoToLong(String time, String format) throws Exception {
        DateTimeFormatter fmt = DateTimeFormat.forPattern(format);
        return fmt.parseDateTime(time).getMillis();
    }

    public static String convertTimeFromLongToIso(long timestamp) {
        DateTimeFormatter fmt = ISODateTimeFormat.dateTime();
        DateTime dt = new DateTime(timestamp);
        return fmt.print(dt);
    }

    public static String convertTimeFromLongToIso(long timestamp, String format) {
        DateTimeFormatter fmt = DateTimeFormat.forPattern(format);
        DateTime dt = new DateTime(timestamp);
        return fmt.print(dt);
    }

}