Class LambdaExecutionParameters
- All Implemented Interfaces:
Serializable
,SdkPojo
,ToCopyableBuilder<LambdaExecutionParameters.Builder,
LambdaExecutionParameters>
Contains parameters for a Lambda function that runs on IoT Greengrass.
- See Also:
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionbuilder()
The map of environment variables that are available to the Lambda function when it runs.final boolean
final boolean
equalsBySdkFields
(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final List
<LambdaEventSource> The list of event sources to which to subscribe to receive work messages.execArgs()
The list of arguments to pass to the Lambda function when it runs.final <T> Optional
<T> getValueForField
(String fieldName, Class<T> clazz) final boolean
For responses, this returns true if the service returned a value for the EnvironmentVariables property.final boolean
For responses, this returns true if the service returned a value for the EventSources property.final boolean
For responses, this returns true if the service returned a value for the ExecArgs property.final int
hashCode()
The encoding type that the Lambda function supports.final String
The encoding type that the Lambda function supports.final LambdaLinuxProcessParams
The parameters for the Linux process that contains the Lambda function.final Integer
The maximum amount of time in seconds that a non-pinned Lambda function can idle before the IoT Greengrass Core software stops its process.final Integer
The maximum number of instances that a non-pinned Lambda function can run at the same time.final Integer
The maximum size of the message queue for the Lambda function component.final Boolean
pinned()
Whether or not the Lambda function is pinned, or long-lived.static Class
<? extends LambdaExecutionParameters.Builder> final Integer
The interval in seconds at which a pinned (also known as long-lived) Lambda function component sends status updates to the Lambda manager component.final Integer
The maximum amount of time in seconds that the Lambda function can process a work item.Take this object and create a builder that contains all of the current property values of this object.final String
toString()
Returns a string representation of this object.Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
hasEventSources
public final boolean hasEventSources()For responses, this returns true if the service returned a value for the EventSources property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
eventSources
The list of event sources to which to subscribe to receive work messages. The Lambda function runs when it receives a message from an event source. You can subscribe this function to local publish/subscribe messages and Amazon Web Services IoT Core MQTT messages.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasEventSources()
method.- Returns:
- The list of event sources to which to subscribe to receive work messages. The Lambda function runs when it receives a message from an event source. You can subscribe this function to local publish/subscribe messages and Amazon Web Services IoT Core MQTT messages.
-
maxQueueSize
The maximum size of the message queue for the Lambda function component. The IoT Greengrass core stores messages in a FIFO (first-in-first-out) queue until it can run the Lambda function to consume each message.
- Returns:
- The maximum size of the message queue for the Lambda function component. The IoT Greengrass core stores messages in a FIFO (first-in-first-out) queue until it can run the Lambda function to consume each message.
-
maxInstancesCount
The maximum number of instances that a non-pinned Lambda function can run at the same time.
- Returns:
- The maximum number of instances that a non-pinned Lambda function can run at the same time.
-
maxIdleTimeInSeconds
The maximum amount of time in seconds that a non-pinned Lambda function can idle before the IoT Greengrass Core software stops its process.
- Returns:
- The maximum amount of time in seconds that a non-pinned Lambda function can idle before the IoT Greengrass Core software stops its process.
-
timeoutInSeconds
The maximum amount of time in seconds that the Lambda function can process a work item.
- Returns:
- The maximum amount of time in seconds that the Lambda function can process a work item.
-
statusTimeoutInSeconds
The interval in seconds at which a pinned (also known as long-lived) Lambda function component sends status updates to the Lambda manager component.
- Returns:
- The interval in seconds at which a pinned (also known as long-lived) Lambda function component sends status updates to the Lambda manager component.
-
pinned
Whether or not the Lambda function is pinned, or long-lived.
-
A pinned Lambda function starts when IoT Greengrass starts and keeps running in its own container.
-
A non-pinned Lambda function starts only when it receives a work item and exists after it idles for
maxIdleTimeInSeconds
. If the function has multiple work items, the IoT Greengrass Core software creates multiple instances of the function.
Default:
true
- Returns:
- Whether or not the Lambda function is pinned, or long-lived.
-
A pinned Lambda function starts when IoT Greengrass starts and keeps running in its own container.
-
A non-pinned Lambda function starts only when it receives a work item and exists after it idles for
maxIdleTimeInSeconds
. If the function has multiple work items, the IoT Greengrass Core software creates multiple instances of the function.
Default:
true
-
-
-
inputPayloadEncodingType
The encoding type that the Lambda function supports.
Default:
json
If the service returns an enum value that is not available in the current SDK version,
inputPayloadEncodingType
will returnLambdaInputPayloadEncodingType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available frominputPayloadEncodingTypeAsString()
.- Returns:
- The encoding type that the Lambda function supports.
Default:
json
- See Also:
-
inputPayloadEncodingTypeAsString
The encoding type that the Lambda function supports.
Default:
json
If the service returns an enum value that is not available in the current SDK version,
inputPayloadEncodingType
will returnLambdaInputPayloadEncodingType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available frominputPayloadEncodingTypeAsString()
.- Returns:
- The encoding type that the Lambda function supports.
Default:
json
- See Also:
-
hasExecArgs
public final boolean hasExecArgs()For responses, this returns true if the service returned a value for the ExecArgs property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
execArgs
The list of arguments to pass to the Lambda function when it runs.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasExecArgs()
method.- Returns:
- The list of arguments to pass to the Lambda function when it runs.
-
hasEnvironmentVariables
public final boolean hasEnvironmentVariables()For responses, this returns true if the service returned a value for the EnvironmentVariables property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified. -
environmentVariables
The map of environment variables that are available to the Lambda function when it runs.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the
hasEnvironmentVariables()
method.- Returns:
- The map of environment variables that are available to the Lambda function when it runs.
-
linuxProcessParams
The parameters for the Linux process that contains the Lambda function.
- Returns:
- The parameters for the Linux process that contains the Lambda function.
-
toBuilder
Description copied from interface:ToCopyableBuilder
Take this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilder
in interfaceToCopyableBuilder<LambdaExecutionParameters.Builder,
LambdaExecutionParameters> - Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
-
equals
-
equalsBySdkFields
Description copied from interface:SdkPojo
Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojo
class, and is generated based on a service model.If an
SdkPojo
class does not have any inherited fields,equalsBySdkFields
andequals
are essentially the same.- Specified by:
equalsBySdkFields
in interfaceSdkPojo
- Parameters:
obj
- the object to be compared with- Returns:
- true if the other object equals to this object by sdk fields, false otherwise.
-
toString
-
getValueForField
-
sdkFields
-
sdkFieldNameToField
- Specified by:
sdkFieldNameToField
in interfaceSdkPojo
- Returns:
- The mapping between the field name and its corresponding field.
-