Class DevicesImpl

java.lang.Object
com.eqixiac.equinix.networkedge.client.implementation.DevicesImpl
All Implemented Interfaces:
Devices

public class DevicesImpl extends Object implements Devices
Author:
ianjones
  • Constructor Details

    • DevicesImpl

      public DevicesImpl()
  • Method Details

    • list

      public PaginatedList<Device> list()
      Description copied from interface: Devices
      Lists available Network Edge devices.
      Specified by:
      list in interface Devices
      Returns:
      PaginatedList
    • list

      public PaginatedList<Device> list(RequestBuilder.Device requestBuilder)
      Lists Network Edge devices based on the parameters provided.
      Specified by:
      list in interface Devices
      Parameters:
      requestBuilder - the desired query parameters.
      Returns:
      PaginatedList
    • listDeviceTypes

      public PaginatedList<DeviceType> listDeviceTypes()
      Description copied from interface: Devices
      Lists the available device types.
      Specified by:
      listDeviceTypes in interface Devices
      Returns:
      PaginatedList
    • listInterfaces

      public List<NetworkInterface> listInterfaces(String uuid)
      Description copied from interface: Devices
      Lists the interfaces for the specified device.
      Specified by:
      listInterfaces in interface Devices
      Parameters:
      uuid - the unique identifier of the device.
      Returns:
      List
    • listAllowedInterfaces

      public AllowedInterfaceResponse listAllowedInterfaces(RequestBuilder.AllowedInterfaces requestBuilder)
      Description copied from interface: Devices
      Returns the interface layout allowed for a device type with a chosen configuration. Use this to size a device before creation.
      Specified by:
      listAllowedInterfaces in interface Devices
      Parameters:
      requestBuilder - the device type and configuration parameters.
      Returns:
      AllowedInterfaceResponse
    • listReloadHistory

      public List<DeviceReboot> listReloadHistory(String uuid)
      Description copied from interface: Devices
      Returns the reload/soft-reboot history of the specified device.
      Specified by:
      listReloadHistory in interface Devices
      Parameters:
      uuid - the unique identifier of the device.
      Returns:
      List
    • listUpgradeHistory

      public List<DeviceUpgrade> listUpgradeHistory(String uuid)
      Description copied from interface: Devices
      Returns the resource-upgrade history of the specified device.
      Specified by:
      listUpgradeHistory in interface Devices
      Parameters:
      uuid - the unique identifier of the device.
      Returns:
      List
    • getInterfaceStatistics

      public InterfaceStats getInterfaceStatistics(String uuid, String interfaceId, Instant startDateTime, Instant endDateTime)
      Description copied from interface: Devices
      Returns interface throughput statistics for an interface of the specified device.

      Maps to GET /ne/v1/devices/{uuid}/interfaces/{interfaceId}/stats. The bounds are sent as YYYY-MM-DDThh:mm:ssZ in UTC, truncated to whole seconds. Live (2026-11-11) the service rejects fractional seconds (...:28.282Z) and the spec's example form (2023-11-10 19:06:06 UTC) with HTTP 400 EQ-4000702 "Start date is not valid", and rejects a request without the bounds, although the spec marks them optional.

      Specified by:
      getInterfaceStatistics in interface Devices
      Parameters:
      uuid - the unique identifier of the device.
      interfaceId - the interface id.
      startDateTime - the start of the stats window; required
      endDateTime - the end of the stats window; required
      Returns:
      InterfaceStats
    • listDownloadableImages

      public List<DownloadableImage> listDownloadableImages(String deviceType)
      Description copied from interface: Devices
      Lists the images available to download for the specified device type.
      Specified by:
      listDownloadableImages in interface Devices
      Parameters:
      deviceType - the device type code.
      Returns:
      List
    • requestImageDownload

      public ImageDownload requestImageDownload(String deviceType, String version)
      Description copied from interface: Devices
      Requests a download link for a specific image version of the specified device type.
      Specified by:
      requestImageDownload in interface Devices
      Parameters:
      deviceType - the device type code.
      version - the device version.
      Returns:
      ImageDownload
    • getByUuid

      public Device getByUuid(String uuid)
      Description copied from interface: Devices
      Gets the specified device.
      Specified by:
      getByUuid in interface Devices
      Parameters:
      uuid - the unique identifier of the device.
      Returns:
      Device
    • define

      public DeviceOperator.DeviceBuilder define(String deviceName)
      Returns an instance of DeviceBuilder for defining a new device.
      Specified by:
      define in interface Devices
      Returns:
      DeviceOperator.DeviceBuilder
    • defineSecondary

      public DeviceOperator.DeviceBuilderSecondary defineSecondary(String secondaryDeviceName, String primaryDeviceUuid)
      Returns an instance of DeviceBuilderSecondary for defining a secondary device.
      Specified by:
      defineSecondary in interface Devices
      Returns:
      DeviceOperator.DeviceBuilderSecondary
    • postLicenseFile

      public String postLicenseFile(MetroCode metroCode, String deviceTypeCode, LicenseType licenseType, String fileContents)
      Description copied from interface: Devices
      Posts a new license file.
      Specified by:
      postLicenseFile in interface Devices
      Parameters:
      metroCode - the MetroCode to associate the license file with.
      deviceTypeCode - the device type code to associate the license file with.
      licenseType - the LicenseType to associate the license file with.
      fileContents - the contents of the license file.
      Returns:
      String the fileId of the uploaded license file.
    • softReboot

      public Boolean softReboot(String uuid)
      Description copied from interface: Devices
      Triggers a soft reboot of the specified device.
      Specified by:
      softReboot in interface Devices
      Parameters:
      uuid - the unique identifier of the device.
      Returns:
      Boolean true if the reboot request was accepted.
    • createRMA

      public Boolean createRMA(String uuid, DeviceRMARequest deviceRMARequest)
      Description copied from interface: Devices
      Triggers an RMA (Return Merchandise Authorization) of the specified device. The required payload fields vary by vendor; refer to the API reference for the exact payload per device type.
      Specified by:
      createRMA in interface Devices
      Parameters:
      uuid - the unique identifier of the device.
      deviceRMARequest - the DeviceRMARequest describing the RMA.
      Returns:
      Boolean true if the RMA request was accepted.
    • getDeviceAcl

      public DeviceACL getDeviceAcl(String uuid)
      Description copied from interface: Devices
      Returns the ACL templates currently associated with the specified device, including each template's provisioning status on the device.
      Specified by:
      getDeviceAcl in interface Devices
      Parameters:
      uuid - the unique identifier of the device.
      Returns:
      DeviceACL
    • addDeviceAcl

      public DeviceACL addDeviceAcl(String uuid, DeviceACLRequest deviceACLRequest)
      Description copied from interface: Devices
      Associates ACL templates with the specified device.
      Specified by:
      addDeviceAcl in interface Devices
      Parameters:
      uuid - the unique identifier of the device.
      deviceACLRequest - the DeviceACLRequest describing the ACLs to apply.
      Returns:
      DeviceACL the updated device ACL state.
    • addDeviceAcl

      public DeviceACL addDeviceAcl(String uuid, DeviceACLRequest deviceACLRequest, String accountUcmId)
      Description copied from interface: Devices
      Associates ACL templates with the specified device on behalf of a customer account (reseller flow).
      Specified by:
      addDeviceAcl in interface Devices
      Parameters:
      uuid - the unique identifier of the device.
      deviceACLRequest - the DeviceACLRequest describing the ACLs to apply.
      accountUcmId - the customer account UCM id.
      Returns:
      DeviceACL the updated device ACL state.
    • updateDeviceAcl

      public DeviceACL updateDeviceAcl(String uuid, DeviceACLRequest deviceACLRequest)
      Description copied from interface: Devices
      Updates or removes the ACL templates associated with the specified device.
      Specified by:
      updateDeviceAcl in interface Devices
      Parameters:
      uuid - the unique identifier of the device.
      deviceACLRequest - the DeviceACLRequest describing the desired ACLs.
      Returns:
      DeviceACL the updated device ACL state.
    • updateDeviceAcl

      public DeviceACL updateDeviceAcl(String uuid, DeviceACLRequest deviceACLRequest, String accountUcmId)
      Description copied from interface: Devices
      Updates or removes the ACL templates associated with the specified device on behalf of a customer account (reseller flow).
      Specified by:
      updateDeviceAcl in interface Devices
      Parameters:
      uuid - the unique identifier of the device.
      deviceACLRequest - the DeviceACLRequest describing the desired ACLs.
      accountUcmId - the customer account UCM id.
      Returns:
      DeviceACL the updated device ACL state.