本文整理汇总了Java中com.esri.ges.core.geoevent.FieldException类的典型用法代码示例。如果您正苦于以下问题:Java FieldException类的具体用法?Java FieldException怎么用?Java FieldException使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
FieldException类属于com.esri.ges.core.geoevent包,在下文中一共展示了FieldException类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: traverseFieldGroup
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
private String traverseFieldGroup(FieldDefinition parentFieldDef, StringBuilder sb, FieldGroup fg){
StringBuilder mine=new StringBuilder();
//System.out.println("**Start: "+ parentFieldDef.getName());
for (FieldDefinition fieldDef: parentFieldDef.getChildren()){
if(fieldDef.getType()==FieldType.Group){
//System.out.println("Found another Group:"+ fieldDef.getName());
try {
mine.append("<"+fieldDef.getName()+getAttributes(fieldDef,mine,fg.getFieldGroup(fieldDef.getName()))+">"+traverseFieldGroup(fieldDef,mine,fg.getFieldGroup(fieldDef.getName()))+"</"+fieldDef.getName()+">");
} catch (FieldException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}else{
//System.out.println("not a group:" + fieldDef.getName()+"="+fg.getField(fieldDef.getName())+ " toString: "+ fieldDef.toString());
if(fg.getField(fieldDef.getName())!=null){
if (fieldDef.getName().equals("#text"))
mine.append(fg.getField(fieldDef.getName()));
}
}
}
//System.out.println("**End: "+ parentFieldDef.getName());
return mine.toString();
}
开发者ID:Esri,项目名称:defense-solutions-proofs-of-concept,代码行数:27,代码来源:CoTAdapterOutbound.java
示例2: createLine2PtGeoevent
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
private GeoEvent createLine2PtGeoevent(GeoEvent event, MapGeometry outGeo, Date ts) throws MessagingException, FieldException
{
GeoEventCreator creator = messaging.createGeoEventCreator();
GeoEvent msg = creator.create(outDef, definition.getUri().toString());
for(FieldDefinition fd: event.getGeoEventDefinition().getFieldDefinitions())
{
if(fd.getTags().contains("GEOMETRY"))
{
msg.setGeometry(outGeo);
}
else
{
msg.setField(fd.getName(), event.getField(fd.getName()));
}
msg.setField("TIMESTAMP", ts);
}
return msg;
}
开发者ID:Esri,项目名称:defense-solutions-proofs-of-concept,代码行数:20,代码来源:Line2PtProcessor.java
示例3: convertGeoEventToCalculateParameters
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
private Collection<CalculateParamsWrapper> convertGeoEventToCalculateParameters(GeoEvent geoEvent) throws FieldException
{
Collection<CalculateParamsWrapper> wrappers = new ArrayList<CalculateParamsWrapper>();
List<FieldGroup> fieldGroups = geoEvent.getFieldGroups(0);
for(FieldGroup fg : fieldGroups)
{
// TODO: workaround. json adapter writes Boolean as string. As a result, the input which uses the same GED could not read Boolean fields.
// If optimize is null, set it to false.
boolean optimize = false;
if(fg.getField("optimize") != null)
optimize = (Boolean)fg.getField("optimize");
CalculateParamsWrapper wrapper = new CalculateParamsWrapper();
wrapper.setRouteName((String)fg.getField("routeName"));
wrapper.setOptimize(optimize);
wrapper.setStops((List<String>)fg.getFields("stops"));
wrappers.add(wrapper);
}
return wrappers;
}
开发者ID:Esri,项目名称:route-monitor-for-geoevent,代码行数:20,代码来源:RouteManagerImpl.java
示例4: getStopsSnapshot
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
private void getStopsSnapshot(GeoEvent geoevent, Map<String, DefaultStop> stopsSnapshot)
{
try
{
List<FieldGroup> geRoutes = geoevent.getFieldGroups("route");
for(FieldGroup fg : geRoutes)
{
List<String> geStops = (List<String>) fg.getFields("stops");
for(String stopname : geStops)
{
Stop stop = stopsManager.getStopByName(stopname);
if(stop != null)
{
DefaultStop dStop = new DefaultStop(stop);
stopsSnapshot.put(stopname, dStop);
}
}
}
}
catch (FieldException e)
{
LOG.error(e);
}
}
开发者ID:Esri,项目名称:route-monitor-for-geoevent,代码行数:26,代码来源:RouteProcessor.java
示例5: translate
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
@Override
public void translate(GeoEvent geoEvent, String[] data) throws FieldException
{
int i = 1;
geoEvent.setField(i++, toTime(data[1], null));
geoEvent.setField(i++, toPoint(data[2], data[4], "N".equals(data[3]), "E".equals(data[5])));
geoEvent.setField(i++, convertToShort(data[6]));
geoEvent.setField(i++, convertToShort(data[7]));
geoEvent.setField(i++, convertToDouble(data[8]));
geoEvent.setField(i++, convertToDouble(data[9]));
geoEvent.setField(i++, data[10]);
geoEvent.setField(i++, convertToDouble(data[11]));
geoEvent.setField(i++, data[12]);
geoEvent.setField(i++, data[13]);
geoEvent.setField(i++, data[14].split("\\*")[0]);
}
开发者ID:Esri,项目名称:nmea-for-geoevent,代码行数:17,代码来源:NMEAGPGGAMessageTranslator.java
示例6: translate
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
@Override
public void translate(GeoEvent geoEvent, String[] data) throws FieldException
{
int i = 1;
geoEvent.setField(i++, toTime(data[1], data[9]));
geoEvent.setField(i++, toPoint(data[3], data[5], "N".equals(data[4]), "E".equals(data[6])));
geoEvent.setField(i++, data[2]);
geoEvent.setField(i++, convertToDouble(data[7]));
geoEvent.setField(i++, convertToDouble(data[8]));
geoEvent.setField(i++, convertToDouble(data[10]));
if(data.length==12)
geoEvent.setField(i++, data[11].split("\\*")[0]);
else
{
geoEvent.setField(i++, data[11]);
geoEvent.setField(i++, data[12].split("\\*")[0]);
}
}
开发者ID:Esri,项目名称:nmea-for-geoevent,代码行数:20,代码来源:NMEAGPRMCMessageTranslator.java
示例7: processVertices
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
private void processVertices(GeoEvent ge, Polyline polyln, double distTotal, long start, long end, LinearUnit lu, Boolean projected) throws MessagingException, FieldException
{
int count = polyln.getPointCount();
double currentDist = 0;
long currentTime = start;
long totalTime = end - start;
Geometry outGeo = null;
Point projGeo = null;
Point lastPoint = null;
for(int i = 0; i < count; ++i)
{
projGeo = polyln.getPoint(i);
if(i!=0)
{
Polyline seg = new Polyline();
seg.startPath(lastPoint);
seg.lineTo(projGeo);
double segDist = GeometryEngine.geodesicLength(seg, processSr, lu);
currentDist += segDist;
double percent = currentDist/distTotal;
currentTime = (long) Math.floor((start + (totalTime*percent)));
}
if(projected)
{
outGeo = GeometryEngine.project(projGeo, processSr, outSr);
}
else
{
outGeo=projGeo;
}
MapGeometry outMapGeo = new MapGeometry(outGeo, outSr);
double minutesFromStart = (currentTime - start)/60000;
GeoEvent msg = createVertexGeoevent(ge, outMapGeo, currentDist, currentTime, minutesFromStart, i);
send(msg);
lastPoint = projGeo;
}
}
开发者ID:Esri,项目名称:defense-solutions-proofs-of-concept,代码行数:40,代码来源:IncrementalPointProcessor.java
示例8: createVertexGeoevent
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
private GeoEvent createVertexGeoevent(GeoEvent event, MapGeometry outGeo, double dist, long time, double timeFromStartMinutes, Integer increment) throws MessagingException, FieldException
{
Date ts = new Date(time);
Double distOnLine = dist;
GeoEvent msg = geoEventCreator.create(outDef, definition.getUri().toString());
for(FieldDefinition fd: event.getGeoEventDefinition().getFieldDefinitions())
{
if(fd.getTags().contains("GEOMETRY"))
{
msg.setGeometry(outGeo);
}
else if(fd.getTags().contains("TRACK_ID"))
{
String trackid = event.getTrackId() + "_" + increment.toString();
msg.setField("TRACK_ID", trackid);
}
else
{
msg.setField(fd.getName(), event.getField(fd.getName()));
}
}
msg.setField("TIMESTAMP", ts);
msg.setField("TIME_FROM_START", timeFromStartMinutes);
msg.setField("DISTANCE_ON_LINE", distOnLine);
msg.setProperty(GeoEventPropertyName.TYPE, "event");
msg.setProperty(GeoEventPropertyName.OWNER_ID, getId());
msg.setProperty(GeoEventPropertyName.OWNER_URI,
definition.getUri());
return msg;
}
开发者ID:Esri,项目名称:defense-solutions-proofs-of-concept,代码行数:32,代码来源:IncrementalPointProcessor.java
示例9: createIncrementalPointGeoevent
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
private GeoEvent createIncrementalPointGeoevent(GeoEvent event, MapGeometry outGeo, Date timestart, Integer increment) throws MessagingException, FieldException
{
long multiplier = increment+1;
long timeFromStart = timeInterval*multiplier;
long incrementTime = timestart.getTime() + (timeFromStart);
double timeFromStartMinutes = timeFromStart/60000.0;
Double distOnLine = distInterval*multiplier;
Date ts = new Date(incrementTime);
GeoEvent msg = geoEventCreator.create(outDef, definition.getUri().toString());
for(FieldDefinition fd: event.getGeoEventDefinition().getFieldDefinitions())
{
if(fd.getTags().contains("GEOMETRY"))
{
msg.setGeometry(outGeo);
}
else if(fd.getTags().contains("TRACK_ID"))
{
String trackid = event.getTrackId() + "_" + increment.toString();
msg.setField("TRACK_ID", trackid);
}
else
{
msg.setField(fd.getName(), event.getField(fd.getName()));
}
}
msg.setField("TIMESTAMP", ts);
msg.setField("TIME_FROM_START", timeFromStartMinutes);
msg.setField("DISTANCE_ON_LINE", distOnLine);
msg.setProperty(GeoEventPropertyName.TYPE, "event");
msg.setProperty(GeoEventPropertyName.OWNER_ID, getId());
msg.setProperty(GeoEventPropertyName.OWNER_URI,
definition.getUri());
return msg;
}
开发者ID:Esri,项目名称:defense-solutions-proofs-of-concept,代码行数:36,代码来源:IncrementalPointProcessor.java
示例10: populateGeoEvent
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
/**
* The populateGeoEvent method does the following things:
* <ol>
* <li>Creates a copy of the incoming GeoEvent using the {@link GeoEventCreator}.</li>
* <li>Check's the GeoEvent's Geometry (it make sure it exists) and creates an extent from it.</li>
* <li>Adds the fields <code>MinX</code>, <code>MinY</code>, <code>MaxX</code>, <code>MaxY</code></li> to the GeoEvent using the Geometry's extent.
* <li>Optionally, adds the Geometry's extent center point as well.</li>
* </ol>
*
* @param geoEvent The incoming GeoEvent to be augmented
* @param edOut the augmented GeoEventDefinition
* @return the augmented GeoEvent
*
* @throws MessagingException if the incoming GeoEvent cannot be augmented.
*
* @see GeoEvent
* @see GeoEventDefinition
*/
private GeoEvent populateGeoEvent(GeoEvent geoEvent, GeoEventDefinition edOut) throws MessagingException
{
GeoEvent outGeoEvent = geoEventCreator.create(edOut.getGuid(), new Object[] { geoEvent.getAllFields(), (addCenterPoint) ? new Object[5] : new Object[4] });
outGeoEvent.setProperty(GeoEventPropertyName.TYPE, geoEvent.getProperty(GeoEventPropertyName.TYPE));
outGeoEvent.setProperty(GeoEventPropertyName.OWNER_ID, geoEvent.getProperty(GeoEventPropertyName.OWNER_ID));
outGeoEvent.setProperty(GeoEventPropertyName.OWNER_URI, geoEvent.getProperty(GeoEventPropertyName.OWNER_URI));
MapGeometry geometry = geoEvent.getGeometry();
if (geometry != null)
{
Envelope2D boundingBox = new Envelope2D();
geometry.getGeometry().queryEnvelope2D(boundingBox);
try
{
outGeoEvent.setField("MinX", boundingBox.xmin);
outGeoEvent.setField("MinY", boundingBox.ymin);
outGeoEvent.setField("MaxX", boundingBox.xmax);
outGeoEvent.setField("MaxY", boundingBox.ymax);
if (addCenterPoint)
{
Point centerPt = new Point(boundingBox.getCenter());
outGeoEvent.setField("CenterPoint", new MapGeometry(centerPt, geometry.getSpatialReference()));
}
}
catch (FieldException error)
{
LOGGER.error("ERROR_SETTING_EXTENT_FIELDS", error.getMessage());
LOGGER.info(error.getMessage(), error);
}
}
else
LOGGER.debug("GEOMETRY_EMPTY_MSG");
return outGeoEvent;
}
开发者ID:Esri,项目名称:extent-enricher-for-geoevent,代码行数:54,代码来源:GeometryExtentEnricher.java
示例11: processGeoEvent
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
private GeoEvent processGeoEvent(GeoEvent geoEvent) throws MalformedURLException, JSONException, ConfigurationException, GeoEventDefinitionManagerException, FieldException
{
if (geoEvent.getTrackId() == null || geoEvent.getGeometry() == null)
{
LOGGER.warn("NULL_ERROR: TrackID and/or Geometry is NULL.");
return null;
}
Geometry geom = geoEvent.getGeometry().getGeometry();
if (geom.isEmpty())
return geoEvent;
if (!Geometry.isPoint(geom.getType().value()))
return geoEvent;
if (Geometry.isMultiVertex(geom.getType().value()))
return geoEvent;
Point point = (Point) geom;
double lon = point.getX();
double lat = point.getY();
int wkid = geoEvent.getGeometry().getSpatialReference().getID();
// fetch nearest street address (reverse geocode) via ArcGIS Online World GeoCode service
// The response format. Values: html | json | kmz
// The default response format is html.
agolSearchFormat = "json";
URL agolURL = new URL("http://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer/reverseGeocode?location=" + Double.toString(lon) + "," + Double.toString(lat) + "&distance=" + Integer.toString(agolSearchDistance) + "&outSR=" + Integer.toString(wkid) + "&f=" + agolSearchFormat);
String addressJson = getReverseGeocode(agolURL);
GeoEvent agolStreetAddress = augmentGeoEventWithAddress(geoEvent, addressJson);
return agolStreetAddress;
}
开发者ID:Esri,项目名称:reverse-geocoder-for-geoevent,代码行数:34,代码来源:ReverseGeocoderProcessor.java
示例12: clearPlan
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
@Override
public GeoEvent clearPlan(GeoEvent geoEvent, String agsConnectionName, String path, String featureService, String stopLayer, String routeLayer, String vehicleLayer, String geofenceLayer, String alertLayer)
{
stopsManager.clearAllStops(agsConnectionName, path, featureService, stopLayer, geofenceLayer);
routeManager.clearAllRouteFeatures(agsConnectionName, path, featureService, routeLayer);
vehiclesManager.clearAllVehicleFeatures(agsConnectionName, path, featureService, vehicleLayer);
alertsManager.clearAllAlertFeatures(agsConnectionName, path, featureService, alertLayer);
autoArrivalDepartureManager.clearIncidents();
GeoEvent newGeoEvent = (GeoEvent) geoEvent.clone(null);
try
{
newGeoEvent.setField(STATUS_FIELD, PlanStatus.Successful.toString());
}
catch (FieldException e)
{
log.error(e.getStackTrace());
try
{
newGeoEvent.setField(STATUS_FIELD, PlanStatus.Failed.toString());
}
catch (FieldException e1)
{
log.error(e1.getStackTrace());
}
}
return newGeoEvent;
}
开发者ID:Esri,项目名称:route-monitor-for-geoevent,代码行数:29,代码来源:PlanManagerImpl.java
示例13: translate
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
@Override
public void translate(GeoEvent geoEvent, String[] data) throws FieldException
{
int i = 1;
geoEvent.setField(i++, toTime(data[5], null));
geoEvent.setField(i++, toPoint(data[1], data[3], "N".equals(data[2]), "E".equals(data[4])));
geoEvent.setField(i++, data[6].split("\\*")[0]);
}
开发者ID:Esri,项目名称:nmea-for-geoevent,代码行数:9,代码来源:NMEAGPGLLMessageTranslator.java
示例14: readIDField
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
public void readIDField(ByteBuffer buf, GeoEvent geoEvent, int i) throws MessagingException, FieldException
{
//Check if there is more data
int rm = buf.remaining();
if (buf.remaining() > 8)
{
buf.mark();
readString(buf, 1); //Read out semi-colon ;
String idName = readString(buf, 3); //Read out ID=
if (idName.equals("ID=") == true)
{
//read until ';' to get value of the ID
String id = "";
while(true)
{
String data = readString(buf, 1);
if (data.equals(";") == false)
{
id += data;
}
else
{
break;
}
}
geoEvent.setField(i++, id);
}
else //no ID= field
{
buf.reset(); //set the buf position back to the marked position
}
}
}
开发者ID:Esri,项目名称:trimble-for-geoevent,代码行数:34,代码来源:TAIPMessageTranslator.java
示例15: translate
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
@Override
protected void translate(String trackId, ByteBuffer buf, GeoEvent geoEvent) throws MessagingException, FieldException
{
//CP Compact Position Solution
//AAAAABBBCCCCDDDDEEEEFG
//Total number of characters is 22
int i = 0;
geoEvent.setField(i++, trackId);
geoEvent.setField(i++, toTime(convertToInteger(readString(buf, 5)), 0)); //GPS Time of day 5 Sec AAAAA
Integer y = convertToInteger(readString(buf, 7).replace('+', ' ').trim()); //Latitude 7 Deg BBBCCCC
Integer x = convertToInteger(readString(buf, 8).replace('+', ' ').trim()); //Longitude 8 Deg DDDDEEEE
if (x != null && y != null)
{
MapGeometry geometry = new MapGeometry(new Point(x * 0.0001, y * 0.00001), SpatialReference.create(4326));
geoEvent.setField(i++, GeometryUtil.toJson(geometry));
}
geoEvent.setField(i++, convertToShort(readString(buf, 1))); //Source 1 n/a F
/*
0 = 2D GPS
1 = 3D GPS
2 = 2D DGPS
3 = 3D DGPS
6 = DR
8 = Degraded DR
9 = Unknown
*/
geoEvent.setField(i++, convertToShort(readString(buf, 1))); //Age of Data Indicator 1 n/a G
/*
2 = Fresh, <10 sec
1 = Old, >10 sec
0 = Not available
*/
readIDField(buf, geoEvent, i);
}
开发者ID:Esri,项目名称:trimble-for-geoevent,代码行数:35,代码来源:TAIP0xF1MessageTranslator.java
示例16: translate
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
@Override
protected void translate(String trackId, ByteBuffer buf, GeoEvent geoEvent) throws MessagingException, FieldException
{
//PV Position/Velocity Solution
// AAAAABBBCCCCCDDDDEEEEEFFFGGGHI
//Total 30
//>RPV15714+3739438-1220384601512612;ID=1234;*7F<
//>RPV06624-3189567+1160078800027302;ID=AAFKF;*39<
int i = 0;
geoEvent.setField(i++, trackId);
geoEvent.setField(i++, toTime(convertToInteger(readString(buf, 5)), 0)); //AAAAA GPS Time of day 5 Sec AAAAA
Integer y = convertToInteger(readString(buf, 8).replace('+', ' ').trim()); //Latitude 8 Deg BBB.CCCCC
Integer x = convertToInteger(readString(buf, 9).replace('+', ' ').trim()); //Longitude 9 Deg DDDD.EEEEE
if (x != null && y != null)
{
MapGeometry geometry = new MapGeometry(new Point(x * 0.00001, y * 0.00001), SpatialReference.create(4326));
geoEvent.setField(i++, GeometryUtil.toJson(geometry));
}
geoEvent.setField(i++, convertToShort(readString(buf, 3))); //Speed 3 MPH FFF
geoEvent.setField(i++, convertToShort(readString(buf, 3))); //Heading 3 Deg GGG
geoEvent.setField(i++, convertToShort(readString(buf, 1))); //Source 1 n/a I (0 = 2D GPS)
/*
(1 = 3D GPS)
(2 = 2D DGPS)
(3 = 3D DGPS)
(6 = DR)
(8 = Degraded DR)
(9 = Unknown)
*/
geoEvent.setField(i++, convertToShort(readString(buf, 1))); //Age of Data Indicator 1 n/a J
/*
(2 = Fresh, <10 sec)
(1 = Old, ≥10 sec)
(0 = Not available)
*/
readIDField(buf, geoEvent, i);
}
开发者ID:Esri,项目名称:trimble-for-geoevent,代码行数:40,代码来源:TAIP0xF0MessageTranslator.java
示例17: process
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
@Override
public GeoEvent process(GeoEvent geoEvent) throws Exception
{
GeoEvent eventOut = null;
if (geoEvent != null && geoEventDefinitionManager != null)
{
Object result = calculate(geoEvent);
switch (resultDestination)
{
case NEW_FIELD:
{
GeoEventDefinition edOut = lookup(geoEvent.getGeoEventDefinition());
GeoEvent geoEventOut = geoEventCreator.create(edOut.getGuid(), new Object[] { geoEvent.getAllFields(), result });
geoEventOut.setProperty(GeoEventPropertyName.TYPE, "message");
geoEventOut.setProperty(GeoEventPropertyName.OWNER_ID, getId());
geoEventOut.setProperty(GeoEventPropertyName.OWNER_URI, definition.getUri());
for (Map.Entry<GeoEventPropertyName, Object> property : geoEvent.getProperties())
if (!geoEventOut.hasProperty(property.getKey()))
geoEventOut.setProperty(property.getKey(), property.getValue());
eventOut = geoEventOut;
break;
}
case EXISTING_FIELD:
{
try
{
geoEvent.setField(fieldName, result);
eventOut = geoEvent;
}
catch (FieldException error)
{
LOGGER.error("SET_FIELD_ERROR", (result != null ? result.toString() : "null"), fieldName, geoEvent.getGeoEventDefinition().getName(), error.getMessage());
}
break;
}
}
}
return eventOut;
}
开发者ID:Esri,项目名称:solutions-geoevent-java,代码行数:41,代码来源:CacheAwareFieldCalculator.java
示例18: processIncrements
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
private void processIncrements(GeoEvent ge, Polyline polyln, Point startPt, double distTotal, long start, long end, Boolean projected) throws MessagingException, FieldException
{
int numHops = 0;
long timeTotal = end - start;
Date timeStart = new Date(start);
if(usingTime)
{
distInterval = distTotal/(timeTotal/timeInterval);
numHops = (int) Math.floor(distTotal/distInterval);
}
else
{
numHops = (int) Math.floor(distTotal/distInterval);
timeInterval = timeTotal/numHops;
}
Integer ptIndex = 0;
GeoEvent msg = null;
//Geometry outGeo = null;
//Geometry projGeo = null;
for(int i = 0; i < numHops; ++i)
{
IncrementPoint ip = this.getNextPoint(polyln, startPt, ptIndex, distInterval);
Geometry outGeo = null;
Geometry projGeo = ip.getPoint();
if(projected)
{
outGeo = GeometryEngine.project(projGeo, processSr, outSr);
}
else
{
outGeo=projGeo;
}
MapGeometry outMapGeo = new MapGeometry(outGeo, outSr);
msg = createIncrementalPointGeoevent(ge, outMapGeo, timeStart, i);
send(msg);
startPt = (Point)projGeo;
ptIndex = ip.getNextVertexIndex();
}
}
开发者ID:Esri,项目名称:solutions-geoevent-java,代码行数:41,代码来源:IncrementalPointProcessor.java
示例19: traverseBranch
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
@SuppressWarnings("incomplete-switch")
private void traverseBranch(Node node, FieldGroup fieldGroup, FieldDefinition fieldDefinition) throws FieldException
{
if( node == null ) return;
//System.out.println("Examining node named \""+node.getNodeName()+"\"");
FieldType fieldType = fieldDefinition.getType();
switch( fieldType )
{
case Group:
FieldGroup childFieldGroup = fieldGroup.createFieldGroup(fieldDefinition.getName());
fieldGroup.setField( fieldDefinition.getName(), childFieldGroup);
for( FieldDefinition childFieldDefinition : fieldDefinition.getChildren() )
{
String childName = childFieldDefinition.getName();
List<Node> childNodes = findChildNodes( node, childName );
if( childNodes.size() > 0 )
{
for( Node childNode : childNodes )
traverseBranch( childNode, childFieldGroup, childFieldDefinition );
}
else
traverseBranch( node, childFieldGroup, childFieldDefinition );
}
break;
case String:
String value = getAttribute( node, fieldDefinition.getName() );
if( value != null )
fieldGroup.setField(fieldDefinition.getName(), value);
break;
case Integer:
value = getAttribute( node, fieldDefinition.getName() );
if( value != null )
fieldGroup.setField(fieldDefinition.getName(), new Integer(value));
break;
case Double:
value = getAttribute( node, fieldDefinition.getName() );
if( value != null )
fieldGroup.setField(fieldDefinition.getName(), new Double(value));
break;
case Boolean:
value = getAttribute( node, fieldDefinition.getName() );
if( value != null )
fieldGroup.setField(fieldDefinition.getName(), new Boolean(value));
break;
case Date:
value = getAttribute( node, fieldDefinition.getName() );
if( value != null )
{
Date date = new Date();
try
{
date = parseCoTDate(value);
}catch(Exception ex)
{
}
fieldGroup.setField(fieldDefinition.getName(), date);
}
break;
case Geometry:
Geometry geometry = createGeometry(node);
if( geometry != null )
fieldGroup.setField(fieldDefinition.getName(), geometry.toJson());
break;
case Long:
value = getAttribute( node, fieldDefinition.getName() );
if( value != null )
fieldGroup.setField(fieldDefinition.getName(), new Long(value));
break;
case Short:
value = getAttribute( node, fieldDefinition.getName() );
if( value != null )
fieldGroup.setField(fieldDefinition.getName(), new Integer(value));
break;
}
}
开发者ID:Esri,项目名称:defense-solutions-proofs-of-concept,代码行数:76,代码来源:CoTAdapter.java
示例20: traverseBranch
import com.esri.ges.core.geoevent.FieldException; //导入依赖的package包/类
@SuppressWarnings("incomplete-switch")
private void traverseBranch(Node node, FieldGroup fieldGroup, FieldDefinition fieldDefinition) throws FieldException
{
if( node == null ) return;
//System.out.println("Examining node named \""+node.getNodeName()+"\"");
FieldType fieldType = fieldDefinition.getType();
switch( fieldType )
{
case Group:
FieldGroup childFieldGroup = fieldGroup.createFieldGroup(fieldDefinition.getName());
fieldGroup.setField( fieldDefinition.getName(), childFieldGroup);
for( FieldDefinition childFieldDefinition : fieldDefinition.getChildren() )
{
String childName = childFieldDefinition.getName();
List<Node> childNodes = findChildNodes( node, childName );
if( childNodes.size() > 0 )
{
for( Node childNode : childNodes )
traverseBranch( childNode, childFieldGroup, childFieldDefinition );
}
else
traverseBranch( node, childFieldGroup, childFieldDefinition );
}
break;
case String:
String value = getAttribute( node, fieldDefinition.getName() );
if( value != null )
fieldGroup.setField(fieldDefinition.getName(), value);
break;
case Integer:
value = getAttribute( node, fieldDefinition.getName() );
if( value != null )
fieldGroup.setField(fieldDefinition.getName(), new Integer(value));
break;
case Double:
value = getAttribute( node, fieldDefinition.getName() );
if( value != null )
fieldGroup.setField(fieldDefinition.getName(), new Double(value));
break;
case Boolean:
value = getAttribute( node, fieldDefinition.getName() );
if( value != null )
fieldGroup.setField(fieldDefinition.getName(), new Boolean(value));
break;
case Date:
value = getAttribute( node, fieldDefinition.getName() );
if( value != null )
{
Date date = new Date();
try
{
date = parseCoTDate(value);
}catch(Exception ex)
{
}
fieldGroup.setField(fieldDefinition.getName(), date);
}
break;
case Geometry:
MapGeometry geometry = createGeometry(node);
if( geometry != null )
fieldGroup.setField(fieldDefinition.getName(), geometry);
break;
case Long:
value = getAttribute( node, fieldDefinition.getName() );
if( value != null )
fieldGroup.setField(fieldDefinition.getName(), new Long(value));
break;
case Short:
value = getAttribute( node, fieldDefinition.getName() );
if( value != null )
fieldGroup.setField(fieldDefinition.getName(), new Integer(value));
break;
}
}
开发者ID:Esri,项目名称:defense-solutions-proofs-of-concept,代码行数:76,代码来源:CoTAdapter.java
注:本文中的com.esri.ges.core.geoevent.FieldException类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论