Class SessionState
- java.lang.Object
-
- software.amazon.awssdk.services.bedrockagentruntime.model.SessionState
-
- All Implemented Interfaces:
Serializable
,SdkPojo
,ToCopyableBuilder<SessionState.Builder,SessionState>
@Generated("software.amazon.awssdk:codegen") public final class SessionState extends Object implements SdkPojo, Serializable, ToCopyableBuilder<SessionState.Builder,SessionState>
Contains parameters that specify various attributes that persist across a session or prompt. You can define session state attributes as key-value pairs when writing a Lambda function for an action group or pass them when making an InvokeAgent request. Use session state attributes to control and provide conversational context for your agent and to help customize your agent's behavior. For more information, see Control session context.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
SessionState.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static SessionState.Builder
builder()
boolean
equals(Object obj)
boolean
equalsBySdkFields(Object obj)
<T> Optional<T>
getValueForField(String fieldName, Class<T> clazz)
int
hashCode()
boolean
hasPromptSessionAttributes()
For responses, this returns true if the service returned a value for the PromptSessionAttributes property.boolean
hasReturnControlInvocationResults()
For responses, this returns true if the service returned a value for the ReturnControlInvocationResults property.boolean
hasSessionAttributes()
For responses, this returns true if the service returned a value for the SessionAttributes property.String
invocationId()
The identifier of the invocation of an action.Map<String,String>
promptSessionAttributes()
Contains attributes that persist across a prompt and the values of those attributes.List<InvocationResultMember>
returnControlInvocationResults()
Contains information about the results from the action group invocation.List<SdkField<?>>
sdkFields()
static Class<? extends SessionState.Builder>
serializableBuilderClass()
Map<String,String>
sessionAttributes()
Contains attributes that persist across a session and the values of those attributes.SessionState.Builder
toBuilder()
String
toString()
Returns a string representation of this object.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
invocationId
public final String invocationId()
The identifier of the invocation of an action. This value must match the
invocationId
returned in theInvokeAgent
response for the action whose results are provided in thereturnControlInvocationResults
field. For more information, see Return control to the agent developer and Control session context.- Returns:
- The identifier of the invocation of an action. This value must match the
invocationId
returned in theInvokeAgent
response for the action whose results are provided in thereturnControlInvocationResults
field. For more information, see Return control to the agent developer and Control session context.
-
hasPromptSessionAttributes
public final boolean hasPromptSessionAttributes()
For responses, this returns true if the service returned a value for the PromptSessionAttributes 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.
-
promptSessionAttributes
public final Map<String,String> promptSessionAttributes()
Contains attributes that persist across a prompt and the values of those attributes. These attributes replace the $prompt_session_attributes$ placeholder variable in the orchestration prompt template. For more information, see Prompt template placeholder variables.
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
hasPromptSessionAttributes()
method.- Returns:
- Contains attributes that persist across a prompt and the values of those attributes. These attributes replace the $prompt_session_attributes$ placeholder variable in the orchestration prompt template. For more information, see Prompt template placeholder variables.
-
hasReturnControlInvocationResults
public final boolean hasReturnControlInvocationResults()
For responses, this returns true if the service returned a value for the ReturnControlInvocationResults 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.
-
returnControlInvocationResults
public final List<InvocationResultMember> returnControlInvocationResults()
Contains information about the results from the action group invocation. For more information, see Return control to the agent developer and Control session context.
If you include this field, the
inputText
field will be ignored.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
hasReturnControlInvocationResults()
method.- Returns:
- Contains information about the results from the action group invocation. For more information, see Return control to
the agent developer and Control session
context.
If you include this field, the
inputText
field will be ignored.
-
hasSessionAttributes
public final boolean hasSessionAttributes()
For responses, this returns true if the service returned a value for the SessionAttributes 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.
-
sessionAttributes
public final Map<String,String> sessionAttributes()
Contains attributes that persist across a session and the values of those attributes.
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
hasSessionAttributes()
method.- Returns:
- Contains attributes that persist across a session and the values of those attributes.
-
toBuilder
public SessionState.Builder toBuilder()
- Specified by:
toBuilder
in interfaceToCopyableBuilder<SessionState.Builder,SessionState>
-
builder
public static SessionState.Builder builder()
-
serializableBuilderClass
public static Class<? extends SessionState.Builder> serializableBuilderClass()
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFields
in interfaceSdkPojo
-
toString
public final String toString()
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
-
-