All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.aliyun.sdk.service.ens20171110.models.RunServiceScheduleRequest Maven / Gradle / Ivy

// This file is auto-generated, don't edit it. Thanks.
package com.aliyun.sdk.service.ens20171110.models;

import com.aliyun.sdk.gateway.pop.*;
import darabonba.core.*;
import darabonba.core.async.*;
import darabonba.core.sync.*;
import darabonba.core.client.*;
import darabonba.core.RequestModel;
import darabonba.core.TeaModel;
import com.aliyun.sdk.gateway.pop.models.*;

/**
 * 
 * {@link RunServiceScheduleRequest} extends {@link RequestModel}
 *
 * 

RunServiceScheduleRequest

*/ public class RunServiceScheduleRequest extends Request { @com.aliyun.core.annotation.Query @com.aliyun.core.annotation.NameInMap("AppId") @com.aliyun.core.annotation.Validation(required = true) private String appId; @com.aliyun.core.annotation.Query @com.aliyun.core.annotation.NameInMap("ClientIp") @com.aliyun.core.annotation.Validation(required = true) private String clientIp; @com.aliyun.core.annotation.Query @com.aliyun.core.annotation.NameInMap("Directorys") private String directorys; @com.aliyun.core.annotation.Query @com.aliyun.core.annotation.NameInMap("PodConfigName") private String podConfigName; @com.aliyun.core.annotation.Query @com.aliyun.core.annotation.NameInMap("PreLockedTimeout") private Integer preLockedTimeout; @com.aliyun.core.annotation.Query @com.aliyun.core.annotation.NameInMap("ScheduleStrategy") private String scheduleStrategy; @com.aliyun.core.annotation.Query @com.aliyun.core.annotation.NameInMap("ServiceAction") @com.aliyun.core.annotation.Validation(required = true) private String serviceAction; @com.aliyun.core.annotation.Query @com.aliyun.core.annotation.NameInMap("ServiceCommands") private String serviceCommands; @com.aliyun.core.annotation.Query @com.aliyun.core.annotation.NameInMap("Uuid") @com.aliyun.core.annotation.Validation(required = true) private String uuid; private RunServiceScheduleRequest(Builder builder) { super(builder); this.appId = builder.appId; this.clientIp = builder.clientIp; this.directorys = builder.directorys; this.podConfigName = builder.podConfigName; this.preLockedTimeout = builder.preLockedTimeout; this.scheduleStrategy = builder.scheduleStrategy; this.serviceAction = builder.serviceAction; this.serviceCommands = builder.serviceCommands; this.uuid = builder.uuid; } public static Builder builder() { return new Builder(); } public static RunServiceScheduleRequest create() { return builder().build(); } @Override public Builder toBuilder() { return new Builder(this); } /** * @return appId */ public String getAppId() { return this.appId; } /** * @return clientIp */ public String getClientIp() { return this.clientIp; } /** * @return directorys */ public String getDirectorys() { return this.directorys; } /** * @return podConfigName */ public String getPodConfigName() { return this.podConfigName; } /** * @return preLockedTimeout */ public Integer getPreLockedTimeout() { return this.preLockedTimeout; } /** * @return scheduleStrategy */ public String getScheduleStrategy() { return this.scheduleStrategy; } /** * @return serviceAction */ public String getServiceAction() { return this.serviceAction; } /** * @return serviceCommands */ public String getServiceCommands() { return this.serviceCommands; } /** * @return uuid */ public String getUuid() { return this.uuid; } public static final class Builder extends Request.Builder { private String appId; private String clientIp; private String directorys; private String podConfigName; private Integer preLockedTimeout; private String scheduleStrategy; private String serviceAction; private String serviceCommands; private String uuid; private Builder() { super(); } private Builder(RunServiceScheduleRequest request) { super(request); this.appId = request.appId; this.clientIp = request.clientIp; this.directorys = request.directorys; this.podConfigName = request.podConfigName; this.preLockedTimeout = request.preLockedTimeout; this.scheduleStrategy = request.scheduleStrategy; this.serviceAction = request.serviceAction; this.serviceCommands = request.serviceCommands; this.uuid = request.uuid; } /** *

The ID of the application.

*

This parameter is required.

* * example: *

474bdef0-d149-4695-abfb-52912d9143f0

*/ public Builder appId(String appId) { this.putQueryParameter("AppId", appId); this.appId = appId; return this; } /** *

The IP address of the client.

*

This parameter is required.

* * example: *

180.166.45.146

*/ public Builder clientIp(String clientIp) { this.putQueryParameter("ClientIp", clientIp); this.clientIp = clientIp; return this; } /** *

The directory to which the data file is mounted. The value must be a full path and cannot be "/../". Example: ["/data/app01", "/data/user"]. Specify the relative path of the virtual device for this parameter. For example, specify /data for this parameter when the actual path of the virtual device is /data/{input path}.

* * example: *

["/data/app01", "/data/user"]

*/ public Builder directorys(String directorys) { this.putQueryParameter("Directorys", directorys); this.directorys = directorys; return this; } /** *

The parameter does not take effect.

* * example: *

android

*/ public Builder podConfigName(String podConfigName) { this.putQueryParameter("PodConfigName", podConfigName); this.podConfigName = podConfigName; return this; } /** *

The maximum duration for locking an idle device. Unit: seconds. This parameter takes effect only if you set ServiceAction to PreSchedule. Default value: 300.

* * example: *

300

*/ public Builder preLockedTimeout(Integer preLockedTimeout) { this.putQueryParameter("PreLockedTimeout", preLockedTimeout); this.preLockedTimeout = preLockedTimeout; return this; } /** *

The scheduling policy of the device. The value must be a JSON string.

* * example: *

{"selectLevel": "RegionId", "values": ["cn-chengdu-telecom-2"] }

*/ public Builder scheduleStrategy(String scheduleStrategy) { this.putQueryParameter("ScheduleStrategy", scheduleStrategy); this.scheduleStrategy = scheduleStrategy; return this; } /** *

The scheduling operation. The value must be of the enumeration type. Valid values:

*

Container scenario:

*
    *
  • Start: selects and activates an idle cloud device.
  • *
  • Stop: stops and releases the cloud device.
  • *
  • Console: performs the scheduling operation when the device is in the scheduling state.
  • *
*

Bare metal instance or virtual machine scenario:

*
    *
  • PreSchedule: locks a virtual machine instance for scheduling.
  • *
  • Confirm: confirms the scheduling operation.
  • *
  • Cancel: cancels the scheduling operation.
  • *
  • Console: performs the scheduling operation when the device is in the scheduling state.
  • *
*

This parameter is required.

* * example: *

Start

*/ public Builder serviceAction(String serviceAction) { this.putQueryParameter("ServiceAction", serviceAction); this.serviceAction = serviceAction; return this; } /** *

The service commands. The value must be a JSON string.

* * example: *

[{"containerName": "android", "commands":["cat /tmp/token.json"] }, { "commands":["ls -l /data/data"] }]

*/ public Builder serviceCommands(String serviceCommands) { this.putQueryParameter("ServiceCommands", serviceCommands); this.serviceCommands = serviceCommands; return this; } /** *

The UUID of the device.

*

This parameter is required.

* * example: *

hdm_d4f1059a8e1afc0956bd71b497faa433

*/ public Builder uuid(String uuid) { this.putQueryParameter("Uuid", uuid); this.uuid = uuid; return this; } @Override public RunServiceScheduleRequest build() { return new RunServiceScheduleRequest(this); } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy