ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Core.Data.UtilityNetwork.Telecom Namespace / UnitIdentifier Class
Members Example

In This Topic
    UnitIdentifier Class
    In This Topic
    Specifies an identifier for a container or its contents as defined by the UnitRange in the telecom domain network.
    Object Model
    UnitIdentifier ClassNetworkSource Class
    Syntax
    Public NotInheritable Class UnitIdentifier 
    public sealed class UnitIdentifier 
    Example
    Query the contents of equipment containers in the utility network
    await QueuedTask.Run(() =>
    {
      using (UnitIdentifierManager unitIdentifierManager = utilityNetwork.GetUnitIdentifierManager())
      {
        var networkSource = utilityNetwork.GetDefinition().GetNetworkSource("TelecomDevice");
    
        // Container to query.
        UnitIdentifier containerUnitId = new UnitIdentifier(networkSource, globalID);
    
        // Query the unit identifiers in the container
        IReadOnlyList<UnitQueryResult> unitQueryResults = unitIdentifierManager.Query(new List<UnitIdentifier> { containerUnitId });
    
        // Iterate through the query results
        foreach (UnitQueryResult unitQueryResult in unitQueryResults)
        {
          UnitIdentifier unitIdentifier = unitQueryResult.Container;
          IReadOnlyList<UnitRange> unitsInAContainer = unitQueryResult.UnitRanges;
    
          // Iterate through the unit ranges (contents) in the container
          foreach (UnitRange unitRange in unitsInAContainer)
          {
            UnitIdentifier contentUnitId = unitRange.Content;
            bool isContentGap = unitRange.IsGap; // True if the content is a gap (empty space reserved for installing a larger piece of equipment).
            short? firstUnit = unitRange.FirstUnit;
            short? lastUnit = unitRange.LastUnit;
          }
        }
      }
    
    });
    Reserve a gap in an equipment container in the utility network
    await QueuedTask.Run(() =>
    {
      using (UnitIdentifierManager unitIdentifierManager = utilityNetwork.GetUnitIdentifierManager())
      {
        var networkSource = utilityNetwork.GetDefinition().GetNetworkSource("TelecomDevice");
        UnitIdentifier containerUnitIdentifier = new UnitIdentifier(networkSource, globalID);
    
        // Reserve a gap in the container for units 2 through 5.
        unitIdentifierManager.ReserveUnitIDs(containerUnitIdentifier, 2, 5);
      }
    });
    Inheritance Hierarchy

    System.Object
       ArcGIS.Core.Data.UtilityNetwork.Telecom.UnitIdentifier

    Requirements

    Target Platforms: Windows 11 Home, Pro, Enterprise (64 bit)

    ArcGIS Pro version: 3.7 or higher.
    See Also