diff --git a/aws-android-sdk-connect/src/main/java/com/amazonaws/services/connect/model/BehaviorType.java b/aws-android-sdk-connect/src/main/java/com/amazonaws/services/connect/model/BehaviorType.java
new file mode 100644
index 0000000000..ba2aa98b5f
--- /dev/null
+++ b/aws-android-sdk-connect/src/main/java/com/amazonaws/services/connect/model/BehaviorType.java
@@ -0,0 +1,62 @@
+/*
+ * Copyright 2010-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.connect.model;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Behavior Type
+ */
+public enum BehaviorType {
+
+ ROUTE_CURRENT_CHANNEL_ONLY("ROUTE_CURRENT_CHANNEL_ONLY"),
+ ROUTE_ANY_CHANNEL("ROUTE_ANY_CHANNEL");
+
+ private String value;
+
+ private BehaviorType(String value) {
+ this.value = value;
+ }
+
+ @Override
+ public String toString() {
+ return value;
+ }
+
+ private static final Map
* The type of the content. Supported types are
* Constraints:
+ * For
+ *
* Constraints:
* The type of the content. Supported types are
* Constraints:
* The type of the content. Supported types are
- *
* The type of the content. Supported types are
* Constraints:
* The type of the content. Supported types are
- *
* The type of the content. Supported types are
* Returns a reference to this object so that method calls can be chained
@@ -110,8 +129,10 @@ public void setContentType(String contentType) {
*
* @param contentType
* The type of the content. Supported types are
- * text/plain
,
- * text/markdown
, and application/json
.
+ * text/markdown
, application/json
, and
+ * application/vnd.amazonaws.connect.message.interactive.response
+ * .
*
@@ -51,6 +53,13 @@ public class ChatMessage implements Serializable {
* 1, Maximum of 12000.
* application/vnd.amazonaws.connect.message.interactive.response
+ * , the Length Constraints are Minimum of 1, Maximum of 12288.
+ *
@@ -61,7 +70,9 @@ public class ChatMessage implements Serializable {
/**
* text/plain
,
- * text/markdown
, and application/json
.
+ * text/markdown
, application/json
, and
+ * application/vnd.amazonaws.connect.message.interactive.response
+ * .
*
@@ -69,8 +80,10 @@ public class ChatMessage implements Serializable {
*
* @return text/plain
, text/markdown
, and
- * application/json
.
+ * text/plain
, text/markdown
,
+ * application/json
, and
+ * application/vnd.amazonaws.connect.message.interactive.response
+ * .
* text/plain
,
- * text/markdown
, and application/json
.
+ * text/markdown
, application/json
, and
+ * application/vnd.amazonaws.connect.message.interactive.response
+ * .
*
@@ -88,8 +103,10 @@ public String getContentType() {
*
* @param contentType text/plain
, text/markdown
, and
- * application/json
.
+ * text/plain
, text/markdown
,
+ * application/json
, and
+ * application/vnd.amazonaws.connect.message.interactive.response
+ * .
* text/plain
,
- * text/markdown
, and application/json
.
+ * text/markdown
, application/json
, and
+ * application/vnd.amazonaws.connect.message.interactive.response
+ * .
* text/plain
, text/markdown
, and
- * application/json
.
+ * text/plain
, text/markdown
,
+ * application/json
, and
+ * application/vnd.amazonaws.connect.message.interactive.response
+ * .
*
+ * For
+ * application/vnd.amazonaws.connect.message.interactive.response
+ * , the Length Constraints are Minimum of 1, Maximum of 12288.
+ *
* Constraints:
@@ -159,6 +187,13 @@ public ChatMessage withContentType(String contentType) {
* Minimum of 1, Maximum of 12000.
*
+ * For
+ * application/vnd.amazonaws.connect.message.interactive.response
+ * , the Length Constraints are Minimum of 1, Maximum of 12288.
+ *
+ * For
+ * application/vnd.amazonaws.connect.message.interactive.response
+ * , the Length Constraints are Minimum of 1, Maximum of 12288.
+ *
* Constraints:
@@ -203,6 +245,13 @@ public String getContent() {
* Minimum of 1, Maximum of 12000.
*
+ * For
+ * application/vnd.amazonaws.connect.message.interactive.response
+ * , the Length Constraints are Minimum of 1, Maximum of 12288.
+ *
+ * For
+ * application/vnd.amazonaws.connect.message.interactive.response
+ * , the Length Constraints are Minimum of 1, Maximum of 12288.
+ *
* Returns a reference to this object so that method calls can be chained @@ -250,6 +306,13 @@ public void setContent(String content) { * Minimum of 1, Maximum of 12000. *
* + *
+ * For
+ * application/vnd.amazonaws.connect.message.interactive.response
+ * , the Length Constraints are Minimum of 1, Maximum of 12288.
+ *
+ * Defines the cross-channel routing behavior that allows an agent working on a + * contact in one channel to be offered a contact from a different channel. + *
+ */ +public class CrossChannelBehavior implements Serializable { + /** + *+ * Specifies the other channels that can be routed to an agent handling + * their current channel. + *
+ *
+ * Constraints:
+ * Allowed Values: ROUTE_CURRENT_CHANNEL_ONLY, ROUTE_ANY_CHANNEL
+ */
+ private String behaviorType;
+
+ /**
+ *
+ * Specifies the other channels that can be routed to an agent handling + * their current channel. + *
+ *
+ * Constraints:
+ * Allowed Values: ROUTE_CURRENT_CHANNEL_ONLY, ROUTE_ANY_CHANNEL
+ *
+ * @return
+ * Specifies the other channels that can be routed to an agent + * handling their current channel. + *
+ * @see BehaviorType + */ + public String getBehaviorType() { + return behaviorType; + } + + /** + *+ * Specifies the other channels that can be routed to an agent handling + * their current channel. + *
+ *
+ * Constraints:
+ * Allowed Values: ROUTE_CURRENT_CHANNEL_ONLY, ROUTE_ANY_CHANNEL
+ *
+ * @param behaviorType
+ * Specifies the other channels that can be routed to an agent + * handling their current channel. + *
+ * @see BehaviorType + */ + public void setBehaviorType(String behaviorType) { + this.behaviorType = behaviorType; + } + + /** + *+ * Specifies the other channels that can be routed to an agent handling + * their current channel. + *
+ *+ * Returns a reference to this object so that method calls can be chained + * together. + *
+ * Constraints:
+ * Allowed Values: ROUTE_CURRENT_CHANNEL_ONLY, ROUTE_ANY_CHANNEL
+ *
+ * @param behaviorType
+ * Specifies the other channels that can be routed to an agent + * handling their current channel. + *
+ * @return A reference to this updated object so that method calls can be + * chained together. + * @see BehaviorType + */ + public CrossChannelBehavior withBehaviorType(String behaviorType) { + this.behaviorType = behaviorType; + return this; + } + + /** + *+ * Specifies the other channels that can be routed to an agent handling + * their current channel. + *
+ *
+ * Constraints:
+ * Allowed Values: ROUTE_CURRENT_CHANNEL_ONLY, ROUTE_ANY_CHANNEL
+ *
+ * @param behaviorType
+ * Specifies the other channels that can be routed to an agent + * handling their current channel. + *
+ * @see BehaviorType + */ + public void setBehaviorType(BehaviorType behaviorType) { + this.behaviorType = behaviorType.toString(); + } + + /** + *+ * Specifies the other channels that can be routed to an agent handling + * their current channel. + *
+ *+ * Returns a reference to this object so that method calls can be chained + * together. + *
+ * Constraints:
+ * Allowed Values: ROUTE_CURRENT_CHANNEL_ONLY, ROUTE_ANY_CHANNEL
+ *
+ * @param behaviorType
+ * Specifies the other channels that can be routed to an agent + * handling their current channel. + *
+ * @return A reference to this updated object so that method calls can be + * chained together. + * @see BehaviorType + */ + public CrossChannelBehavior withBehaviorType(BehaviorType behaviorType) { + this.behaviorType = behaviorType.toString(); + 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 (getBehaviorType() != null) + sb.append("BehaviorType: " + getBehaviorType()); + sb.append("}"); + return sb.toString(); + } + + @Override + public int hashCode() { + final int prime = 31; + int hashCode = 1; + + hashCode = prime * hashCode + + ((getBehaviorType() == null) ? 0 : getBehaviorType().hashCode()); + return hashCode; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + + if (obj instanceof CrossChannelBehavior == false) + return false; + CrossChannelBehavior other = (CrossChannelBehavior) obj; + + if (other.getBehaviorType() == null ^ this.getBehaviorType() == null) + return false; + if (other.getBehaviorType() != null + && other.getBehaviorType().equals(this.getBehaviorType()) == false) + return false; + return true; + } +} diff --git a/aws-android-sdk-connect/src/main/java/com/amazonaws/services/connect/model/GetMetricDataV2Request.java b/aws-android-sdk-connect/src/main/java/com/amazonaws/services/connect/model/GetMetricDataV2Request.java index 8727434e1e..def6d72d69 100644 --- a/aws-android-sdk-connect/src/main/java/com/amazonaws/services/connect/model/GetMetricDataV2Request.java +++ b/aws-android-sdk-connect/src/main/java/com/amazonaws/services/connect/model/GetMetricDataV2Request.java @@ -68,7 +68,8 @@ public class GetMetricDataV2Request extends AmazonWebServiceRequest implements S ** The timestamp, in UNIX Epoch time format, at which to end the reporting * interval for the retrieval of historical metrics data. The time must be - * later than the start time timestamp. + * later than the start time timestamp. It cannot be later than the current + * timestamp. *
** The time range between the start and end time must be less than 24 hours. @@ -452,6 +453,11 @@ public class GetMetricDataV2Request extends AmazonWebServiceRequest implements S *
* Valid groupings and filters: Queue, Channel, Routing Profile *
+ *
+ * Threshold: For ThresholdValue
, enter any whole number from 1
+ * to 604800 (inclusive), in seconds. For Comparison
, you must
+ * enter LT
(for "Less than").
+ *
* Valid groupings and filters: Queue, Channel, Routing Profile *
+ *
+ * Threshold: For ThresholdValue
, enter any whole number from 1
+ * to 604800 (inclusive), in seconds. For Comparison
, you must
+ * enter LT
(for "Less than").
+ *
* The timestamp, in UNIX Epoch time format, at which to end the reporting * interval for the retrieval of historical metrics data. The time must be - * later than the start time timestamp. + * later than the start time timestamp. It cannot be later than the current + * timestamp. *
** The time range between the start and end time must be less than 24 hours. @@ -650,7 +662,8 @@ public GetMetricDataV2Request withStartTime(java.util.Date startTime) { * @return
* The timestamp, in UNIX Epoch time format, at which to end the * reporting interval for the retrieval of historical metrics data. - * The time must be later than the start time timestamp. + * The time must be later than the start time timestamp. It cannot + * be later than the current timestamp. *
** The time range between the start and end time must be less than @@ -665,7 +678,8 @@ public java.util.Date getEndTime() { *
* The timestamp, in UNIX Epoch time format, at which to end the reporting * interval for the retrieval of historical metrics data. The time must be - * later than the start time timestamp. + * later than the start time timestamp. It cannot be later than the current + * timestamp. *
** The time range between the start and end time must be less than 24 hours. @@ -674,7 +688,8 @@ public java.util.Date getEndTime() { * @param endTime
* The timestamp, in UNIX Epoch time format, at which to end the * reporting interval for the retrieval of historical metrics - * data. The time must be later than the start time timestamp. + * data. The time must be later than the start time timestamp. It + * cannot be later than the current timestamp. *
** The time range between the start and end time must be less @@ -689,7 +704,8 @@ public void setEndTime(java.util.Date endTime) { *
* The timestamp, in UNIX Epoch time format, at which to end the reporting * interval for the retrieval of historical metrics data. The time must be - * later than the start time timestamp. + * later than the start time timestamp. It cannot be later than the current + * timestamp. *
** The time range between the start and end time must be less than 24 hours. @@ -701,7 +717,8 @@ public void setEndTime(java.util.Date endTime) { * @param endTime
* The timestamp, in UNIX Epoch time format, at which to end the * reporting interval for the retrieval of historical metrics - * data. The time must be later than the start time timestamp. + * data. The time must be later than the start time timestamp. It + * cannot be later than the current timestamp. *
*
* The time range between the start and end time must be less
@@ -1796,6 +1813,11 @@ public GetMetricDataV2Request withGroupings(java.util.Collection
* Valid groupings and filters: Queue, Channel, Routing Profile
*
+ * Threshold: For ThresholdValue
, enter any whole number from 1
+ * to 604800 (inclusive), in seconds. For Comparison
, you must
+ * enter LT
(for "Less than").
+ *
* Valid groupings and filters: Queue, Channel, Routing Profile *
+ *
+ * Threshold: For ThresholdValue
, enter any whole number from 1
+ * to 604800 (inclusive), in seconds. For Comparison
, you must
+ * enter LT
(for "Less than").
+ *
* Valid groupings and filters: Queue, Channel, Routing Profile *
+ *
+ * Threshold: For ThresholdValue
, enter any whole
+ * number from 1 to 604800 (inclusive), in seconds. For
+ * Comparison
, you must enter LT
(for
+ * "Less than").
+ *
* Valid groupings and filters: Queue, Channel, Routing Profile *
+ *
+ * Threshold: For ThresholdValue
, enter any whole
+ * number from 1 to 604800 (inclusive), in seconds. For
+ * Comparison
, you must enter LT
(for
+ * "Less than").
+ *
* Valid groupings and filters: Queue, Channel, Routing Profile *
+ *
+ * Threshold: For ThresholdValue
, enter any whole number from 1
+ * to 604800 (inclusive), in seconds. For Comparison
, you must
+ * enter LT
(for "Less than").
+ *
* Valid groupings and filters: Queue, Channel, Routing Profile *
+ *
+ * Threshold: For ThresholdValue
, enter any whole number from 1
+ * to 604800 (inclusive), in seconds. For Comparison
, you must
+ * enter LT
(for "Less than").
+ *
* Valid groupings and filters: Queue, Channel, Routing Profile *
+ *
+ * Threshold: For ThresholdValue
, enter any whole
+ * number from 1 to 604800 (inclusive), in seconds. For
+ * Comparison
, you must enter LT
(for
+ * "Less than").
+ *
* Valid groupings and filters: Queue, Channel, Routing Profile *
+ *
+ * Threshold: For ThresholdValue
, enter any whole
+ * number from 1 to 604800 (inclusive), in seconds. For
+ * Comparison
, you must enter LT
(for
+ * "Less than").
+ *
* Valid groupings and filters: Queue, Channel, Routing Profile *
+ *
+ * Threshold: For ThresholdValue
, enter any whole number from 1
+ * to 604800 (inclusive), in seconds. For Comparison
, you must
+ * enter LT
(for "Less than").
+ *
* Valid groupings and filters: Queue, Channel, Routing Profile *
+ *
+ * Threshold: For ThresholdValue
, enter any whole number from 1
+ * to 604800 (inclusive), in seconds. For Comparison
, you must
+ * enter LT
(for "Less than").
+ *
* Valid groupings and filters: Queue, Channel, Routing Profile *
+ *
+ * Threshold: For ThresholdValue
, enter any whole
+ * number from 1 to 604800 (inclusive), in seconds. For
+ * Comparison
, you must enter LT
(for
+ * "Less than").
+ *
* Valid groupings and filters: Queue, Channel, Routing Profile *
+ *
+ * Threshold: For ThresholdValue
, enter any whole
+ * number from 1 to 604800 (inclusive), in seconds. For
+ * Comparison
, you must enter LT
(for
+ * "Less than").
+ *
* Valid groupings and filters: Queue, Channel, Routing Profile *
+ *
+ * Threshold: For ThresholdValue
, enter any whole number from 1
+ * to 604800 (inclusive), in seconds. For Comparison
, you must
+ * enter LT
(for "Less than").
+ *
* Valid groupings and filters: Queue, Channel, Routing Profile *
+ *
+ * Threshold: For ThresholdValue
, enter any whole number from 1
+ * to 604800 (inclusive), in seconds. For Comparison
, you must
+ * enter LT
(for "Less than").
+ *
* Valid groupings and filters: Queue, Channel, Routing Profile *
+ *
+ * Threshold: For ThresholdValue
, enter any whole
+ * number from 1 to 604800 (inclusive), in seconds. For
+ * Comparison
, you must enter LT
(for
+ * "Less than").
+ *
* Valid groupings and filters: Queue, Channel, Routing Profile *
+ *
+ * Threshold: For ThresholdValue
, enter any whole
+ * number from 1 to 604800 (inclusive), in seconds. For
+ * Comparison
, you must enter LT
(for
+ * "Less than").
+ *
+ * Defines the cross-channel routing behavior for each channel that is + * enabled for this Routing Profile. For example, this allows you to offer + * an agent a different contact from another channel when they are currently + * working with a contact from a Voice channel. + *
+ */ + private CrossChannelBehavior crossChannelBehavior; + /** ** The channels that agents can handle in the Contact Control Panel (CCP). @@ -287,6 +297,71 @@ public MediaConcurrency withConcurrency(Integer concurrency) { return this; } + /** + *
+ * Defines the cross-channel routing behavior for each channel that is + * enabled for this Routing Profile. For example, this allows you to offer + * an agent a different contact from another channel when they are currently + * working with a contact from a Voice channel. + *
+ * + * @return+ * Defines the cross-channel routing behavior for each channel that + * is enabled for this Routing Profile. For example, this allows you + * to offer an agent a different contact from another channel when + * they are currently working with a contact from a Voice channel. + *
+ */ + public CrossChannelBehavior getCrossChannelBehavior() { + return crossChannelBehavior; + } + + /** + *+ * Defines the cross-channel routing behavior for each channel that is + * enabled for this Routing Profile. For example, this allows you to offer + * an agent a different contact from another channel when they are currently + * working with a contact from a Voice channel. + *
+ * + * @param crossChannelBehavior+ * Defines the cross-channel routing behavior for each channel + * that is enabled for this Routing Profile. For example, this + * allows you to offer an agent a different contact from another + * channel when they are currently working with a contact from a + * Voice channel. + *
+ */ + public void setCrossChannelBehavior(CrossChannelBehavior crossChannelBehavior) { + this.crossChannelBehavior = crossChannelBehavior; + } + + /** + *+ * Defines the cross-channel routing behavior for each channel that is + * enabled for this Routing Profile. For example, this allows you to offer + * an agent a different contact from another channel when they are currently + * working with a contact from a Voice channel. + *
+ *+ * Returns a reference to this object so that method calls can be chained + * together. + * + * @param crossChannelBehavior
+ * Defines the cross-channel routing behavior for each channel + * that is enabled for this Routing Profile. For example, this + * allows you to offer an agent a different contact from another + * channel when they are currently working with a contact from a + * Voice channel. + *
+ * @return A reference to this updated object so that method calls can be + * chained together. + */ + public MediaConcurrency withCrossChannelBehavior(CrossChannelBehavior crossChannelBehavior) { + this.crossChannelBehavior = crossChannelBehavior; + return this; + } + /** * Returns a string representation of this object; useful for testing and * debugging. @@ -301,7 +376,9 @@ public String toString() { if (getChannel() != null) sb.append("Channel: " + getChannel() + ","); if (getConcurrency() != null) - sb.append("Concurrency: " + getConcurrency()); + sb.append("Concurrency: " + getConcurrency() + ","); + if (getCrossChannelBehavior() != null) + sb.append("CrossChannelBehavior: " + getCrossChannelBehavior()); sb.append("}"); return sb.toString(); } @@ -314,6 +391,8 @@ public int hashCode() { hashCode = prime * hashCode + ((getChannel() == null) ? 0 : getChannel().hashCode()); hashCode = prime * hashCode + ((getConcurrency() == null) ? 0 : getConcurrency().hashCode()); + hashCode = prime * hashCode + + ((getCrossChannelBehavior() == null) ? 0 : getCrossChannelBehavior().hashCode()); return hashCode; } @@ -337,6 +416,11 @@ public boolean equals(Object obj) { if (other.getConcurrency() != null && other.getConcurrency().equals(this.getConcurrency()) == false) return false; + if (other.getCrossChannelBehavior() == null ^ this.getCrossChannelBehavior() == null) + return false; + if (other.getCrossChannelBehavior() != null + && other.getCrossChannelBehavior().equals(this.getCrossChannelBehavior()) == false) + return false; return true; } } diff --git a/aws-android-sdk-connect/src/main/java/com/amazonaws/services/connect/model/transform/CrossChannelBehaviorJsonMarshaller.java b/aws-android-sdk-connect/src/main/java/com/amazonaws/services/connect/model/transform/CrossChannelBehaviorJsonMarshaller.java new file mode 100644 index 0000000000..89877e6cd5 --- /dev/null +++ b/aws-android-sdk-connect/src/main/java/com/amazonaws/services/connect/model/transform/CrossChannelBehaviorJsonMarshaller.java @@ -0,0 +1,45 @@ +/* + * Copyright 2010-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.connect.model.transform; + +import com.amazonaws.services.connect.model.*; +import com.amazonaws.util.DateUtils; +import com.amazonaws.util.json.AwsJsonWriter; + +/** + * JSON marshaller for POJO CrossChannelBehavior + */ +class CrossChannelBehaviorJsonMarshaller { + + public void marshall(CrossChannelBehavior crossChannelBehavior, AwsJsonWriter jsonWriter) + throws Exception { + jsonWriter.beginObject(); + if (crossChannelBehavior.getBehaviorType() != null) { + String behaviorType = crossChannelBehavior.getBehaviorType(); + jsonWriter.name("BehaviorType"); + jsonWriter.value(behaviorType); + } + jsonWriter.endObject(); + } + + private static CrossChannelBehaviorJsonMarshaller instance; + + public static CrossChannelBehaviorJsonMarshaller getInstance() { + if (instance == null) + instance = new CrossChannelBehaviorJsonMarshaller(); + return instance; + } +} diff --git a/aws-android-sdk-connect/src/main/java/com/amazonaws/services/connect/model/transform/CrossChannelBehaviorJsonUnmarshaller.java b/aws-android-sdk-connect/src/main/java/com/amazonaws/services/connect/model/transform/CrossChannelBehaviorJsonUnmarshaller.java new file mode 100644 index 0000000000..d814a1d146 --- /dev/null +++ b/aws-android-sdk-connect/src/main/java/com/amazonaws/services/connect/model/transform/CrossChannelBehaviorJsonUnmarshaller.java @@ -0,0 +1,57 @@ +/* + * Copyright 2010-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.connect.model.transform; + +import com.amazonaws.services.connect.model.*; +import com.amazonaws.transform.SimpleTypeJsonUnmarshallers.*; +import com.amazonaws.transform.*; +import com.amazonaws.util.json.AwsJsonReader; + +/** + * JSON unmarshaller for POJO CrossChannelBehavior + */ +class CrossChannelBehaviorJsonUnmarshaller implements + Unmarshaller