Package com.sun.syndication.feed.module.georss

Examples of com.sun.syndication.feed.module.georss.GeoRSSModule


    return null;
  }
 
  protected List<PointMarker> createPointMarkers(SyndEntry entry, SyndFeed fromFeed, FeedSubscription fromSubscription){
    List<PointMarker> pm = new ArrayList<PointMarker>();
    GeoRSSModule geoRSSModule = GeoRSSUtils.getGeoRSS(entry);
    if(geoRSSModule != null){
      double lat = geoRSSModule.getPosition().getLatitude();
      double lng = geoRSSModule.getPosition().getLongitude();
      PointMarker p = new PointMarker();
      p.setNotes("lat/lon: " + lat+","+lng);
      p.setPoint(lng,lat);
      pm.add(p);
    }
View Full Code Here


            }

            Channel c = (Channel) feed;
            List<Item> items = (List<Item>) c.getItems();
            for (Item item : items) {
              GeoRSSModule geoRSSModule = (GeoRSSModule) item
                  .getModule(GeoRSSModule.GEORSS_GEORSS_URI);
              if (geoRSSModule == null)
                geoRSSModule = (GeoRSSModule) item
                    .getModule(GeoRSSModule.GEORSS_GML_URI);
              if (geoRSSModule == null)
                geoRSSModule = (GeoRSSModule) item
                    .getModule(GeoRSSModule.GEORSS_W3CGEO_URI);
              // if location from the item cannot be retrieved
              // then discard it
              if (geoRSSModule != null && geoRSSModule.getPosition() != null) {
                String filename = "";
                if (item.getGuid() != null)
                  filename = cleanStr(item.getGuid().getValue()) + ".txt";
                else
                  filename = cleanStr(item.getLink()) + ".txt";

                GeoRSSData data = new GeoRSSData(filename, new LatLon(
                    geoRSSModule.getPosition().getLatitude(), geoRSSModule
                        .getPosition().getLongitude()));
                if (this.tree.insert(data)) {
                  data.saveToFile(item, geoRSSModule, georssStoragePath);
                } else {
                  System.out.println("[INFO] Unable to store data at location "
View Full Code Here

        entry.setContents(contents);

        // Add the georss info
        ReferencedEnvelope refenv = evt.getAffectedFeatures().getBounds();

        GeoRSSModule geoInfo = new GMLModuleImpl();
        double minLat = refenv.getMinimum(0),
               minLong = refenv.getMinimum(1),
               maxLat = refenv.getMaximum(0),
               maxLong = refenv.getMaximum(1);
        Envelope bounds = new Envelope(minLat, minLong, maxLat, maxLong);
        geoInfo.setGeometry(bounds);
        List modules = entry.getModules();
        modules.add(geoInfo);
        entry.setModules(modules);

        return entry;
View Full Code Here

            double maxLon = Double.valueOf(parts[3]);
            myBBox = new com.vividsolutions.jts.geom.Envelope(minLon, maxLon, minLat,maxLat);
        }

        public boolean pass(SyndEntry entry){
            GeoRSSModule geo = GeoRSSUtils.getGeoRSS(entry);
            if (geo != null && myBBox != null && geo.getGeometry() instanceof Envelope){
                Envelope env = (Envelope) geo.getGeometry();
                com.vividsolutions.jts.geom.Envelope box =
                    new com.vividsolutions.jts.geom.Envelope( env.getMinLongitude(), env.getMaxLongitude(),
                        env.getMinLatitude(), env.getMaxLatitude() );
                return myBBox.intersects( box );
            }
View Full Code Here

            }

            Channel c = (Channel) feed;
            List<Item> items = (List<Item>) c.getItems();
            for (Item item : items) {
              GeoRSSModule geoRSSModule = (GeoRSSModule) item
                  .getModule(GeoRSSModule.GEORSS_GEORSS_URI);
              if (geoRSSModule == null)
                geoRSSModule = (GeoRSSModule) item
                    .getModule(GeoRSSModule.GEORSS_GML_URI);
              if (geoRSSModule == null)
                geoRSSModule = (GeoRSSModule) item
                    .getModule(GeoRSSModule.GEORSS_W3CGEO_URI);
              // if location from the item cannot be retrieved
              // then discard it
              if (geoRSSModule != null && geoRSSModule.getPosition() != null) {
                String filename = "";
                if (item.getGuid() != null)
                  filename = cleanStr(item.getGuid().getValue()) + ".txt";
                else
                  filename = cleanStr(item.getLink()) + ".txt";

                GeoRSSData data = new GeoRSSData(filename, new LatLon(
                    geoRSSModule.getPosition().getLatitude(), geoRSSModule
                        .getPosition().getLongitude()));
                if (this.tree.insert(data)) {
                  data.saveToFile(item, geoRSSModule, georssStoragePath);
                } else {
                  System.out.println("[INFO] Unable to store data at location "
View Full Code Here

    if (!duplicateSources.isEmpty() && (null == doc.getUpdateId())) { // (can't duplicate updating document)
      doc.setDuplicateFrom(duplicateSources.getFirst());
    }
   
    //GeoRSS
    GeoRSSModule geoRSSModule = GeoRSSUtils.getGeoRSS(entry); //currently does not handle <georss:circle>
    if (null != geoRSSModule)
    {
      if (null != geoRSSModule.getPosition())
      {
        double lat = geoRSSModule.getPosition().getLatitude();
        double lon = geoRSSModule.getPosition().getLongitude();
        GeoPojo gp = new GeoPojo();
        gp.lat = lat;
        gp.lon = lon;
        doc.setDocGeo(gp);
      }
      if (null != geoRSSModule.getGeometry())
      {
        AbstractGeometry ag = geoRSSModule.getGeometry();
        if(ag.getClass().equals(new LineString().getClass()))
        { //<georss:line>
          LineString ls = ((LineString)geoRSSModule.getGeometry());
         
          double latAvg = 0.0;
          double lonAvg = 0.0;
          int length = ls.getPositionList().size();
          for (int i = 0; i < length; i ++)
          {
            latAvg += ls.getPositionList().getLatitude(i);
            lonAvg += ls.getPositionList().getLongitude(i);
          }
          latAvg = latAvg/length;
          lonAvg = lonAvg/length;
          GeoPojo gp = new GeoPojo();
          gp.lat = latAvg;
          gp.lon = lonAvg;
          doc.setDocGeo(gp);
        }
        else if (ag.getClass().equals(new Polygon().getClass())) //<georss:polygon>
        {
          Polygon poly = ((Polygon)geoRSSModule.getGeometry());
          AbstractRing ar = poly.getExterior();
          LinearRing lr = (LinearRing)ar;

          double latAvg = 0.0;
          double lonAvg = 0.0;
          int length = lr.getPositionList().size();
          for (int i = 0; i < length; i ++)
          {
            latAvg += lr.getPositionList().getLatitude(i);
            lonAvg += lr.getPositionList().getLongitude(i);
          }
          latAvg = latAvg/length;
          lonAvg = lonAvg/length;
          GeoPojo gp = new GeoPojo();
          gp.lat = latAvg;
          gp.lon = lonAvg;
          doc.setDocGeo(gp);
        }
        else if(ag.getClass().equals(new Envelope().getClass()))
        { //<georss:box>
          Envelope env = ((Envelope)geoRSSModule.getGeometry());
         
          double latAvg = (env.getMaxLatitude()+env.getMinLatitude())/2;
          double lonAvg = (env.getMaxLongitude()+env.getMinLongitude())/2;

          GeoPojo gp = new GeoPojo();
View Full Code Here

            }

            Channel c = (Channel) feed;
            List<Item> items = (List<Item>) c.getItems();
            for (Item item : items) {
              GeoRSSModule geoRSSModule = (GeoRSSModule) item
                  .getModule(GeoRSSModule.GEORSS_GEORSS_URI);
              if (geoRSSModule == null)
                geoRSSModule = (GeoRSSModule) item
                    .getModule(GeoRSSModule.GEORSS_GML_URI);
              if (geoRSSModule == null)
                geoRSSModule = (GeoRSSModule) item
                    .getModule(GeoRSSModule.GEORSS_W3CGEO_URI);
              // if location from the item cannot be retrieved
              // then discard it
              if (geoRSSModule != null && geoRSSModule.getPosition() != null) {
                String filename = "";
                if (item.getGuid() != null)
                  filename = cleanStr(item.getGuid().getValue()) + ".txt";
                else
                  filename = cleanStr(item.getLink()) + ".txt";

                GeoRSSData data = new GeoRSSData(filename, new DirectPosition2D(
                    geoRSSModule.getPosition().getLongitude(),
                    geoRSSModule.getPosition().getLatitude()));
                if (this.tree.insert(data)) {
                  data.saveToFile(item, geoRSSModule, georssStoragePath);
                } else {
                  System.out.println("[INFO] Unable to store data at location "
                      + data.getLatLon().y + ", "
View Full Code Here

            }

            Channel c = (Channel) feed;
            List<Item> items = (List<Item>) c.getItems();
            for (Item item : items) {
              GeoRSSModule geoRSSModule = (GeoRSSModule) item
                  .getModule(GeoRSSModule.GEORSS_GEORSS_URI);
              if (geoRSSModule == null)
                geoRSSModule = (GeoRSSModule) item
                    .getModule(GeoRSSModule.GEORSS_GML_URI);
              if (geoRSSModule == null)
                geoRSSModule = (GeoRSSModule) item
                    .getModule(GeoRSSModule.GEORSS_W3CGEO_URI);
              // if location from the item cannot be retrieved
              // then discard it
              if (geoRSSModule != null && geoRSSModule.getPosition() != null) {
                String filename = "";
                if (item.getGuid() != null)
                  filename = cleanStr(item.getGuid().getValue()) + ".txt";
                else
                  filename = cleanStr(item.getLink()) + ".txt";

                GeoRSSData data = new GeoRSSData(filename, new LatLon(
                    geoRSSModule.getPosition().getLatitude(), geoRSSModule
                        .getPosition().getLongitude()));
                if (this.tree.insert(data)) {
                  data.saveToFile(item, geoRSSModule, georssStoragePath);
                } else {
                  System.out.println("[INFO] Unable to store data at location "
View Full Code Here

TOP

Related Classes of com.sun.syndication.feed.module.georss.GeoRSSModule

Copyright © 2018 www.massapicom. 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.