require(["esri/rest/networks/support/Association"], (Association) => { /* code goes here */ });
import Association from "@arcgis/core/rest/networks/support/Association.js";
esri/rest/networks/support/Association
The utility network associations model connectivity, containment and structure relations between assets.
An Association
connects two network elements, the "From" and "To", and order of the association matter.
This class defines an association and its basic properties.
// Utility network service url
const networkServiceUrl = "https://myserver.esri.com/server/rest/services/NapervilleElectric/UtilityNetworkServer";
// Define the QueryAssociationsParameters
const queryAssociationsParameters = new QueryAssociationsParameters({
associationTypes: ["containment", "attachment", "junction-edge-from-connectivity"],
elements: [
{
networkSourceId: 2,
globalId: "{46B3FA19-2237-4D38-A7CF-AA34C3T40420}",
objectId: 44,
terminalId: 1,
assetGroupCode: 1,
assetTypeCode: 1
},
{
networkSourceId: 9,
globalId: "{321C0089-1165-42D9-K45B-ED91B1A40500}",
objectId: 45,
terminalId: 1,
assetGroupCode: 13,
assetTypeCode: 441
}
]
});
// Query associations, and assign the query result to a variable of type QueryAssociationsResult
const queryAssociationsResult = await queryAssociations(networkServiceUrl, queryAssociationsParameters);
// Print out the first association
console.log(queryAssociationsResult.associations[0]);
Constructors
-
Parameterproperties Objectoptional
See the properties for a list of all the properties that may be passed into the constructor.
Property Overview
Name | Type | Summary | Class |
---|---|---|---|
The type of association. | Association | ||
The name of the class. | Accessor | ||
Error code returned from the server for a failed associations query. | Association | ||
Message returned from the server for a failed associations query. | Association | ||
The from side network element of the association. | Association | ||
The synthesized polyline geometry created between the two network elements. | Association | ||
The globalId (UUID) of the association record, uniquely identifies this association row. | Association | ||
Specifies the content visibility on the map. | Association | ||
This double parameter of value of 0-1 indicates a percentage along the line of where the trace location is placed. | Association | ||
Indicates the type of association a feature or object participates in, the role the network feature plays in the association relationship, and any properties that are set. | Association | ||
The to side network element of the association. | Association |
Property Details
-
associationType
associationType String
-
The type of association. Associations that could be synthesized are
attachment
,connectivity
orcontainment
. There are also non-spatial associations that were introduced in schema version 4. Those will be added post 4.20
-
errorCode
errorCode Number
-
Error code returned from the server for a failed associations query.
-
errorMessage
errorMessage String
-
Message returned from the server for a failed associations query.
-
fromNetworkElement
fromNetworkElement NetworkElement
-
The from side network element of the association. Contains the globalid, network source, and terminal.
-
globalId
globalId String
-
The globalId (UUID) of the association record, uniquely identifies this association row.
-
isContentVisible
isContentVisible Boolean
-
Specifies the content visibility on the map.
-
percentAlong
percentAlong Number
-
This double parameter of value of 0-1 indicates a percentage along the line of where the trace location is placed. Applicable to line features only.
ExampleLine feature with objectId 100 with 2 midspan junctions (j1,j2). The line feature has 3 edge network elements F-j1, j1-j2 and j2-T. OID=100 F------j1------j2------T F-j1 (objectId=100, positionFrom=0, positionTo=0.33) j1-j2 (objectId=100, positionFrom=0.33, positionTo=0.66) j2-T (objectId=100, positionFrom=0.66, positionTo=1) When percentAlong is 0.5 (50%) the starting location will be placed on the middle edge (j1-j2) OID=100 F------j1---x--j2------T When percentAlong is 0.1 (10%) the starting location will be placed on the first edge (F-j1) OID=100 F-x----j1------j2------T
-
status
status Number
-
Indicates the type of association a feature or object participates in, the role the network feature plays in the association relationship, and any properties that are set.
-
toNetworkElement
toNetworkElement NetworkElement
-
The to side network element of the association. Contains the globalid, network source, and terminal.
Method Overview
Name | Return Type | Summary | Class |
---|---|---|---|
Adds one or more handles which are to be tied to the lifecycle of the object. | Accessor | ||
* | Creates a new instance of this class and initializes it with values from a JSON object generated from an ArcGIS product. | Association | |
Returns true if a named group of handles exist. | Accessor | ||
Removes a group of handles owned by the object. | Accessor | ||
Converts an instance of this class to its ArcGIS portal JSON representation. | Association |
Method Details
-
Inherited from Accessor
-
Adds one or more handles which are to be tied to the lifecycle of the object. The handles will be removed when the object is destroyed.
// Manually manage handles const handle = reactiveUtils.when( () => !view.updating, () => { wkidSelect.disabled = false; }, { once: true } ); this.addHandles(handle); // Destroy the object this.destroy();
ParametershandleOrHandles WatchHandle|WatchHandle[]Handles marked for removal once the object is destroyed.
groupKey *optionalKey identifying the group to which the handles should be added. All the handles in the group can later be removed with Accessor.removeHandles(). If no key is provided the handles are added to a default group.
-
Creates a new instance of this class and initializes it with values from a JSON object generated from an ArcGIS product. The object passed into the input
json
parameter often comes from a response to a query operation in the REST API or a toJSON() method from another ArcGIS product. See the Using fromJSON() topic in the Guide for details and examples of when and how to use this function.Parameterjson ObjectA JSON representation of the instance in the ArcGIS format. See the ArcGIS REST API documentation for examples of the structure of various input JSON objects.
ReturnsType Description * Returns a new instance of this class.
-
hasHandles
InheritedMethodhasHandles(groupKey){Boolean}
Inherited from Accessor -
Returns true if a named group of handles exist.
ParametergroupKey *optionalA group key.
ReturnsType Description Boolean Returns true
if a named group of handles exist.Example// Remove a named group of handles if they exist. if (obj.hasHandles("watch-view-updates")) { obj.removeHandles("watch-view-updates"); }
-
Inherited from Accessor
-
Removes a group of handles owned by the object.
ParametergroupKey *optionalA group key or an array or collection of group keys to remove.
Exampleobj.removeHandles(); // removes handles from default group obj.removeHandles("handle-group"); obj.removeHandles("other-handle-group");
-
toJSON
toJSON(){Object}
-
Converts an instance of this class to its ArcGIS portal JSON representation. See the Using fromJSON() guide topic for more information.
ReturnsType Description Object The ArcGIS portal JSON representation of an instance of this class.