Orchestrator Function: Server Find All For Type ( AWS )

by Simon Sparks · 16 February 2026

To use this function add it to the class library file named PluginAWSService.ts

GitHub Repository: https://github.com/SimonSparksUK/Orchestrator

Filename: PluginAWSService.ts

Public Function: FindAllForType

publicFindAllForType<T>(strObjectType:"AWSAccount"|"AWSClient"|"AWSRegion"|"EC2AcceleratorManufacturer"|"EC2AcceleratorName"|"EC2AcceleratorType"|"EC2AccountAttributeName"|"EC2ActivityStatus"|"EC2Address"|"EC2AddressAttributeName"|"EC2AddressFamily"|"EC2Affinity"|"EC2AllocationState"|"EC2AllocationStrategy"|"EC2AllowsMultipleInstanceTypes"|"EC2AnalysisStatus"|"EC2ApplianceModeSupportValue"|"EC2ArchitectureType"|"EC2ArchitectureValues"|"EC2AssociatedNetworkType"|"EC2AssociationStatusCode"|"EC2AttachmentStatus"|"EC2AutoAcceptSharedAssociationsValue"|"EC2AutoAcceptSharedAttachmentsValue"|"EC2AutoPlacement"|"EC2AvailabilityZone"|"EC2AvailabilityZoneOptInStatus"|"EC2AvailabilityZoneState"|"EC2BareMetal"|"EC2BatchState"|"EC2BgpStatus"|"EC2BootModeType"|"EC2BootModeValues"|"EC2BundleTaskState"|"EC2BurstablePerformance"|"EC2ByoipCidrState"|"EC2CancelBatchErrorCode"|"EC2CancelSpotInstanceRequestState"|"EC2CapacityReservationFleetState"|"EC2CapacityReservationInstancePlatform"|"EC2CapacityReservationPreference"|"EC2CapacityReservationState"|"EC2CapacityReservationTenancy"|"EC2CarrierGatewayState"|"EC2ClientCertificateRevocationListStatusCode"|"EC2ClientVpnAuthenticationType"|"EC2ClientVpnAuthorizationRuleStatusCode"|"EC2ClientVpnConnectionStatusCode"|"EC2ClientVpnEndpointAttributeStatusCode"|"EC2ClientVpnEndpointStatusCode"|"EC2ClientVpnRouteStatusCode"|"EC2ConnectionNotificationState"|"EC2ConnectionNotificationType"|"EC2ConnectivityType"|"EC2ContainerFormat"|"EC2ConversionTaskState"|"EC2CopyTagsFromSource"|"EC2CpuManufacturer"|"EC2CurrencyCodeValues"|"EC2CustomerGateway"|"EC2DatafeedSubscriptionState"|"EC2DefaultRouteTableAssociationValue"|"EC2DefaultRouteTablePropagationValue"|"EC2DefaultTargetCapacityType"|"EC2DeleteFleetErrorCode"|"EC2DeleteQueuedReservedInstancesErrorCode"|"EC2DestinationFileFormat"|"EC2DeviceType"|"EC2DiskImageFormat"|"EC2DiskType"|"EC2DnsNameState"|"EC2DnsSupportValue"|"EC2DomainType"|"EC2EbsEncryptionSupport"|"EC2EbsNvmeSupport"|"EC2EbsOptimizedSupport"|"EC2ElasticGpuState"|"EC2ElasticGpuStatus"|"EC2EnaSupport"|"EC2EndDateType"|"EC2EphemeralNvmeSupport"|"EC2EventCode"|"EC2EventType"|"EC2ExcessCapacityTerminationPolicy"|"EC2ExportEnvironment"|"EC2ExportTaskState"|"EC2FastLaunchResourceType"|"EC2FastLaunchStateCode"|"EC2FastSnapshotRestoreStateCode"|"EC2FindingsFound"|"EC2FleetActivityStatus"|"EC2FleetCapacityReservationTenancy"|"EC2FleetCapacityReservationUsageStrategy"|"EC2FleetEventType"|"EC2FleetExcessCapacityTerminationPolicy"|"EC2FleetInstanceMatchCriteria"|"EC2FleetOnDemandAllocationStrategy"|"EC2FleetReplacementStrategy"|"EC2FleetStateCode"|"EC2FleetType"|"EC2FlowLogsResourceType"|"EC2FpgaImageAttributeName"|"EC2FpgaImageStateCode"|"EC2GatewayAssociationState"|"EC2GatewayType"|"EC2HostnameType"|"EC2HostRecovery"|"EC2HostTenancy"|"EC2HttpTokensState"|"EC2HypervisorType"|"EC2IamInstanceProfileAssociationState"|"EC2Igmpv2SupportValue"|"EC2Image"|"EC2ImageAttributeName"|"EC2ImageState"|"EC2ImageTypeValues"|"EC2Instance"|"EC2InstanceAttributeName"|"EC2InstanceAutoRecoveryState"|"EC2InstanceEventWindowState"|"EC2InstanceGeneration"|"EC2InstanceHealthStatus"|"EC2InstanceInterruptionBehavior"|"EC2InstanceLifecycle"|"EC2InstanceLifecycleType"|"EC2InstanceMatchCriteria"|"EC2InstanceMetadataEndpointState"|"EC2InstanceMetadataOptionsState"|"EC2InstanceMetadataProtocolState"|"EC2InstanceMetadataTagsState"|"EC2InstanceStateName"|"EC2InstanceStorageEncryptionSupport"|"EC2InstanceType"|"EC2InstanceTypeHypervisor"|"EC2InterfacePermissionType"|"EC2InterfaceProtocolType"|"EC2InternetGateway"|"EC2IpamAddressHistoryResourceType"|"EC2IpamComplianceStatus"|"EC2IpamManagementState"|"EC2IpamOverlapStatus"|"EC2IpamPoolAllocationResourceType"|"EC2IpamPoolAwsService"|"EC2IpamPoolCidrFailureCode"|"EC2IpamPoolCidrState"|"EC2IpamPoolState"|"EC2IpamResourceType"|"EC2IpamScopeState"|"EC2IpamScopeType"|"EC2IpamState"|"EC2Ipv6SupportValue"|"EC2KeyFormat"|"EC2KeyPair"|"EC2KeyType"|"EC2LaunchTemplateAutoRecoveryState"|"EC2LaunchTemplateErrorCode"|"EC2LaunchTemplateHttpTokensState"|"EC2LaunchTemplateInstanceMetadataEndpointState"|"EC2LaunchTemplateInstanceMetadataOptionsState"|"EC2LaunchTemplateInstanceMetadataProtocolIpv6"|"EC2LaunchTemplateInstanceMetadataTagsState"|"EC2ListingState"|"EC2ListingStatus"|"EC2LocalGatewayRouteState"|"EC2LocalGatewayRouteType"|"EC2LocalStorage"|"EC2LocalStorageType"|"EC2LocationType"|"EC2LogDestinationType"|"EC2MarketType"|"EC2MembershipType"|"EC2ModifyAvailabilityZoneOptInStatus"|"EC2MonitoringState"|"EC2MoveStatus"|"EC2MulticastSupportValue"|"EC2NatGatewayState"|"EC2NetworkAcl"|"EC2NetworkInterface"|"EC2NetworkInterfaceAttribute"|"EC2NetworkInterfaceCreationType"|"EC2NetworkInterfacePermissionStateCode"|"EC2NetworkInterfaceStatus"|"EC2NetworkInterfaceType"|"EC2OfferingClassType"|"EC2OfferingTypeValues"|"EC2OnDemandAllocationStrategy"|"EC2OperationType"|"EC2PartitionLoadFrequency"|"EC2PayerResponsibility"|"EC2PaymentOption"|"EC2PermissionGroup"|"EC2PlacementGroupState"|"EC2PlacementGroupStrategy"|"EC2PlacementStrategy"|"EC2PlatformValues"|"EC2PrefixListState"|"EC2PrincipalType"|"EC2ProductCodeValues"|"EC2Protocol"|"EC2ProtocolValue"|"EC2RecurringChargeFrequency"|"EC2ReplacementStrategy"|"EC2ReplaceRootVolumeTaskState"|"EC2ReportInstanceReasonCodes"|"EC2ReportStatusType"|"EC2ReservationState"|"EC2ReservedInstanceState"|"EC2ResetFpgaImageAttributeName"|"EC2ResetImageAttributeName"|"EC2ResourceType"|"EC2RIProductDescription"|"EC2RootDeviceType"|"EC2RouteOrigin"|"EC2RouteState"|"EC2RouteTable"|"EC2RouteTableAssociationStateCode"|"EC2RuleAction"|"EC2Scope"|"EC2SecurityGroup"|"EC2SelfServicePortal"|"EC2ServiceState"|"EC2ServiceType"|"EC2ShutdownBehavior"|"EC2Snapshot"|"EC2SnapshotAttributeName"|"EC2SnapshotState"|"EC2SpotAllocationStrategy"|"EC2SpotInstanceInterruptionBehavior"|"EC2SpotInstanceState"|"EC2SpotInstanceType"|"EC2State"|"EC2StaticSourcesSupportValue"|"EC2Status"|"EC2StatusName"|"EC2StatusType"|"EC2StorageTier"|"EC2Subnet"|"EC2SubnetCidrBlockStateCode"|"EC2SubnetCidrReservationType"|"EC2SubnetState"|"EC2SummaryStatus"|"EC2TargetCapacityUnitType"|"EC2TargetStorageTier"|"EC2TelemetryStatus"|"EC2Tenancy"|"EC2TieringOperationStatus"|"EC2TrafficDirection"|"EC2TrafficMirrorFilterRuleField"|"EC2TrafficMirrorNetworkService"|"EC2TrafficMirrorRuleAction"|"EC2TrafficMirrorSessionField"|"EC2TrafficMirrorTargetType"|"EC2TrafficType"|"EC2TransitGatewayAssociationState"|"EC2TransitGatewayAttachmentResourceType"|"EC2TransitGatewayAttachmentState"|"EC2TransitGatewayConnectPeerState"|"EC2TransitGatewayMulitcastDomainAssociationState"|"EC2TransitGatewayMulticastDomainState"|"EC2TransitGatewayPrefixListReferenceState"|"EC2TransitGatewayPropagationState"|"EC2TransitGatewayRouteState"|"EC2TransitGatewayRouteTableState"|"EC2TransitGatewayRouteType"|"EC2TransitGatewayState"|"EC2TransportProtocol"|"EC2TunnelInsideIpVersion"|"EC2UnlimitedSupportedInstanceFamily"|"EC2UnsuccessfulInstanceCreditSpecificationErrorCode"|"EC2UsageClassType"|"EC2VirtualizationType"|"EC2Volume"|"EC2VolumeAttachmentState"|"EC2VolumeAttributeName"|"EC2VolumeModificationState"|"EC2VolumeState"|"EC2VolumeStatusInfoStatus"|"EC2VolumeStatusName"|"EC2VolumeType"|"EC2Vpc"|"EC2VpcAttributeName"|"EC2VpcCidrBlockStateCode"|"EC2VpcEndpointType"|"EC2VpcPeeringConnectionStateReasonCode"|"EC2VpcState"|"EC2VpcTenancy"|"EC2VpnConnection"|"EC2VpnEcmpSupportValue"|"EC2VpnGateway"|"EC2VpnProtocol"|"EC2VpnState"|"EC2VpnStaticRouteSource"|"EC2WeekDay"|"virtualFolder_Addresses"|"virtualFolder_AvailabilityZones"|"virtualFolder_CustomerGateways"|"virtualFolder_EC2"|"virtualFolder_Instances"|"virtualFolder_InternetGateways"|"virtualFolder_KeyPairs"|"virtualFolder_NetworkACLs"|"virtualFolder_NetworkInterfaces"|"virtualFolder_RouteTables"|"virtualFolder_SecurityGroups"|"virtualFolder_Snapshots"|"virtualFolder_Subnets"|"virtualFolder_Volumes"|"virtualFolder_VPCs"|"virtualFolder_VPNConnections"|"virtualFolder_VPNGateways",strXPathQuery?:string):T[]{

letstrObjectTypePrefix:string="AWS";

letstrObjectTypeName:string=`${strObjectTypePrefix}:${strObjectType}`;

letarrObjectType:T[]=this.serverFindAllForType<T>(strObjectTypeName,strXPathQuery);

returnarrObjectType;
}
TypeScript

Discover more from Cloud Build Tools

Subscribe to get the latest posts sent to your email.

You may also like