Class WindowsDeliveryOptimizationConfiguration

  • All Implemented Interfaces:
    com.github.davidmoten.odata.client.ODataEntityType, com.github.davidmoten.odata.client.ODataType

    public class WindowsDeliveryOptimizationConfiguration
    extends DeviceConfiguration
    implements com.github.davidmoten.odata.client.ODataEntityType
    “Windows Delivery Optimization configuration”
    • Field Detail

      • backgroundDownloadFromHttpDelayInSeconds

        protected Long backgroundDownloadFromHttpDelayInSeconds
      • cacheServerBackgroundDownloadFallbackToHttpDelayInSeconds

        protected Integer cacheServerBackgroundDownloadFallbackToHttpDelayInSeconds
      • cacheServerForegroundDownloadFallbackToHttpDelayInSeconds

        protected Integer cacheServerForegroundDownloadFallbackToHttpDelayInSeconds
      • cacheServerHostNames

        protected List<String> cacheServerHostNames
      • cacheServerHostNamesNextLink

        protected String cacheServerHostNamesNextLink
      • foregroundDownloadFromHttpDelayInSeconds

        protected Long foregroundDownloadFromHttpDelayInSeconds
      • maximumCacheAgeInDays

        protected Integer maximumCacheAgeInDays
      • minimumBatteryPercentageAllowedToUpload

        protected Integer minimumBatteryPercentageAllowedToUpload
      • minimumDiskSizeAllowedToPeerInGigabytes

        protected Integer minimumDiskSizeAllowedToPeerInGigabytes
      • minimumFileSizeToCacheInMegabytes

        protected Integer minimumFileSizeToCacheInMegabytes
      • minimumRamAllowedToPeerInGigabytes

        protected Integer minimumRamAllowedToPeerInGigabytes
      • modifyCacheLocation

        protected String modifyCacheLocation
      • vpnPeerCaching

        protected Enablement vpnPeerCaching
    • Constructor Detail

      • WindowsDeliveryOptimizationConfiguration

        protected WindowsDeliveryOptimizationConfiguration()
    • Method Detail

      • odataTypeName

        public String odataTypeName()
        Specified by:
        odataTypeName in interface com.github.davidmoten.odata.client.ODataType
        Overrides:
        odataTypeName in class DeviceConfiguration
      • builderWindowsDeliveryOptimizationConfiguration

        public static WindowsDeliveryOptimizationConfiguration.Builder builderWindowsDeliveryOptimizationConfiguration()
        Returns a builder which is used to create a new instance of this class (given that this class is immutable).
        Returns:
        a new Builder for this class
      • getChangedFields

        public com.github.davidmoten.odata.client.internal.ChangedFields getChangedFields()
        Specified by:
        getChangedFields in interface com.github.davidmoten.odata.client.ODataEntityType
        Overrides:
        getChangedFields in class DeviceConfiguration
      • postInject

        public void postInject​(boolean addKeysToContextPath)
        Specified by:
        postInject in interface com.github.davidmoten.odata.client.ODataType
        Overrides:
        postInject in class DeviceConfiguration
      • getBackgroundDownloadFromHttpDelayInSeconds

        public Optional<Long> getBackgroundDownloadFromHttpDelayInSeconds()
        “Specifies number of seconds to delay an HTTP source in a background download that is allowed to use peer-to-peer. Valid values 0 to 4294967295”
        Returns:
        property backgroundDownloadFromHttpDelayInSeconds
      • withBackgroundDownloadFromHttpDelayInSeconds

        public WindowsDeliveryOptimizationConfiguration withBackgroundDownloadFromHttpDelayInSeconds​(Long backgroundDownloadFromHttpDelayInSeconds)
        Returns an immutable copy of this with just the backgroundDownloadFromHttpDelayInSeconds field changed. Field description below . The field name is also added to an internal map of changed fields in the returned object so that when this.patch() is called (if available)on the returned object only the changed fields are submitted.

        “Specifies number of seconds to delay an HTTP source in a background download that is allowed to use peer-to-peer. Valid values 0 to 4294967295”

        Parameters:
        backgroundDownloadFromHttpDelayInSeconds - new value of backgroundDownloadFromHttpDelayInSeconds field (as defined in service metadata)
        Returns:
        immutable copy of this with just the backgroundDownloadFromHttpDelayInSeconds field changed
      • getBandwidthMode

        public Optional<DeliveryOptimizationBandwidth> getBandwidthMode()
        “Specifies foreground and background bandwidth usage using percentages, absolutes , or hours.”
        Returns:
        property bandwidthMode
      • withBandwidthMode

        public WindowsDeliveryOptimizationConfiguration withBandwidthMode​(DeliveryOptimizationBandwidth bandwidthMode)
        Returns an immutable copy of this with just the bandwidthMode field changed. Field description below. The field name is also added to an internal map of changed fields in the returned object so that when this. patch() is called (if available)on the returned object only the changed fields are submitted.

        “Specifies foreground and background bandwidth usage using percentages, absolutes , or hours.”

        Parameters:
        bandwidthMode - new value of bandwidthMode field (as defined in service metadata)
        Returns:
        immutable copy of this with just the bandwidthMode field changed
      • getCacheServerBackgroundDownloadFallbackToHttpDelayInSeconds

        public Optional<Integer> getCacheServerBackgroundDownloadFallbackToHttpDelayInSeconds()
        “Specifies number of seconds to delay a fall back from cache servers to an HTTP source for a background download. Valid values 0 to 2592000.”
        Returns:
        property cacheServerBackgroundDownloadFallbackToHttpDelayInSeconds
      • withCacheServerBackgroundDownloadFallbackToHttpDelayInSeconds

        public WindowsDeliveryOptimizationConfiguration withCacheServerBackgroundDownloadFallbackToHttpDelayInSeconds​(Integer cacheServerBackgroundDownloadFallbackToHttpDelayInSeconds)
        Returns an immutable copy of this with just the cacheServerBackgroundDownloadFallbackToHttpDelayInSeconds field changed. Field description below. The field name is also added to an internal map of changed fields in the returned object so that when this.patch() is called (if available)on the returned object only the changed fields are submitted.

        “Specifies number of seconds to delay a fall back from cache servers to an HTTP source for a background download. Valid values 0 to 2592000.”

        Parameters:
        cacheServerBackgroundDownloadFallbackToHttpDelayInSeconds - new value of cacheServerBackgroundDownloadFallbackToHttpDelayInSeconds field (as defined in service metadata)
        Returns:
        immutable copy of this with just the cacheServerBackgroundDownloadFallbackToHttpDelayInSeconds field changed
      • getCacheServerForegroundDownloadFallbackToHttpDelayInSeconds

        public Optional<Integer> getCacheServerForegroundDownloadFallbackToHttpDelayInSeconds()
        “Specifies number of seconds to delay a fall back from cache servers to an HTTP source for a foreground download. Valid values 0 to 2592000.​”
        Returns:
        property cacheServerForegroundDownloadFallbackToHttpDelayInSeconds
      • withCacheServerForegroundDownloadFallbackToHttpDelayInSeconds

        public WindowsDeliveryOptimizationConfiguration withCacheServerForegroundDownloadFallbackToHttpDelayInSeconds​(Integer cacheServerForegroundDownloadFallbackToHttpDelayInSeconds)
        Returns an immutable copy of this with just the cacheServerForegroundDownloadFallbackToHttpDelayInSeconds field changed. Field description below. The field name is also added to an internal map of changed fields in the returned object so that when this.patch() is called (if available)on the returned object only the changed fields are submitted.

        “Specifies number of seconds to delay a fall back from cache servers to an HTTP source for a foreground download. Valid values 0 to 2592000.​”

        Parameters:
        cacheServerForegroundDownloadFallbackToHttpDelayInSeconds - new value of cacheServerForegroundDownloadFallbackToHttpDelayInSeconds field (as defined in service metadata)
        Returns:
        immutable copy of this with just the cacheServerForegroundDownloadFallbackToHttpDelayInSeconds field changed
      • getCacheServerHostNames

        public com.github.davidmoten.odata.client.CollectionPage<String> getCacheServerHostNames()
        “Specifies cache servers host names.”
        Returns:
        property cacheServerHostNames
      • withCacheServerHostNames

        public WindowsDeliveryOptimizationConfiguration withCacheServerHostNames​(List<String> cacheServerHostNames)
        Returns an immutable copy of this with just the cacheServerHostNames field changed. Field description below. The field name is also added to an internal map of changed fields in the returned object so that when this.patch() is called (if available)on the returned object only the changed fields are submitted.

        “Specifies cache servers host names.”

        Parameters:
        cacheServerHostNames - new value of cacheServerHostNames field (as defined in service metadata)
        Returns:
        immutable copy of this with just the cacheServerHostNames field changed
      • getCacheServerHostNames

        public com.github.davidmoten.odata.client.CollectionPage<String> getCacheServerHostNames​(com.github.davidmoten.odata.client.HttpRequestOptions options)
        “Specifies cache servers host names.”
        Parameters:
        options - specify connect and read timeouts
        Returns:
        property cacheServerHostNames
      • getDeliveryOptimizationMode

        public Optional<WindowsDeliveryOptimizationMode> getDeliveryOptimizationMode()
        “Specifies the download method that delivery optimization can use to manage network bandwidth consumption for large content distribution scenarios.”
        Returns:
        property deliveryOptimizationMode
      • withDeliveryOptimizationMode

        public WindowsDeliveryOptimizationConfiguration withDeliveryOptimizationMode​(WindowsDeliveryOptimizationMode deliveryOptimizationMode)
        Returns an immutable copy of this with just the deliveryOptimizationMode field changed. Field description below. The field name is also added to an internal map of changed fields in the returned object so that when this.patch() is called (if available)on the returned object only the changed fields are submitted.

        “Specifies the download method that delivery optimization can use to manage network bandwidth consumption for large content distribution scenarios.”

        Parameters:
        deliveryOptimizationMode - new value of deliveryOptimizationMode field (as defined in service metadata)
        Returns:
        immutable copy of this with just the deliveryOptimizationMode field changed
      • getForegroundDownloadFromHttpDelayInSeconds

        public Optional<Long> getForegroundDownloadFromHttpDelayInSeconds()
        “Specifying 0 sets Delivery Optimization to manage this setting using the cloud service. Valid values 0 to 86400”
        Returns:
        property foregroundDownloadFromHttpDelayInSeconds
      • withForegroundDownloadFromHttpDelayInSeconds

        public WindowsDeliveryOptimizationConfiguration withForegroundDownloadFromHttpDelayInSeconds​(Long foregroundDownloadFromHttpDelayInSeconds)
        Returns an immutable copy of this with just the foregroundDownloadFromHttpDelayInSeconds field changed. Field description below . The field name is also added to an internal map of changed fields in the returned object so that when this.patch() is called (if available)on the returned object only the changed fields are submitted.

        “Specifying 0 sets Delivery Optimization to manage this setting using the cloud service. Valid values 0 to 86400”

        Parameters:
        foregroundDownloadFromHttpDelayInSeconds - new value of foregroundDownloadFromHttpDelayInSeconds field (as defined in service metadata)
        Returns:
        immutable copy of this with just the foregroundDownloadFromHttpDelayInSeconds field changed
      • getGroupIdSource

        public Optional<DeliveryOptimizationGroupIdSource> getGroupIdSource()
        “The options set in this policy only apply to Delivery Optimization mode Group (2 ) download mode. If Group (2) isn't set as Download mode, this policy will be ignored. For option 3 - DHCP Option ID, the client will query DHCP Option ID 234 and use the returned GUID value as the Group ID.”
        Returns:
        property groupIdSource
      • withGroupIdSource

        public WindowsDeliveryOptimizationConfiguration withGroupIdSource​(DeliveryOptimizationGroupIdSource groupIdSource)
        Returns an immutable copy of this with just the groupIdSource field changed. Field description below. The field name is also added to an internal map of changed fields in the returned object so that when this. patch() is called (if available)on the returned object only the changed fields are submitted.

        “The options set in this policy only apply to Delivery Optimization mode Group (2 ) download mode. If Group (2) isn't set as Download mode, this policy will be ignored. For option 3 - DHCP Option ID, the client will query DHCP Option ID 234 and use the returned GUID value as the Group ID.”

        Parameters:
        groupIdSource - new value of groupIdSource field (as defined in service metadata)
        Returns:
        immutable copy of this with just the groupIdSource field changed
      • getMaximumCacheAgeInDays

        public Optional<Integer> getMaximumCacheAgeInDays()
        “Specifies the maximum time in days that each file is held in the Delivery Optimization cache after downloading successfully (0-3650). Valid values 0 to 3650”
        Returns:
        property maximumCacheAgeInDays
      • withMaximumCacheAgeInDays

        public WindowsDeliveryOptimizationConfiguration withMaximumCacheAgeInDays​(Integer maximumCacheAgeInDays)
        Returns an immutable copy of this with just the maximumCacheAgeInDays field changed. Field description below. The field name is also added to an internal map of changed fields in the returned object so that when this.patch() is called (if available)on the returned object only the changed fields are submitted.

        “Specifies the maximum time in days that each file is held in the Delivery Optimization cache after downloading successfully (0-3650). Valid values 0 to 3650”

        Parameters:
        maximumCacheAgeInDays - new value of maximumCacheAgeInDays field (as defined in service metadata)
        Returns:
        immutable copy of this with just the maximumCacheAgeInDays field changed
      • getMaximumCacheSize

        public Optional<DeliveryOptimizationMaxCacheSize> getMaximumCacheSize()
        “Specifies the maximum cache size that Delivery Optimization either as a percentage or in GB.”
        Returns:
        property maximumCacheSize
      • withMaximumCacheSize

        public WindowsDeliveryOptimizationConfiguration withMaximumCacheSize​(DeliveryOptimizationMaxCacheSize maximumCacheSize)
        Returns an immutable copy of this with just the maximumCacheSize field changed. Field description below. The field name is also added to an internal map of changed fields in the returned object so that when this. patch() is called (if available)on the returned object only the changed fields are submitted.

        “Specifies the maximum cache size that Delivery Optimization either as a percentage or in GB.”

        Parameters:
        maximumCacheSize - new value of maximumCacheSize field (as defined in service metadata)
        Returns:
        immutable copy of this with just the maximumCacheSize field changed
      • getMinimumBatteryPercentageAllowedToUpload

        public Optional<Integer> getMinimumBatteryPercentageAllowedToUpload()
        “The default value is 0. The value 0 (zero) means "not limited" and the cloud service default value will be used. Valid values 0 to 100”
        Returns:
        property minimumBatteryPercentageAllowedToUpload
      • withMinimumBatteryPercentageAllowedToUpload

        public WindowsDeliveryOptimizationConfiguration withMinimumBatteryPercentageAllowedToUpload​(Integer minimumBatteryPercentageAllowedToUpload)
        Returns an immutable copy of this with just the minimumBatteryPercentageAllowedToUpload field changed. Field description below. The field name is also added to an internal map of changed fields in the returned object so that when this.patch() is called (if available)on the returned object only the changed fields are submitted.

        “The default value is 0. The value 0 (zero) means "not limited" and the cloud service default value will be used. Valid values 0 to 100”

        Parameters:
        minimumBatteryPercentageAllowedToUpload - new value of minimumBatteryPercentageAllowedToUpload field (as defined in service metadata)
        Returns:
        immutable copy of this with just the minimumBatteryPercentageAllowedToUpload field changed
      • getMinimumDiskSizeAllowedToPeerInGigabytes

        public Optional<Integer> getMinimumDiskSizeAllowedToPeerInGigabytes()
        “Recommended values: 64 GB to 256 GB. Valid values 1 to 100000”
        Returns:
        property minimumDiskSizeAllowedToPeerInGigabytes
      • withMinimumDiskSizeAllowedToPeerInGigabytes

        public WindowsDeliveryOptimizationConfiguration withMinimumDiskSizeAllowedToPeerInGigabytes​(Integer minimumDiskSizeAllowedToPeerInGigabytes)
        Returns an immutable copy of this with just the minimumDiskSizeAllowedToPeerInGigabytes field changed. Field description below. The field name is also added to an internal map of changed fields in the returned object so that when this.patch() is called (if available)on the returned object only the changed fields are submitted.

        “Recommended values: 64 GB to 256 GB. Valid values 1 to 100000”

        Parameters:
        minimumDiskSizeAllowedToPeerInGigabytes - new value of minimumDiskSizeAllowedToPeerInGigabytes field (as defined in service metadata)
        Returns:
        immutable copy of this with just the minimumDiskSizeAllowedToPeerInGigabytes field changed
      • getMinimumFileSizeToCacheInMegabytes

        public Optional<Integer> getMinimumFileSizeToCacheInMegabytes()
        “Recommended values: 1 MB to 100,000 MB. Valid values 1 to 100000”
        Returns:
        property minimumFileSizeToCacheInMegabytes
      • withMinimumFileSizeToCacheInMegabytes

        public WindowsDeliveryOptimizationConfiguration withMinimumFileSizeToCacheInMegabytes​(Integer minimumFileSizeToCacheInMegabytes)
        Returns an immutable copy of this with just the minimumFileSizeToCacheInMegabytes field changed. Field description below. The field name is also added to an internal map of changed fields in the returned object so that when this.patch() is called (if available)on the returned object only the changed fields are submitted.

        “Recommended values: 1 MB to 100,000 MB. Valid values 1 to 100000”

        Parameters:
        minimumFileSizeToCacheInMegabytes - new value of minimumFileSizeToCacheInMegabytes field (as defined in service metadata)
        Returns:
        immutable copy of this with just the minimumFileSizeToCacheInMegabytes field changed
      • getMinimumRamAllowedToPeerInGigabytes

        public Optional<Integer> getMinimumRamAllowedToPeerInGigabytes()
        “Specifies the minimum RAM size in GB to use Peer Caching (1-100000). Valid values 1 to 100000”
        Returns:
        property minimumRamAllowedToPeerInGigabytes
      • withMinimumRamAllowedToPeerInGigabytes

        public WindowsDeliveryOptimizationConfiguration withMinimumRamAllowedToPeerInGigabytes​(Integer minimumRamAllowedToPeerInGigabytes)
        Returns an immutable copy of this with just the minimumRamAllowedToPeerInGigabytes field changed. Field description below. The field name is also added to an internal map of changed fields in the returned object so that when this.patch() is called (if available)on the returned object only the changed fields are submitted.

        “Specifies the minimum RAM size in GB to use Peer Caching (1-100000). Valid values 1 to 100000”

        Parameters:
        minimumRamAllowedToPeerInGigabytes - new value of minimumRamAllowedToPeerInGigabytes field (as defined in service metadata)
        Returns:
        immutable copy of this with just the minimumRamAllowedToPeerInGigabytes field changed
      • getModifyCacheLocation

        public Optional<String> getModifyCacheLocation()
        “Specifies the drive that Delivery Optimization should use for its cache.”
        Returns:
        property modifyCacheLocation
      • withModifyCacheLocation

        public WindowsDeliveryOptimizationConfiguration withModifyCacheLocation​(String modifyCacheLocation)
        Returns an immutable copy of this with just the modifyCacheLocation field changed. Field description below. The field name is also added to an internal map of changed fields in the returned object so that when this.patch() is called (if available)on the returned object only the changed fields are submitted.

        “Specifies the drive that Delivery Optimization should use for its cache.”

        Parameters:
        modifyCacheLocation - new value of modifyCacheLocation field (as defined in service metadata)
        Returns:
        immutable copy of this with just the modifyCacheLocation field changed
      • withRestrictPeerSelectionBy

        public WindowsDeliveryOptimizationConfiguration withRestrictPeerSelectionBy​(DeliveryOptimizationRestrictPeerSelectionByOptions restrictPeerSelectionBy)
        Returns an immutable copy of this with just the restrictPeerSelectionBy field changed. Field description below. The field name is also added to an internal map of changed fields in the returned object so that when this.patch() is called (if available)on the returned object only the changed fields are submitted.

        “Option 1 (Subnet mask) only applies to Delivery Optimization modes Download Mode LAN (1) and Group (2).”

        Parameters:
        restrictPeerSelectionBy - new value of restrictPeerSelectionBy field (as defined in service metadata)
        Returns:
        immutable copy of this with just the restrictPeerSelectionBy field changed
      • getVpnPeerCaching

        public Optional<Enablement> getVpnPeerCaching()
        “Specifies whether the device is allowed to participate in Peer Caching while connected via VPN to the domain network.”
        Returns:
        property vpnPeerCaching
      • withVpnPeerCaching

        public WindowsDeliveryOptimizationConfiguration withVpnPeerCaching​(Enablement vpnPeerCaching)
        Returns an immutable copy of this with just the vpnPeerCaching field changed. Field description below. The field name is also added to an internal map of changed fields in the returned object so that when this. patch() is called (if available)on the returned object only the changed fields are submitted.

        “Specifies whether the device is allowed to participate in Peer Caching while connected via VPN to the domain network.”

        Parameters:
        vpnPeerCaching - new value of vpnPeerCaching field (as defined in service metadata)
        Returns:
        immutable copy of this with just the vpnPeerCaching field changed
      • getUnmappedFields

        public com.github.davidmoten.odata.client.UnmappedFields getUnmappedFields()
        Specified by:
        getUnmappedFields in interface com.github.davidmoten.odata.client.ODataType
        Overrides:
        getUnmappedFields in class DeviceConfiguration
      • patch

        public WindowsDeliveryOptimizationConfiguration patch()
        Submits only changed fields for update and returns an immutable copy of this with changed fields reset.
        Overrides:
        patch in class DeviceConfiguration
        Returns:
        a copy of this with changed fields reset
        Throws:
        com.github.davidmoten.odata.client.ClientException - if HTTP response is not as expected
      • put

        public WindowsDeliveryOptimizationConfiguration put()
        Submits all fields for update and returns an immutable copy of this with changed fields reset (they were ignored anyway).
        Overrides:
        put in class DeviceConfiguration
        Returns:
        a copy of this with changed fields reset
        Throws:
        com.github.davidmoten.odata.client.ClientException - if HTTP response is not as expected