Search in sources :

Example 96 with Tag

use of org.mozilla.jss.asn1.Tag in project osmosis by openstreetmap.

the class OsmWriterTest method testProcess6.

/**
 * Test processing a Way.
 */
@Test
public final void testProcess6() {
    Way testWay;
    testWay = new Way(new CommonEntityData(3456, 0, new Date(), new OsmUser(12, "OsmosisTest"), 0));
    testWay.getWayNodes().add(new WayNode(1234));
    testWay.getWayNodes().add(new WayNode(1235));
    testWay.getTags().add(new Tag("test_key1", "test_value1"));
    testOsmWriter.process(new WayContainer(testWay));
// Nothing to assert; just expect no exception
}
Also used : CommonEntityData(org.openstreetmap.osmosis.core.domain.v0_6.CommonEntityData) WayContainer(org.openstreetmap.osmosis.core.container.v0_6.WayContainer) WayNode(org.openstreetmap.osmosis.core.domain.v0_6.WayNode) OsmUser(org.openstreetmap.osmosis.core.domain.v0_6.OsmUser) Tag(org.openstreetmap.osmosis.core.domain.v0_6.Tag) Way(org.openstreetmap.osmosis.core.domain.v0_6.Way) Date(java.util.Date) Test(org.junit.Test)

Example 97 with Tag

use of org.mozilla.jss.asn1.Tag in project osmosis by openstreetmap.

the class RelationWriterTest method testProcessNormalRelation.

/**
 * Test writing out a normal Relation element.
 */
@Test
public final void testProcessNormalRelation() {
    Relation relation = new Relation(new CommonEntityData(1234, 2, timestamp, new OsmUser(23, "someuser"), 0));
    relation.getMembers().add(new RelationMember(2345, EntityType.Node, "noderole"));
    relation.getMembers().add(new RelationMember(3456, EntityType.Way, "wayrole"));
    relation.getMembers().add(new RelationMember(4567, EntityType.Relation, "relationrole"));
    relation.getTags().add(new Tag("relationkey", "relationvalue"));
    testRelationWriter.process(relation);
    try {
        testBufferedWriter.flush();
    } catch (IOException e) {
        e.printStackTrace();
        fail("IOException");
    }
    String[] strArray = testWriter.toString().split("\\n", 6);
    assertTrue("Relation opening element does not match.", strArray[0].matches(relationOpeningMatch));
    assertTrue("Relation member node does not match.", strArray[1].matches(nodeMemberMatch));
    assertTrue("Relation member way does not match.", strArray[2].matches(wayMemberMatch));
    assertTrue("Relation member relation does not match.", strArray[3].matches(relationMemberMatch));
    assertTrue("Relation tag does not match.", strArray[4].matches(relationTagMatch));
    assertTrue("Relation closing element does not match.", strArray[5].matches(relationClosingMatch));
}
Also used : CommonEntityData(org.openstreetmap.osmosis.core.domain.v0_6.CommonEntityData) Relation(org.openstreetmap.osmosis.core.domain.v0_6.Relation) RelationMember(org.openstreetmap.osmosis.core.domain.v0_6.RelationMember) OsmUser(org.openstreetmap.osmosis.core.domain.v0_6.OsmUser) Tag(org.openstreetmap.osmosis.core.domain.v0_6.Tag) IOException(java.io.IOException) Test(org.junit.Test)

Example 98 with Tag

use of org.mozilla.jss.asn1.Tag in project osmosis by openstreetmap.

the class RelationWriter method process.

/**
 * Writes the relation.
 *
 * @param relation
 *            The relation to be processed.
 */
public void process(Relation relation) {
    List<RelationMember> relationMembers;
    Collection<Tag> tags;
    beginOpenElement();
    addCommonAttributes(relation);
    addMetatags(relation);
    relationMembers = relation.getMembers();
    tags = relation.getTags();
    if (relationMembers.size() > 0 || tags.size() > 0) {
        endOpenElement(false);
        for (RelationMember relationMember : relationMembers) {
            relationMemberWriter.processRelationMember(relationMember);
        }
        for (Tag tag : tags) {
            tagWriter.process(tag);
        }
        closeElement();
    } else {
        endOpenElement(true);
    }
}
Also used : RelationMember(org.openstreetmap.osmosis.core.domain.v0_6.RelationMember) Tag(org.openstreetmap.osmosis.core.domain.v0_6.Tag)

Example 99 with Tag

use of org.mozilla.jss.asn1.Tag in project osmosis by openstreetmap.

the class TagElementProcessor method begin.

/**
 * {@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);
}
Also used : Tag(org.openstreetmap.osmosis.core.domain.v0_6.Tag)

Example 100 with Tag

use of org.mozilla.jss.asn1.Tag in project osmosis by openstreetmap.

the class WayWriter method process.

/**
 * Writes the way.
 *
 * @param way
 *            The way to be processed.
 */
public void process(Way way) {
    List<WayNode> wayNodes;
    Collection<Tag> tags;
    beginOpenElement();
    addCommonAttributes(way);
    addMetatags(way);
    wayNodes = way.getWayNodes();
    tags = way.getTags();
    if (wayNodes.size() > 0 || tags.size() > 0) {
        endOpenElement(false);
        for (WayNode wayNode : wayNodes) {
            wayNodeWriter.processWayNode(wayNode);
        }
        for (Tag tag : tags) {
            tagWriter.process(tag);
        }
        closeElement();
    } else {
        endOpenElement(true);
    }
}
Also used : WayNode(org.openstreetmap.osmosis.core.domain.v0_6.WayNode) Tag(org.openstreetmap.osmosis.core.domain.v0_6.Tag)

Aggregations

Tag (org.openstreetmap.osmosis.core.domain.v0_6.Tag)66 SEQUENCE (org.mozilla.jss.asn1.SEQUENCE)23 CommonEntityData (org.openstreetmap.osmosis.core.domain.v0_6.CommonEntityData)23 WayNode (org.openstreetmap.osmosis.core.domain.v0_6.WayNode)17 IOException (java.io.IOException)16 Test (org.junit.Test)16 Node (org.openstreetmap.osmosis.core.domain.v0_6.Node)16 OsmUser (org.openstreetmap.osmosis.core.domain.v0_6.OsmUser)16 Way (org.openstreetmap.osmosis.core.domain.v0_6.Way)12 Date (java.util.Date)10 RelationMember (org.openstreetmap.osmosis.core.domain.v0_6.RelationMember)10 OsmosisRuntimeException (org.openstreetmap.osmosis.core.OsmosisRuntimeException)9 Relation (org.openstreetmap.osmosis.core.domain.v0_6.Relation)9 Tag (org.mozilla.jss.asn1.Tag)7 SQLException (java.sql.SQLException)6 ArrayList (java.util.ArrayList)6 EXPLICIT (org.mozilla.jss.asn1.EXPLICIT)6 Osmformat (crosby.binary.Osmformat)5 NodeContainer (org.openstreetmap.osmosis.core.container.v0_6.NodeContainer)5 Point (com.vividsolutions.jts.geom.Point)4