/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.simplesystemsmanagement.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *

* Describes plugin details. *

* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class CommandPlugin implements Serializable, Cloneable, StructuredPojo { /** *

* The name of the plugin. Must be one of the following: aws:updateAgent, aws:domainjoin, * aws:applications, aws:runPowerShellScript, aws:psmodule, * aws:cloudWatch, aws:runShellScript, or aws:updateSSMAgent. *

*/ private String name; /** *

* The status of this plugin. You can run a document with multiple plugins. *

*/ private String status; /** *

* A detailed status of the plugin execution. StatusDetails includes more information than Status * because it includes states resulting from error and concurrency control parameters. StatusDetails can show * different results than Status. For more information about these statuses, see Understanding command * statuses in the Amazon Web Services Systems Manager User Guide. StatusDetails can be one of the * following values: *

* */ private String statusDetails; /** *

* A numeric response code generated after running the plugin. *

*/ private Integer responseCode; /** *

* The time the plugin started running. *

*/ private java.util.Date responseStartDateTime; /** *

* The time the plugin stopped running. Could stop prematurely if, for example, a cancel command was sent. *

*/ private java.util.Date responseFinishDateTime; /** *

* Output of the plugin execution. *

*/ private String output; /** *

* The URL for the complete text written by the plugin to stdout in Amazon S3. If the S3 bucket for the command * wasn't specified, then this string is empty. *

*/ private String standardOutputUrl; /** *

* The URL for the complete text written by the plugin to stderr. If execution isn't yet complete, then this string * is empty. *

*/ private String standardErrorUrl; /** *

* (Deprecated) You can no longer specify this parameter. The system ignores it. Instead, Amazon Web Services * Systems Manager automatically determines the S3 bucket region. *

*/ private String outputS3Region; /** *

* The S3 bucket where the responses to the command executions should be stored. This was requested when issuing the * command. For example, in the following response: *

*

* doc-example-bucket/ab19cb99-a030-46dd-9dfc-8eSAMPLEPre-Fix/i-02573cafcfEXAMPLE/awsrunShellScript *

*

* doc-example-bucket is the name of the S3 bucket; *

*

* ab19cb99-a030-46dd-9dfc-8eSAMPLEPre-Fix is the name of the S3 prefix; *

*

* i-02573cafcfEXAMPLE is the managed node ID; *

*

* awsrunShellScript is the name of the plugin. *

*/ private String outputS3BucketName; /** *

* The S3 directory path inside the bucket where the responses to the command executions should be stored. This was * requested when issuing the command. For example, in the following response: *

*

* doc-example-bucket/ab19cb99-a030-46dd-9dfc-8eSAMPLEPre-Fix/i-02573cafcfEXAMPLE/awsrunShellScript *

*

* doc-example-bucket is the name of the S3 bucket; *

*

* ab19cb99-a030-46dd-9dfc-8eSAMPLEPre-Fix is the name of the S3 prefix; *

*

* i-02573cafcfEXAMPLE is the managed node ID; *

*

* awsrunShellScript is the name of the plugin. *

*/ private String outputS3KeyPrefix; /** *

* The name of the plugin. Must be one of the following: aws:updateAgent, aws:domainjoin, * aws:applications, aws:runPowerShellScript, aws:psmodule, * aws:cloudWatch, aws:runShellScript, or aws:updateSSMAgent. *

* * @param name * The name of the plugin. Must be one of the following: aws:updateAgent, * aws:domainjoin, aws:applications, aws:runPowerShellScript, * aws:psmodule, aws:cloudWatch, aws:runShellScript, or * aws:updateSSMAgent. */ public void setName(String name) { this.name = name; } /** *

* The name of the plugin. Must be one of the following: aws:updateAgent, aws:domainjoin, * aws:applications, aws:runPowerShellScript, aws:psmodule, * aws:cloudWatch, aws:runShellScript, or aws:updateSSMAgent. *

* * @return The name of the plugin. Must be one of the following: aws:updateAgent, * aws:domainjoin, aws:applications, aws:runPowerShellScript, * aws:psmodule, aws:cloudWatch, aws:runShellScript, or * aws:updateSSMAgent. */ public String getName() { return this.name; } /** *

* The name of the plugin. Must be one of the following: aws:updateAgent, aws:domainjoin, * aws:applications, aws:runPowerShellScript, aws:psmodule, * aws:cloudWatch, aws:runShellScript, or aws:updateSSMAgent. *

* * @param name * The name of the plugin. Must be one of the following: aws:updateAgent, * aws:domainjoin, aws:applications, aws:runPowerShellScript, * aws:psmodule, aws:cloudWatch, aws:runShellScript, or * aws:updateSSMAgent. * @return Returns a reference to this object so that method calls can be chained together. */ public CommandPlugin withName(String name) { setName(name); return this; } /** *

* The status of this plugin. You can run a document with multiple plugins. *

* * @param status * The status of this plugin. You can run a document with multiple plugins. * @see CommandPluginStatus */ public void setStatus(String status) { this.status = status; } /** *

* The status of this plugin. You can run a document with multiple plugins. *

* * @return The status of this plugin. You can run a document with multiple plugins. * @see CommandPluginStatus */ public String getStatus() { return this.status; } /** *

* The status of this plugin. You can run a document with multiple plugins. *

* * @param status * The status of this plugin. You can run a document with multiple plugins. * @return Returns a reference to this object so that method calls can be chained together. * @see CommandPluginStatus */ public CommandPlugin withStatus(String status) { setStatus(status); return this; } /** *

* The status of this plugin. You can run a document with multiple plugins. *

* * @param status * The status of this plugin. You can run a document with multiple plugins. * @see CommandPluginStatus */ public void setStatus(CommandPluginStatus status) { withStatus(status); } /** *

* The status of this plugin. You can run a document with multiple plugins. *

* * @param status * The status of this plugin. You can run a document with multiple plugins. * @return Returns a reference to this object so that method calls can be chained together. * @see CommandPluginStatus */ public CommandPlugin withStatus(CommandPluginStatus status) { this.status = status.toString(); return this; } /** *

* A detailed status of the plugin execution. StatusDetails includes more information than Status * because it includes states resulting from error and concurrency control parameters. StatusDetails can show * different results than Status. For more information about these statuses, see Understanding command * statuses in the Amazon Web Services Systems Manager User Guide. StatusDetails can be one of the * following values: *

* * * @param statusDetails * A detailed status of the plugin execution. StatusDetails includes more information than * Status because it includes states resulting from error and concurrency control parameters. StatusDetails * can show different results than Status. For more information about these statuses, see Understanding * command statuses in the Amazon Web Services Systems Manager User Guide. StatusDetails can be * one of the following values:

*