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

software.amazon.awscdk.services.lambda.CfnLayerVersionPermissionProps Maven / Gradle / Ivy

package software.amazon.awscdk.services.lambda;

/**
 * Properties for defining a `AWS::Lambda::LayerVersionPermission`.
 * 
 * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html
 */
@javax.annotation.Generated(value = "jsii-pacmak/0.13.3 (build 3624e0f)", date = "2019-07-04T19:32:56.832Z")
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public interface CfnLayerVersionPermissionProps extends software.amazon.jsii.JsiiSerializable {
    /**
     * `AWS::Lambda::LayerVersionPermission.Action`.
     * 
     * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html#cfn-lambda-layerversionpermission-action
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    java.lang.String getAction();
    /**
     * `AWS::Lambda::LayerVersionPermission.LayerVersionArn`.
     * 
     * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html#cfn-lambda-layerversionpermission-layerversionarn
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    java.lang.String getLayerVersionArn();
    /**
     * `AWS::Lambda::LayerVersionPermission.Principal`.
     * 
     * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html#cfn-lambda-layerversionpermission-principal
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    java.lang.String getPrincipal();
    /**
     * `AWS::Lambda::LayerVersionPermission.OrganizationId`.
     * 
     * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html#cfn-lambda-layerversionpermission-organizationid
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    java.lang.String getOrganizationId();

    /**
     * @return a {@link Builder} of {@link CfnLayerVersionPermissionProps}
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    static Builder builder() {
        return new Builder();
    }

    /**
     * A builder for {@link CfnLayerVersionPermissionProps}
     */
    @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
    final class Builder {
        private java.lang.String _action;
        private java.lang.String _layerVersionArn;
        private java.lang.String _principal;
        @javax.annotation.Nullable
        private java.lang.String _organizationId;

        /**
         * Sets the value of Action
         * @param value `AWS::Lambda::LayerVersionPermission.Action`.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder withAction(final java.lang.String value) {
            this._action = java.util.Objects.requireNonNull(value, "action is required");
            return this;
        }
        /**
         * Sets the value of LayerVersionArn
         * @param value `AWS::Lambda::LayerVersionPermission.LayerVersionArn`.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder withLayerVersionArn(final java.lang.String value) {
            this._layerVersionArn = java.util.Objects.requireNonNull(value, "layerVersionArn is required");
            return this;
        }
        /**
         * Sets the value of Principal
         * @param value `AWS::Lambda::LayerVersionPermission.Principal`.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder withPrincipal(final java.lang.String value) {
            this._principal = java.util.Objects.requireNonNull(value, "principal is required");
            return this;
        }
        /**
         * Sets the value of OrganizationId
         * @param value `AWS::Lambda::LayerVersionPermission.OrganizationId`.
         * @return {@code this}
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public Builder withOrganizationId(@javax.annotation.Nullable final java.lang.String value) {
            this._organizationId = value;
            return this;
        }

        /**
         * Builds the configured instance.
         * @return a new instance of {@link CfnLayerVersionPermissionProps}
         * @throws NullPointerException if any required attribute was not provided
         */
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public CfnLayerVersionPermissionProps build() {
            return new CfnLayerVersionPermissionProps() {
                private final java.lang.String $action = java.util.Objects.requireNonNull(_action, "action is required");
                private final java.lang.String $layerVersionArn = java.util.Objects.requireNonNull(_layerVersionArn, "layerVersionArn is required");
                private final java.lang.String $principal = java.util.Objects.requireNonNull(_principal, "principal is required");
                @javax.annotation.Nullable
                private final java.lang.String $organizationId = _organizationId;

                @Override
                public java.lang.String getAction() {
                    return this.$action;
                }

                @Override
                public java.lang.String getLayerVersionArn() {
                    return this.$layerVersionArn;
                }

                @Override
                public java.lang.String getPrincipal() {
                    return this.$principal;
                }

                @Override
                public java.lang.String getOrganizationId() {
                    return this.$organizationId;
                }

                public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() {
                    com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE;
                    com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
                    obj.set("action", om.valueToTree(this.getAction()));
                    obj.set("layerVersionArn", om.valueToTree(this.getLayerVersionArn()));
                    obj.set("principal", om.valueToTree(this.getPrincipal()));
                    if (this.getOrganizationId() != null) {
                        obj.set("organizationId", om.valueToTree(this.getOrganizationId()));
                    }
                    return obj;
                }

            };
        }
    }

    /**
     * A proxy class which represents a concrete javascript instance of this type.
     */
    final static class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements software.amazon.awscdk.services.lambda.CfnLayerVersionPermissionProps {
        protected Jsii$Proxy(final software.amazon.jsii.JsiiObject.InitializationMode mode) {
            super(mode);
        }

        /**
         * `AWS::Lambda::LayerVersionPermission.Action`.
         * 
         * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html#cfn-lambda-layerversionpermission-action
         */
        @Override
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public java.lang.String getAction() {
            return this.jsiiGet("action", java.lang.String.class);
        }

        /**
         * `AWS::Lambda::LayerVersionPermission.LayerVersionArn`.
         * 
         * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html#cfn-lambda-layerversionpermission-layerversionarn
         */
        @Override
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public java.lang.String getLayerVersionArn() {
            return this.jsiiGet("layerVersionArn", java.lang.String.class);
        }

        /**
         * `AWS::Lambda::LayerVersionPermission.Principal`.
         * 
         * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html#cfn-lambda-layerversionpermission-principal
         */
        @Override
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        public java.lang.String getPrincipal() {
            return this.jsiiGet("principal", java.lang.String.class);
        }

        /**
         * `AWS::Lambda::LayerVersionPermission.OrganizationId`.
         * 
         * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-layerversionpermission.html#cfn-lambda-layerversionpermission-organizationid
         */
        @Override
        @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
        @javax.annotation.Nullable
        public java.lang.String getOrganizationId() {
            return this.jsiiGet("organizationId", java.lang.String.class);
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy