All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.openlr.binary.reader.LocationReferenceReaderFactory Maven / Gradle / Ivy

The newest version!
package org.openlr.binary.reader;

import org.openlr.locationreference.LocationReferenceFactory;

public class LocationReferenceReaderFactory {
    public LocationReferenceReader create() {
        LocationReferenceFactory locationReferenceFactory = new LocationReferenceFactory();

        StatusReader statusReader = new StatusReader();
        IntegerReader integerReader = new IntegerReader();
        CoordinateReader coordinateReader = new CoordinateReader(integerReader);
        AttributesReader attributesReader = new AttributesReader();
        OffsetReader offsetReader = new OffsetReader();

        LineLocationReferenceReader lineLocationReferenceReader = new LineLocationReferenceReader(
                locationReferenceFactory,
                statusReader,
                coordinateReader,
                attributesReader,
                offsetReader);

        GeoCoordinateLocationReferenceReader geoCoordinateLocationReferenceReader = new GeoCoordinateLocationReferenceReader(
                locationReferenceFactory,
                statusReader,
                coordinateReader);

        PointAlongLineLocationReferenceReader pointAlongLineLocationReferenceReader = new PointAlongLineLocationReferenceReader(
                locationReferenceFactory,
                statusReader,
                coordinateReader,
                attributesReader,
                offsetReader);

        PointOfInterestWithAccessPointLocationReferenceReader pointOfInterestWithAccessPointLocationReferenceReader = new PointOfInterestWithAccessPointLocationReferenceReader(
                locationReferenceFactory,
                statusReader,
                coordinateReader,
                attributesReader,
                offsetReader);

        CircleLocationReferenceReader circleLocationReferenceReader = new CircleLocationReferenceReader(
                locationReferenceFactory,
                statusReader,
                coordinateReader,
                integerReader);

        PolygonLocationReferenceReader polygonLocationReferenceReader = new PolygonLocationReferenceReader(
                locationReferenceFactory,
                statusReader,
                coordinateReader);

        RectangleLocationReferenceReader rectangleLocationReferenceReader = new RectangleLocationReferenceReader(
                locationReferenceFactory,
                statusReader,
                coordinateReader);

        GridLocationReferenceReader gridLocationReferenceReader = new GridLocationReferenceReader(
                locationReferenceFactory,
                statusReader,
                coordinateReader,
                integerReader);

        ClosedLineLocationReferenceReader closedLineLocationReferenceReader = new ClosedLineLocationReferenceReader(
                locationReferenceFactory,
                statusReader,
                coordinateReader,
                attributesReader);

        return new LocationReferenceReader(
                statusReader,
                lineLocationReferenceReader,
                geoCoordinateLocationReferenceReader,
                pointAlongLineLocationReferenceReader,
                pointOfInterestWithAccessPointLocationReferenceReader,
                circleLocationReferenceReader,
                polygonLocationReferenceReader,
                rectangleLocationReferenceReader,
                gridLocationReferenceReader,
                closedLineLocationReferenceReader);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy