Package org.openstreetmap.osmosis.xml.common

Source Code of org.openstreetmap.osmosis.xml.common.XmlTimestampFormat

// This software is released into the Public Domain.  See copying.txt for details.
package org.openstreetmap.osmosis.xml.common;

import java.util.Date;

import org.openstreetmap.osmosis.core.domain.common.TimestampFormat;
import org.openstreetmap.osmosis.core.time.DateFormatter;
import org.openstreetmap.osmosis.core.time.DateParser;


/**
* A timestamp format implementation for dates read and stored from osm xml
* files.
*
* @author Brett Henderson
*/
public class XmlTimestampFormat extends TimestampFormat {
 
  private ThreadLocal<DateFormatter> dateFormatterStore;
  private ThreadLocal<DateParser> dateParserStore;
 
 
  /**
   * Creates a new instance.
   */
  public XmlTimestampFormat() {
    dateFormatterStore = new ThreadLocal<DateFormatter>();
    dateParserStore = new ThreadLocal<DateParser>();
  }
 
 
  /**
   * {@inheritDoc}
   */
  @Override
  public String formatTimestamp(Date timestamp) {
    DateFormatter dateFormatter;
   
    dateFormatter = dateFormatterStore.get();
    if (dateFormatter == null) {
      dateFormatter = new DateFormatter();
      dateFormatterStore.set(dateFormatter);
    }
   
    return dateFormatter.format(timestamp);
  }
 
 
  /**
   * {@inheritDoc}
   */
  @Override
  public Date parseTimestamp(String timestamp) {
    DateParser dateParser;
   
    dateParser = dateParserStore.get();
    if (dateParser == null) {
      dateParser = new DateParser();
      dateParserStore.set(dateParser);
    }
   
    return dateParser.parse(timestamp);
  }
}
TOP

Related Classes of org.openstreetmap.osmosis.xml.common.XmlTimestampFormat

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.