/* CloudTrail Viewer, is a Java desktop application for reading AWS CloudTrail logs files. Copyright (C) 2017 Mark P. Haskins This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program 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 General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. */ package io.haskins.java.cloudtrailviewer.utils; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; /** * Utility class for converting Date/Time String representations to other formats. * * Created by markhaskins on 05/01/2017. */ class DateFormatter { private final ThreadLocal<DateFormat> df_with_zone = new ThreadLocal<DateFormat>() { @Override protected DateFormat initialValue() { return new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'"); } @Override public void set(DateFormat value) { super.set(value); } }; long convertStringToLong(String dateString) throws ParseException { return df_with_zone.get().parse(dateString).getTime(); } Date convertStringToDate(String dateString) throws ParseException { return df_with_zone.get().parse(dateString); } }