ai.api.model.Fulfillment Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of libai Show documentation
Show all versions of libai Show documentation
API.AI Java SDK allows using voice commands and integration with dialog scenarios defined for a particular agent in API.AI.
package ai.api.model;
/***********************************************************************************************************************
*
* API.AI Java SDK - client-side libraries for API.AI
* =================================================
*
* Copyright (C) 2016 by Speaktoit, Inc. (https://www.speaktoit.com)
* https://www.api.ai
*
***********************************************************************************************************************
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed under the License 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.
*
***********************************************************************************************************************/
import com.google.gson.JsonElement;
import com.google.gson.annotations.SerializedName;
import ai.api.util.StringUtils;
import java.io.Serializable;
import java.util.List;
import java.util.Map;
public class Fulfillment implements Serializable {
private static final long serialVersionUID = 1L;
@SerializedName("speech")
private String speech;
@SerializedName("messages")
private List messages;
@SerializedName("displayText")
private String displayText;
@SerializedName("data")
private Map data;
@SerializedName("source")
private String source;
@SerializedName("contextOut")
private List contextOut;
public String getSpeech() {
return speech;
}
public void setSpeech(final String speech) {
this.speech = speech;
}
public List getMessages() {
return messages;
}
public void getMessages(List messages) {
this.messages = messages;
}
public Map getData() {
return data;
}
public void setData(final Map data) {
this.data = data;
}
public String getDisplayText() {
return displayText;
}
public void setDisplayText(final String displayText) {
this.displayText = displayText;
}
public String getSource() {
return source;
}
public void setSource(final String source) {
this.source = source;
}
public List getContextOut() {
return contextOut;
}
public AIOutputContext getContext(final String name) {
if (StringUtils.isEmpty(name)) {
throw new IllegalArgumentException("name argument must be not empty");
}
if (contextOut == null) {
return null;
}
for (final AIOutputContext c : contextOut) {
if (name.equalsIgnoreCase(c.getName())) {
return c;
}
}
return null;
}
public void setContextOut(final List contextOut) {
this.contextOut = contextOut;
}
}