Package org.openstreetmap.osmosis.xml.v0_6.impl

Source Code of org.openstreetmap.osmosis.xml.v0_6.impl.TagElementProcessor

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

import org.xml.sax.Attributes;

import org.openstreetmap.osmosis.core.domain.v0_6.Tag;
import org.openstreetmap.osmosis.xml.common.BaseElementProcessor;


/**
* Provides an element processor implementation for a tag.
*
* @author Brett Henderson
*/
public class TagElementProcessor extends BaseElementProcessor {
  private static final String ATTRIBUTE_NAME_KEY = "k";
  private static final String ATTRIBUTE_NAME_VALUE = "v";
 
  private TagListener tagListener;
  private Tag tag;
 
 
  /**
   * Creates a new instance.
   *
   * @param parentProcessor
   *            The parent element processor.
   * @param tagListener
   *            The tag listener for receiving created tags.
   */
  public TagElementProcessor(BaseElementProcessor parentProcessor, TagListener tagListener) {
    super(parentProcessor, true);
   
    this.tagListener = tagListener;
  }
 
 
  /**
   * {@inheritDoc}
   */
  public void begin(Attributes attributes) {
    String key;
    String value;
   
    key = attributes.getValue(ATTRIBUTE_NAME_KEY);
    value = attributes.getValue(ATTRIBUTE_NAME_VALUE);
   
    tag = new Tag(key, value);
  }
 
 
  /**
   * {@inheritDoc}
   */
  public void end() {
    tagListener.processTag(tag);
    tag = null;
  }
}
TOP

Related Classes of org.openstreetmap.osmosis.xml.v0_6.impl.TagElementProcessor

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.