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

com.amazonaws.services.cloudwatchevents.model.Target Maven / Gradle / Ivy

Go to download

The AWS SDK for Java with support for OSGi. The AWS SDK for Java provides Java APIs for building software on AWS' cost-effective, scalable, and reliable infrastructure products. The AWS Java SDK allows developers to code against APIs for all of Amazon's infrastructure web services (Amazon S3, Amazon EC2, Amazon SQS, Amazon Relational Database Service, Amazon AutoScaling, etc).

There is a newer version: 1.11.60
Show newest version
/*
 * Copyright 2011-2016 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.cloudwatchevents.model;

import java.io.Serializable;

/**
 * 

* Targets are the resources that can be invoked when a rule is triggered. For * example, AWS Lambda functions, Amazon Kinesis streams, and built-in targets. *

*

* Input and InputPath are mutually-exclusive and optional * parameters of a target. When a rule is triggered due to a matched event, if * for a target: *

*
    *
  • Neither Input nor InputPath is specified, then the entire * event is passed to the target in JSON form.
  • *
  • InputPath is specified in the form of JSONPath (e.g. * $.detail), then only the part of the event specified in the path is * passed to the target (e.g. only the detail part of the event is passed).
  • *
  • Input is specified in the form of a valid JSON, then the matched * event is overridden with this constant.
  • *
*/ public class Target implements Serializable, Cloneable { /** *

* The unique target assignment ID. *

*/ private String id; /** *

* The Amazon Resource Name (ARN) associated of the target. *

*/ private String arn; /** *

* Valid JSON text passed to the target. For more information about JSON * text, see The * JavaScript Object Notation (JSON) Data Interchange Format. *

*/ private String input; /** *

* The value of the JSONPath that is used for extracting part of the matched * event when passing it to the target. For more information about JSON * paths, see JSONPath. *

*/ private String inputPath; /** *

* The unique target assignment ID. *

* * @param id * The unique target assignment ID. */ public void setId(String id) { this.id = id; } /** *

* The unique target assignment ID. *

* * @return The unique target assignment ID. */ public String getId() { return this.id; } /** *

* The unique target assignment ID. *

* * @param id * The unique target assignment ID. * @return Returns a reference to this object so that method calls can be * chained together. */ public Target withId(String id) { setId(id); return this; } /** *

* The Amazon Resource Name (ARN) associated of the target. *

* * @param arn * The Amazon Resource Name (ARN) associated of the target. */ public void setArn(String arn) { this.arn = arn; } /** *

* The Amazon Resource Name (ARN) associated of the target. *

* * @return The Amazon Resource Name (ARN) associated of the target. */ public String getArn() { return this.arn; } /** *

* The Amazon Resource Name (ARN) associated of the target. *

* * @param arn * The Amazon Resource Name (ARN) associated of the target. * @return Returns a reference to this object so that method calls can be * chained together. */ public Target withArn(String arn) { setArn(arn); return this; } /** *

* Valid JSON text passed to the target. For more information about JSON * text, see The * JavaScript Object Notation (JSON) Data Interchange Format. *

* * @param input * Valid JSON text passed to the target. For more information about * JSON text, see The JavaScript * Object Notation (JSON) Data Interchange Format. */ public void setInput(String input) { this.input = input; } /** *

* Valid JSON text passed to the target. For more information about JSON * text, see The * JavaScript Object Notation (JSON) Data Interchange Format. *

* * @return Valid JSON text passed to the target. For more information about * JSON text, see The JavaScript * Object Notation (JSON) Data Interchange Format. */ public String getInput() { return this.input; } /** *

* Valid JSON text passed to the target. For more information about JSON * text, see The * JavaScript Object Notation (JSON) Data Interchange Format. *

* * @param input * Valid JSON text passed to the target. For more information about * JSON text, see The JavaScript * Object Notation (JSON) Data Interchange Format. * @return Returns a reference to this object so that method calls can be * chained together. */ public Target withInput(String input) { setInput(input); return this; } /** *

* The value of the JSONPath that is used for extracting part of the matched * event when passing it to the target. For more information about JSON * paths, see JSONPath. *

* * @param inputPath * The value of the JSONPath that is used for extracting part of the * matched event when passing it to the target. For more information * about JSON paths, see JSONPath. */ public void setInputPath(String inputPath) { this.inputPath = inputPath; } /** *

* The value of the JSONPath that is used for extracting part of the matched * event when passing it to the target. For more information about JSON * paths, see JSONPath. *

* * @return The value of the JSONPath that is used for extracting part of the * matched event when passing it to the target. For more information * about JSON paths, see JSONPath. */ public String getInputPath() { return this.inputPath; } /** *

* The value of the JSONPath that is used for extracting part of the matched * event when passing it to the target. For more information about JSON * paths, see JSONPath. *

* * @param inputPath * The value of the JSONPath that is used for extracting part of the * matched event when passing it to the target. For more information * about JSON paths, see JSONPath. * @return Returns a reference to this object so that method calls can be * chained together. */ public Target withInputPath(String inputPath) { setInputPath(inputPath); return this; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getId() != null) sb.append("Id: " + getId() + ","); if (getArn() != null) sb.append("Arn: " + getArn() + ","); if (getInput() != null) sb.append("Input: " + getInput() + ","); if (getInputPath() != null) sb.append("InputPath: " + getInputPath()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof Target == false) return false; Target other = (Target) obj; if (other.getId() == null ^ this.getId() == null) return false; if (other.getId() != null && other.getId().equals(this.getId()) == false) return false; if (other.getArn() == null ^ this.getArn() == null) return false; if (other.getArn() != null && other.getArn().equals(this.getArn()) == false) return false; if (other.getInput() == null ^ this.getInput() == null) return false; if (other.getInput() != null && other.getInput().equals(this.getInput()) == false) return false; if (other.getInputPath() == null ^ this.getInputPath() == null) return false; if (other.getInputPath() != null && other.getInputPath().equals(this.getInputPath()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getId() == null) ? 0 : getId().hashCode()); hashCode = prime * hashCode + ((getArn() == null) ? 0 : getArn().hashCode()); hashCode = prime * hashCode + ((getInput() == null) ? 0 : getInput().hashCode()); hashCode = prime * hashCode + ((getInputPath() == null) ? 0 : getInputPath().hashCode()); return hashCode; } @Override public Target clone() { try { return (Target) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException( "Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy