forked from loafle/openapi-generator-original
add back flash generator
This commit is contained in:
parent
84ff5cfc87
commit
3478e053e1
31
bin/flash-petstore.sh
Executable file
31
bin/flash-petstore.sh
Executable file
@ -0,0 +1,31 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
SCRIPT="$0"
|
||||||
|
|
||||||
|
while [ -h "$SCRIPT" ] ; do
|
||||||
|
ls=`ls -ld "$SCRIPT"`
|
||||||
|
link=`expr "$ls" : '.*-> \(.*\)$'`
|
||||||
|
if expr "$link" : '/.*' > /dev/null; then
|
||||||
|
SCRIPT="$link"
|
||||||
|
else
|
||||||
|
SCRIPT=`dirname "$SCRIPT"`/"$link"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ ! -d "${APP_DIR}" ]; then
|
||||||
|
APP_DIR=`dirname "$SCRIPT"`/..
|
||||||
|
APP_DIR=`cd "${APP_DIR}"; pwd`
|
||||||
|
fi
|
||||||
|
|
||||||
|
executable="./modules/swagger-codegen-cli/target/swagger-codegen-cli.jar"
|
||||||
|
|
||||||
|
if [ ! -f "$executable" ]
|
||||||
|
then
|
||||||
|
mvn clean package
|
||||||
|
fi
|
||||||
|
|
||||||
|
# if you've executed sbt assembly previously it will use that instead.
|
||||||
|
export JAVA_OPTS="${JAVA_OPTS} -XX:MaxPermSize=256M -Xmx1024M -DloggerPath=conf/log4j.properties"
|
||||||
|
ags="$@ generate -t modules/swagger-codegen/src/main/resources/flash -i modules/swagger-codegen/src/test/resources/2_0/petstore.json -l flash -o samples/client/petstore/flash"
|
||||||
|
|
||||||
|
java $JAVA_OPTS -jar $executable $ags
|
@ -0,0 +1,302 @@
|
|||||||
|
package io.swagger.codegen.languages;
|
||||||
|
|
||||||
|
import io.swagger.codegen.CliOption;
|
||||||
|
import io.swagger.codegen.CodegenConfig;
|
||||||
|
import io.swagger.codegen.CodegenType;
|
||||||
|
import io.swagger.codegen.DefaultCodegen;
|
||||||
|
import io.swagger.codegen.SupportingFile;
|
||||||
|
import io.swagger.models.properties.ArrayProperty;
|
||||||
|
import io.swagger.models.properties.MapProperty;
|
||||||
|
import io.swagger.models.properties.Property;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.HashSet;
|
||||||
|
|
||||||
|
import org.apache.commons.lang.StringUtils;
|
||||||
|
|
||||||
|
public class FlashClientCodegen extends DefaultCodegen implements CodegenConfig {
|
||||||
|
protected String packageName = null;
|
||||||
|
protected String packageVersion = null;
|
||||||
|
|
||||||
|
protected String invokerPackage = "io.swagger";
|
||||||
|
protected String sourceFolder = "src/main/flex";
|
||||||
|
|
||||||
|
public FlashClientCodegen() {
|
||||||
|
super();
|
||||||
|
|
||||||
|
modelPackage = "models";
|
||||||
|
apiPackage = "api";
|
||||||
|
outputFolder = "generated-code" + File.separatorChar + "flash";
|
||||||
|
modelTemplateFiles.put("model.mustache", ".as");
|
||||||
|
modelTemplateFiles.put("modelList.mustache", "List.as");
|
||||||
|
apiTemplateFiles.put("api.mustache", ".as");
|
||||||
|
templateDir = "flash";
|
||||||
|
|
||||||
|
languageSpecificPrimitives.clear();
|
||||||
|
languageSpecificPrimitives.add("Number");
|
||||||
|
languageSpecificPrimitives.add("Boolean");
|
||||||
|
languageSpecificPrimitives.add("String");
|
||||||
|
languageSpecificPrimitives.add("Date");
|
||||||
|
|
||||||
|
typeMapping.clear();
|
||||||
|
typeMapping.put("integer", "Number");
|
||||||
|
typeMapping.put("float", "Number");
|
||||||
|
typeMapping.put("long", "Number");
|
||||||
|
typeMapping.put("double", "Number");
|
||||||
|
typeMapping.put("array", "Array");
|
||||||
|
typeMapping.put("map", "Dictionary");
|
||||||
|
typeMapping.put("boolean", "Boolean");
|
||||||
|
typeMapping.put("string", "String");
|
||||||
|
typeMapping.put("date", "Date");
|
||||||
|
typeMapping.put("DateTime", "Date");
|
||||||
|
typeMapping.put("object", "Object");
|
||||||
|
typeMapping.put("file", "File");
|
||||||
|
|
||||||
|
// from
|
||||||
|
reservedWords = new HashSet<String>(
|
||||||
|
Arrays.asList(
|
||||||
|
"add", "for", "lt", "tellTarget", "and", "function", "ne", "this", "break", "ge", "new", "typeof", "continue", "gt", "not", "var", "delete", "if", "on", "void", "do", "ifFrameLoaded", "onClipEvent", "while", "else", "in", "or", "with", "eq", "le", "return"));
|
||||||
|
|
||||||
|
cliOptions.clear();
|
||||||
|
cliOptions.add(new CliOption("packageName", "flash package name (convention: package.name), default: swagger.client"));
|
||||||
|
cliOptions.add(new CliOption("packageVersion", "flash package version, default: 1.0.0"));
|
||||||
|
cliOptions.add(new CliOption("invokerPackage", "root package for generated code"));
|
||||||
|
cliOptions.add(new CliOption("sourceFolder", "source folder for generated code. e.g. src/main/flex"));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void processOpts() {
|
||||||
|
super.processOpts();
|
||||||
|
|
||||||
|
if (additionalProperties.containsKey("invokerPackage")) {
|
||||||
|
this.setInvokerPackage((String) additionalProperties.get("invokerPackage"));
|
||||||
|
} else {
|
||||||
|
//not set, use default to be passed to template
|
||||||
|
additionalProperties.put("invokerPackage", invokerPackage);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (additionalProperties.containsKey("sourceFolder")) {
|
||||||
|
this.setSourceFolder((String) additionalProperties.get("sourceFolder"));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (additionalProperties.containsKey("packageName")) {
|
||||||
|
setPackageName((String) additionalProperties.get("packageName"));
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
setPackageName("swagger.client");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (additionalProperties.containsKey("packageVersion")) {
|
||||||
|
setPackageVersion((String) additionalProperties.get("packageVersion"));
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
setPackageVersion("1.0.0");
|
||||||
|
}
|
||||||
|
|
||||||
|
additionalProperties.put("packageName", packageName);
|
||||||
|
additionalProperties.put("packageVersion", packageVersion);
|
||||||
|
|
||||||
|
modelPackage = invokerPackage + File.separatorChar + "client" + File.separatorChar + "model";
|
||||||
|
apiPackage = invokerPackage + File.separatorChar + "client" + File.separatorChar + "api";
|
||||||
|
|
||||||
|
final String invokerFolder = (sourceFolder + File.separator + invokerPackage + File.separator + "swagger" + File.separator).replace(".", File.separator).replace('.', File.separatorChar);
|
||||||
|
|
||||||
|
supportingFiles.add(new SupportingFile("ApiInvoker.as", invokerFolder + "common", "ApiInvoker.as"));
|
||||||
|
supportingFiles.add(new SupportingFile("ApiUrlHelper.as", invokerFolder + "common", "ApiUrlHelper.as"));
|
||||||
|
supportingFiles.add(new SupportingFile("ApiUserCredentials.as", invokerFolder + "common", "ApiUserCredentials.as"));
|
||||||
|
supportingFiles.add(new SupportingFile("ListWrapper.as", invokerFolder + "common", "ListWrapper.as"));
|
||||||
|
supportingFiles.add(new SupportingFile("SwaggerApi.as", invokerFolder + "common", "SwaggerApi.as"));
|
||||||
|
supportingFiles.add(new SupportingFile("XMLWriter.as", invokerFolder + "common", "XMLWriter.as"));
|
||||||
|
supportingFiles.add(new SupportingFile("ApiError.as", invokerFolder + "exception", "ApiErrors.as"));
|
||||||
|
supportingFiles.add(new SupportingFile("ApiErrorCodes.as", invokerFolder + "exception", "ApiErrorCodes.as"));
|
||||||
|
supportingFiles.add(new SupportingFile("ApiClientEvent.as", invokerFolder + "event", "ApiClientEvent.as"));
|
||||||
|
supportingFiles.add(new SupportingFile("Response.as", invokerFolder + "event", "Response.as"));
|
||||||
|
supportingFiles.add(new SupportingFile("build.properties", sourceFolder, "build.properties"));
|
||||||
|
supportingFiles.add(new SupportingFile("build.xml", sourceFolder, "build.xml"));
|
||||||
|
supportingFiles.add(new SupportingFile("AirExecutorApp-app.xml", sourceFolder + File.separatorChar + "bin", "AirExecutorApp-app.xml"));
|
||||||
|
supportingFiles.add(new SupportingFile("ASAXB-0.1.1.swc", sourceFolder + File.separatorChar + "lib", "ASAXB-0.1.1.swc"));
|
||||||
|
supportingFiles.add(new SupportingFile("as3corelib.swc", sourceFolder + File.separatorChar + "lib", "as3corelib.swc"));
|
||||||
|
supportingFiles.add(new SupportingFile("flexunit-4.1.0_RC2-28-flex_3.5.0.12683.swc", sourceFolder + File.separator + "lib" + File.separator + "ext", "flexunit-4.1.0_RC2-28-flex_3.5.0.12683.swc"));
|
||||||
|
supportingFiles.add(new SupportingFile("flexunit-aircilistener-4.1.0_RC2-28-3.5.0.12683.swc", sourceFolder + File.separator + "lib" + File.separator + "ext", "flexunit-aircilistener-4.1.0_RC2-28-3.5.0.12683.swc"));
|
||||||
|
supportingFiles.add(new SupportingFile("flexunit-cilistener-4.1.0_RC2-28-3.5.0.12683.swc", sourceFolder + File.separator + "lib" + File.separator + "ext", "flexunit-cilistener-4.1.0_RC2-28-3.5.0.12683.swc"));
|
||||||
|
supportingFiles.add(new SupportingFile("flexunit-core-flex-4.0.0.2-sdk3.5.0.12683.swc", sourceFolder + File.separator + "lib" + File.separator + "ext", "flexunit-core-flex-4.0.0.2-sdk3.5.0.12683.swc"));
|
||||||
|
}
|
||||||
|
|
||||||
|
private static String dropDots(String str) {
|
||||||
|
return str.replaceAll("\\.", "_");
|
||||||
|
}
|
||||||
|
|
||||||
|
public CodegenType getTag() {
|
||||||
|
return CodegenType.CLIENT;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return "flash";
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getHelp() {
|
||||||
|
return "Generates a Flash client library.";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String escapeReservedWord(String name) {
|
||||||
|
return name + "_";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String apiFileFolder() {
|
||||||
|
return (outputFolder + File.separatorChar + sourceFolder + File.separatorChar + apiPackage().replace('.', File.separatorChar)).replace('/', File.separatorChar);
|
||||||
|
}
|
||||||
|
|
||||||
|
public String modelFileFolder() {
|
||||||
|
return (outputFolder + File.separatorChar + sourceFolder + File.separatorChar + modelPackage().replace('.', File.separatorChar)).replace('/', File.separatorChar);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getTypeDeclaration(Property p) {
|
||||||
|
if (p instanceof ArrayProperty) {
|
||||||
|
ArrayProperty ap = (ArrayProperty) p;
|
||||||
|
Property inner = ap.getItems();
|
||||||
|
return getSwaggerType(p) + "[" + getTypeDeclaration(inner) + "]";
|
||||||
|
} else if (p instanceof MapProperty) {
|
||||||
|
MapProperty mp = (MapProperty) p;
|
||||||
|
Property inner = mp.getAdditionalProperties();
|
||||||
|
|
||||||
|
return getSwaggerType(p) + "(str, " + getTypeDeclaration(inner) + ")";
|
||||||
|
}
|
||||||
|
return super.getTypeDeclaration(p);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getSwaggerType(Property p) {
|
||||||
|
String swaggerType = super.getSwaggerType(p);
|
||||||
|
String type = null;
|
||||||
|
if (typeMapping.containsKey(swaggerType)) {
|
||||||
|
type = typeMapping.get(swaggerType);
|
||||||
|
if (languageSpecificPrimitives.contains(type)) {
|
||||||
|
return type;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
type = toModelName(swaggerType);
|
||||||
|
}
|
||||||
|
return type;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String toDefaultValue(Property p) {
|
||||||
|
return "None";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toVarName(String name) {
|
||||||
|
// replace - with _ e.g. created-at => created_at
|
||||||
|
name = name.replaceAll("-", "_");
|
||||||
|
|
||||||
|
// if it's all uppper case, convert to lower case
|
||||||
|
if (name.matches("^[A-Z_]*$")) {
|
||||||
|
name = name.toLowerCase();
|
||||||
|
}
|
||||||
|
|
||||||
|
// underscore the variable name
|
||||||
|
// petId => pet_id
|
||||||
|
name = camelize(dropDots(name), true);
|
||||||
|
|
||||||
|
// for reserved word or word starting with number, append _
|
||||||
|
if (reservedWords.contains(name) || name.matches("^\\d.*")) {
|
||||||
|
name = escapeReservedWord(name);
|
||||||
|
}
|
||||||
|
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toParamName(String name) {
|
||||||
|
// should be the same as variable name
|
||||||
|
return toVarName(name);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toModelName(String name) {
|
||||||
|
// model name cannot use reserved keyword, e.g. return
|
||||||
|
if (reservedWords.contains(name)) {
|
||||||
|
throw new RuntimeException(name + " (reserved word) cannot be used as a model name");
|
||||||
|
}
|
||||||
|
|
||||||
|
// camelize the model name
|
||||||
|
// phone_number => PhoneNumber
|
||||||
|
return camelize(name);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toModelFilename(String name) {
|
||||||
|
// model name cannot use reserved keyword, e.g. return
|
||||||
|
if (reservedWords.contains(name)) {
|
||||||
|
throw new RuntimeException(name + " (reserved word) cannot be used as a model name");
|
||||||
|
}
|
||||||
|
|
||||||
|
// underscore the model file name
|
||||||
|
// PhoneNumber => phone_number
|
||||||
|
return camelize(dropDots(name));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toApiFilename(String name) {
|
||||||
|
// replace - with _ e.g. created-at => created_at
|
||||||
|
name = name.replaceAll("-", "_");
|
||||||
|
|
||||||
|
// e.g. PhoneNumberApi.rb => phone_number_api.rb
|
||||||
|
return camelize(name) + "Api";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toApiName(String name) {
|
||||||
|
if (name.length() == 0) {
|
||||||
|
return "DefaultApi";
|
||||||
|
}
|
||||||
|
// e.g. phone_number_api => PhoneNumberApi
|
||||||
|
return camelize(name) + "Api";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toApiVarName(String name) {
|
||||||
|
if (name.length() == 0) {
|
||||||
|
return "DefaultApi";
|
||||||
|
}
|
||||||
|
return camelize(name) + "Api";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toOperationId(String operationId) {
|
||||||
|
// throw exception if method name is empty
|
||||||
|
if (StringUtils.isEmpty(operationId)) {
|
||||||
|
throw new RuntimeException("Empty method name (operationId) not allowed");
|
||||||
|
}
|
||||||
|
|
||||||
|
// method name cannot use reserved keyword, e.g. return
|
||||||
|
if (reservedWords.contains(operationId)) {
|
||||||
|
throw new RuntimeException(operationId + " (reserved word) cannot be used as method name");
|
||||||
|
}
|
||||||
|
|
||||||
|
return underscore(operationId);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPackageName(String packageName) {
|
||||||
|
this.packageName = packageName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPackageVersion(String packageVersion) {
|
||||||
|
this.packageVersion = packageVersion;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setInvokerPackage(String invokerPackage) {
|
||||||
|
this.invokerPackage = invokerPackage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSourceFolder(String sourceFolder) {
|
||||||
|
this.sourceFolder = sourceFolder;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
|||||||
io.swagger.codegen.languages.AndroidClientCodegen
|
io.swagger.codegen.languages.AndroidClientCodegen
|
||||||
io.swagger.codegen.languages.AsyncScalaClientCodegen
|
io.swagger.codegen.languages.AsyncScalaClientCodegen
|
||||||
io.swagger.codegen.languages.CSharpClientCodegen
|
io.swagger.codegen.languages.CSharpClientCodegen
|
||||||
|
io.swagger.codegen.languages.FlashClientCodegen
|
||||||
io.swagger.codegen.languages.JavaClientCodegen
|
io.swagger.codegen.languages.JavaClientCodegen
|
||||||
io.swagger.codegen.languages.JaxRSServerCodegen
|
io.swagger.codegen.languages.JaxRSServerCodegen
|
||||||
io.swagger.codegen.languages.JavaInflectorServerCodegen
|
io.swagger.codegen.languages.JavaInflectorServerCodegen
|
||||||
|
@ -1,87 +1,87 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||||
<application xmlns="http://ns.adobe.com/air/application/2.0">
|
<application xmlns="http://ns.adobe.com/air/application/2.0">
|
||||||
|
|
||||||
<!-- Adobe AIR Application Descriptor File Template.
|
<!-- Adobe AIR Application Descriptor File Template.
|
||||||
|
|
||||||
Specifies parameters for identifying, installing, and launching AIR applications.
|
Specifies parameters for identifying, installing, and launching AIR applications.
|
||||||
|
|
||||||
xmlns - The Adobe AIR namespace: http://ns.adobe.com/air/application/2.0
|
xmlns - The Adobe AIR namespace: http://ns.adobe.com/air/application/2.0
|
||||||
The last segment of the namespace specifies the version
|
The last segment of the namespace specifies the version
|
||||||
of the AIR runtime required for this application to run.
|
of the AIR runtime required for this application to run.
|
||||||
|
|
||||||
minimumPatchLevel - The minimum patch level of the AIR runtime required to run
|
minimumPatchLevel - The minimum patch level of the AIR runtime required to run
|
||||||
the application. Optional.
|
the application. Optional.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<!-- A universally unique application identifier. Must be unique across all AIR applications.
|
<!-- A universally unique application identifier. Must be unique across all AIR applications.
|
||||||
Using a reverse DNS-style name as the id is recommended. (Eg. com.example.ExampleApplication.) Required. -->
|
Using a reverse DNS-style name as the id is recommended. (Eg. com.example.ExampleApplication.) Required. -->
|
||||||
<id>AirExecutorApp</id>
|
<id>AirExecutorApp</id>
|
||||||
|
|
||||||
<!-- Used as the filename for the application. Required. -->
|
<!-- Used as the filename for the application. Required. -->
|
||||||
<filename>AirExecutorApp</filename>
|
<filename>AirExecutorApp</filename>
|
||||||
|
|
||||||
<!-- The name that is displayed in the AIR application installer.
|
<!-- The name that is displayed in the AIR application installer.
|
||||||
May have multiple values for each language. See samples or xsd schema file. Optional. -->
|
May have multiple values for each language. See samples or xsd schema file. Optional. -->
|
||||||
<name>AirExecutorApp</name>
|
<name>AirExecutorApp</name>
|
||||||
|
|
||||||
<!-- An application version designator (such as "v1", "2.5", or "Alpha 1"). Required. -->
|
<!-- An application version designator (such as "v1", "2.5", or "Alpha 1"). Required. -->
|
||||||
<version>v1</version>
|
<version>v1</version>
|
||||||
|
|
||||||
<!-- Description, displayed in the AIR application installer.
|
<!-- Description, displayed in the AIR application installer.
|
||||||
May have multiple values for each language. See samples or xsd schema file. Optional. -->
|
May have multiple values for each language. See samples or xsd schema file. Optional. -->
|
||||||
<!-- <description></description> -->
|
<!-- <description></description> -->
|
||||||
|
|
||||||
<!-- Copyright information. Optional -->
|
<!-- Copyright information. Optional -->
|
||||||
<!-- <copyright></copyright> -->
|
<!-- <copyright></copyright> -->
|
||||||
|
|
||||||
<!-- Publisher ID. Used if you're updating an application created prior to 1.5.3 -->
|
<!-- Publisher ID. Used if you're updating an application created prior to 1.5.3 -->
|
||||||
<!-- <publisherID></publisherID> -->
|
<!-- <publisherID></publisherID> -->
|
||||||
|
|
||||||
<!-- Settings for the application's initial window. Required. -->
|
<!-- Settings for the application's initial window. Required. -->
|
||||||
<initialWindow>
|
<initialWindow>
|
||||||
<!-- The main SWF or HTML file of the application. Required. -->
|
<!-- The main SWF or HTML file of the application. Required. -->
|
||||||
<!-- Note: In Flash Builder, the SWF reference is set automatically. -->
|
<!-- Note: In Flash Builder, the SWF reference is set automatically. -->
|
||||||
<content>AirExecutorApp.swf</content>
|
<content>AirExecutorApp.swf</content>
|
||||||
|
|
||||||
<!-- The title of the main window. Optional. -->
|
<!-- The title of the main window. Optional. -->
|
||||||
<!-- <title></title> -->
|
<!-- <title></title> -->
|
||||||
|
|
||||||
<!-- The type of system chrome to use (either "standard" or "none"). Optional. Default standard. -->
|
<!-- The type of system chrome to use (either "standard" or "none"). Optional. Default standard. -->
|
||||||
<!-- <systemChrome></systemChrome> -->
|
<!-- <systemChrome></systemChrome> -->
|
||||||
|
|
||||||
<!-- Whether the window is transparent. Only applicable when systemChrome is none. Optional. Default false. -->
|
<!-- Whether the window is transparent. Only applicable when systemChrome is none. Optional. Default false. -->
|
||||||
<!-- <transparent></transparent> -->
|
<!-- <transparent></transparent> -->
|
||||||
|
|
||||||
<!-- Whether the window is initially visible. Optional. Default false. -->
|
<!-- Whether the window is initially visible. Optional. Default false. -->
|
||||||
<!-- <visible></visible> -->
|
<!-- <visible></visible> -->
|
||||||
|
|
||||||
<!-- Whether the user can minimize the window. Optional. Default true. -->
|
<!-- Whether the user can minimize the window. Optional. Default true. -->
|
||||||
<!-- <minimizable></minimizable> -->
|
<!-- <minimizable></minimizable> -->
|
||||||
|
|
||||||
<!-- Whether the user can maximize the window. Optional. Default true. -->
|
<!-- Whether the user can maximize the window. Optional. Default true. -->
|
||||||
<!-- <maximizable></maximizable> -->
|
<!-- <maximizable></maximizable> -->
|
||||||
|
|
||||||
<!-- Whether the user can resize the window. Optional. Default true. -->
|
<!-- Whether the user can resize the window. Optional. Default true. -->
|
||||||
<!-- <resizable></resizable> -->
|
<!-- <resizable></resizable> -->
|
||||||
|
|
||||||
<!-- The window's initial width in pixels. Optional. -->
|
<!-- The window's initial width in pixels. Optional. -->
|
||||||
<!-- <width></width> -->
|
<!-- <width></width> -->
|
||||||
|
|
||||||
<!-- The window's initial height in pixels. Optional. -->
|
<!-- The window's initial height in pixels. Optional. -->
|
||||||
<!-- <height></height> -->
|
<!-- <height></height> -->
|
||||||
|
|
||||||
<!-- The window's initial x position. Optional. -->
|
<!-- The window's initial x position. Optional. -->
|
||||||
<!-- <x></x> -->
|
<!-- <x></x> -->
|
||||||
|
|
||||||
<!-- The window's initial y position. Optional. -->
|
<!-- The window's initial y position. Optional. -->
|
||||||
<!-- <y></y> -->
|
<!-- <y></y> -->
|
||||||
|
|
||||||
<!-- The window's minimum size, specified as a width/height pair in pixels, such as "400 200". Optional. -->
|
<!-- The window's minimum size, specified as a width/height pair in pixels, such as "400 200". Optional. -->
|
||||||
<!-- <minSize></minSize> -->
|
<!-- <minSize></minSize> -->
|
||||||
|
|
||||||
<!-- The window's initial maximum size, specified as a width/height pair in pixels, such as "1600 1200". Optional. -->
|
<!-- The window's initial maximum size, specified as a width/height pair in pixels, such as "1600 1200". Optional. -->
|
||||||
<!-- <maxSize></maxSize> -->
|
<!-- <maxSize></maxSize> -->
|
||||||
</initialWindow>
|
</initialWindow>
|
||||||
|
|
||||||
<!-- We recommend omitting the supportedProfiles element, -->
|
<!-- We recommend omitting the supportedProfiles element, -->
|
||||||
<!-- which in turn permits your application to be deployed to all -->
|
<!-- which in turn permits your application to be deployed to all -->
|
||||||
@ -90,57 +90,57 @@
|
|||||||
<!-- only the profiles which your application does support. -->
|
<!-- only the profiles which your application does support. -->
|
||||||
<!-- <supportedProfiles>desktop extendedDesktop mobileDevice extendedMobileDevice</supportedProfiles> -->
|
<!-- <supportedProfiles>desktop extendedDesktop mobileDevice extendedMobileDevice</supportedProfiles> -->
|
||||||
|
|
||||||
<!-- The subpath of the standard default installation location to use. Optional. -->
|
<!-- The subpath of the standard default installation location to use. Optional. -->
|
||||||
<!-- <installFolder></installFolder> -->
|
<!-- <installFolder></installFolder> -->
|
||||||
|
|
||||||
<!-- The subpath of the Programs menu to use. (Ignored on operating systems without a Programs menu.) Optional. -->
|
<!-- The subpath of the Programs menu to use. (Ignored on operating systems without a Programs menu.) Optional. -->
|
||||||
<!-- <programMenuFolder></programMenuFolder> -->
|
<!-- <programMenuFolder></programMenuFolder> -->
|
||||||
|
|
||||||
<!-- The icon the system uses for the application. For at least one resolution,
|
<!-- The icon the system uses for the application. For at least one resolution,
|
||||||
specify the path to a PNG file included in the AIR package. Optional. -->
|
specify the path to a PNG file included in the AIR package. Optional. -->
|
||||||
<!-- <icon>
|
<!-- <icon>
|
||||||
<image16x16></image16x16>
|
<image16x16></image16x16>
|
||||||
<image32x32></image32x32>
|
<image32x32></image32x32>
|
||||||
<image48x48></image48x48>
|
<image48x48></image48x48>
|
||||||
<image128x128></image128x128>
|
<image128x128></image128x128>
|
||||||
</icon> -->
|
</icon> -->
|
||||||
|
|
||||||
<!-- Whether the application handles the update when a user double-clicks an update version
|
<!-- Whether the application handles the update when a user double-clicks an update version
|
||||||
of the AIR file (true), or the default AIR application installer handles the update (false).
|
of the AIR file (true), or the default AIR application installer handles the update (false).
|
||||||
Optional. Default false. -->
|
Optional. Default false. -->
|
||||||
<!-- <customUpdateUI></customUpdateUI> -->
|
<!-- <customUpdateUI></customUpdateUI> -->
|
||||||
|
|
||||||
<!-- Whether the application can be launched when the user clicks a link in a web browser.
|
<!-- Whether the application can be launched when the user clicks a link in a web browser.
|
||||||
Optional. Default false. -->
|
Optional. Default false. -->
|
||||||
<!-- <allowBrowserInvocation></allowBrowserInvocation> -->
|
<!-- <allowBrowserInvocation></allowBrowserInvocation> -->
|
||||||
|
|
||||||
<!-- Listing of file types for which the application can register. Optional. -->
|
<!-- Listing of file types for which the application can register. Optional. -->
|
||||||
<!-- <fileTypes> -->
|
<!-- <fileTypes> -->
|
||||||
|
|
||||||
<!-- Defines one file type. Optional. -->
|
<!-- Defines one file type. Optional. -->
|
||||||
<!-- <fileType> -->
|
<!-- <fileType> -->
|
||||||
|
|
||||||
<!-- The name that the system displays for the registered file type. Required. -->
|
<!-- The name that the system displays for the registered file type. Required. -->
|
||||||
<!-- <name></name> -->
|
<!-- <name></name> -->
|
||||||
|
|
||||||
<!-- The extension to register. Required. -->
|
<!-- The extension to register. Required. -->
|
||||||
<!-- <extension></extension> -->
|
<!-- <extension></extension> -->
|
||||||
|
|
||||||
<!-- The description of the file type. Optional. -->
|
<!-- The description of the file type. Optional. -->
|
||||||
<!-- <description></description> -->
|
<!-- <description></description> -->
|
||||||
|
|
||||||
<!-- The MIME content type. -->
|
<!-- The MIME content type. -->
|
||||||
<!-- <contentType></contentType> -->
|
<!-- <contentType></contentType> -->
|
||||||
|
|
||||||
<!-- The icon to display for the file type. Optional. -->
|
<!-- The icon to display for the file type. Optional. -->
|
||||||
<!-- <icon>
|
<!-- <icon>
|
||||||
<image16x16></image16x16>
|
<image16x16></image16x16>
|
||||||
<image32x32></image32x32>
|
<image32x32></image32x32>
|
||||||
<image48x48></image48x48>
|
<image48x48></image48x48>
|
||||||
<image128x128></image128x128>
|
<image128x128></image128x128>
|
||||||
</icon> -->
|
</icon> -->
|
||||||
|
|
||||||
<!-- </fileType> -->
|
<!-- </fileType> -->
|
||||||
<!-- </fileTypes> -->
|
<!-- </fileTypes> -->
|
||||||
|
|
||||||
</application>
|
</application>
|
||||||
|
@ -62,11 +62,11 @@
|
|||||||
<arg line="-doc-sources ${sourcepath}"/>
|
<arg line="-doc-sources ${sourcepath}"/>
|
||||||
<arg line="-source-path ${sourcepath}"/>
|
<arg line="-source-path ${sourcepath}"/>
|
||||||
<arg line="-footer 'Copyright Wordnik'"/>
|
<arg line="-footer 'Copyright Wordnik'"/>
|
||||||
<arg line="-package com.wordnik.swagger.api 'Contains the apis which are used by clients to make calls to the services deployed'"/>
|
<arg line="-package io.swagger.api 'Contains the apis which are used by clients to make calls to the services deployed'"/>
|
||||||
<arg line="-package com.wordnik.swagger.codegen.model 'Contains common classes which encapsulate data elements required'"/>
|
<arg line="-package io.swagger.codegen.model 'Contains common classes which encapsulate data elements required'"/>
|
||||||
<arg line="-package com.wordnik.swagger.common 'Contains classes which are used by the api classes to invoke the deployed api like SwaggerApi - a base class, ApiUserCredentials, etc.'"/>
|
<arg line="-package io.swagger.common 'Contains classes which are used by the api classes to invoke the deployed api like SwaggerApi - a base class, ApiUserCredentials, etc.'"/>
|
||||||
<arg line="-package com.wordnik.swagger.event 'Results of calls made to Wordnik are returned via dispatched events. This package contains such event classes. Right now thats just ApiClientEvent and Response.'"/>
|
<arg line="-package io.swagger.event 'Results of calls made to Wordnik are returned via dispatched events. This package contains such event classes. Right now thats just ApiClientEvent and Response.'"/>
|
||||||
<arg line="-package com.wordnik.swagger.exception 'Contains classes that encapsulate the errors generated'"/>
|
<arg line="-package io.swagger.exception 'Contains classes that encapsulate the errors generated'"/>
|
||||||
|
|
||||||
<arg value="-window-title"/>
|
<arg value="-window-title"/>
|
||||||
<arg value="${title}"/>
|
<arg value="${title}"/>
|
||||||
|
255
samples/client/petstore/flash/common/ApiInvoker.as
Normal file
255
samples/client/petstore/flash/common/ApiInvoker.as
Normal file
@ -0,0 +1,255 @@
|
|||||||
|
package io.swagger.common {
|
||||||
|
import io.swagger.event.ApiClientEvent;
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
|
||||||
|
public class ApiInvoker extends EventDispatcher {
|
||||||
|
|
||||||
|
private static const DELETE_DATA_DUMMY:String = "dummyDataRequiredForDeleteOverride";
|
||||||
|
private static const X_HTTP_OVERRIDE_KEY:String = "X-HTTP-Method-Override";
|
||||||
|
private static const CONTENT_TYPE_HEADER_KEY:String = "Content-Type";
|
||||||
|
|
||||||
|
public function ApiInvoker(apiUsageCredentials:ApiUserCredentials, eventNotifier:EventDispatcher, useProxy:Boolean = true) {
|
||||||
|
_apiUsageCredentials = apiUsageCredentials;
|
||||||
|
_useProxyServer = useProxy;
|
||||||
|
if (_apiUsageCredentials.hostName != null) {
|
||||||
|
_proxyHostName = _apiUsageCredentials.hostName;
|
||||||
|
}
|
||||||
|
_apiPath = _apiUsageCredentials.apiPath;
|
||||||
|
_proxyPath = _apiUsageCredentials.proxyPath;
|
||||||
|
_apiProxyServerUrl = _apiUsageCredentials.apiProxyServerUrl;
|
||||||
|
_apiEventNotifier = eventNotifier;
|
||||||
|
}
|
||||||
|
public var _apiEventNotifier:EventDispatcher;
|
||||||
|
internal var _apiProxyServerUrl:String = "";
|
||||||
|
internal var _useProxyServer:Boolean = true;
|
||||||
|
private var _apiUsageCredentials:ApiUserCredentials;
|
||||||
|
private var _baseUrl:String = "";
|
||||||
|
private var _proxyHostName:String = "";
|
||||||
|
private var _apiPath:String = "";
|
||||||
|
private var _proxyPath:String = "";
|
||||||
|
|
||||||
|
public function invokeAPI(resourceURL:String, method:String, queryParams:Dictionary, postObject:Object, headerParams:Dictionary):AsyncToken {
|
||||||
|
//make the communication
|
||||||
|
if (_useProxyServer) {
|
||||||
|
resourceURL = _apiProxyServerUrl + resourceURL;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
resourceURL = "http://" + _proxyHostName + _apiPath + resourceURL;
|
||||||
|
}
|
||||||
|
|
||||||
|
var counter:int = 0;
|
||||||
|
var symbol:String = "&";
|
||||||
|
var paramValue:Object;
|
||||||
|
for (var paramName:String in queryParams) {
|
||||||
|
paramValue = queryParams[paramName];
|
||||||
|
//var key:String = paramName;
|
||||||
|
// do stuff
|
||||||
|
symbol = "&";
|
||||||
|
if (counter == 0) {
|
||||||
|
symbol = "?";
|
||||||
|
}
|
||||||
|
resourceURL = resourceURL + symbol + paramName + "=" + paramValue.toString();
|
||||||
|
counter++;
|
||||||
|
|
||||||
|
}
|
||||||
|
// trace(resourceURL);
|
||||||
|
//create a httpservice and invoke the rest url waiting for response
|
||||||
|
var requestHeader:Object = new Object();
|
||||||
|
if (headerParams != null) {
|
||||||
|
for (var key:String in headerParams) {
|
||||||
|
requestHeader[key] = headerParams[key];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
resourceURL = ApiUrlHelper.appendTokenInfo(resourceURL, requestHeader, _apiUsageCredentials);
|
||||||
|
|
||||||
|
var bodyData:String = marshal(postObject).toString();//restRequest.postData;
|
||||||
|
|
||||||
|
return doRestCall(resourceURL, onApiRequestResult, onApiRequestFault, method, bodyData, requestHeader, "application/xml");
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public function marshal(source:Object):Object {
|
||||||
|
// trace("marshal got - " + source)
|
||||||
|
if (source is String) {
|
||||||
|
return source;
|
||||||
|
} else if (source is Array && source.length > 0) {
|
||||||
|
var writer:XMLWriter = new XMLWriter();
|
||||||
|
var sourceArray:Array = source as Array;
|
||||||
|
var arrayEnclosure:String = getArrayEnclosure(sourceArray);
|
||||||
|
writer.xml.setName(arrayEnclosure);
|
||||||
|
|
||||||
|
for (var i:int = 0; i < sourceArray.length; i++) {
|
||||||
|
var o:Object = sourceArray[i];
|
||||||
|
writer.xml.appendChild(marshal(o));
|
||||||
|
}
|
||||||
|
return writer.xml;
|
||||||
|
} else
|
||||||
|
return marshalObject(source);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function marshalObject(source:Object):XML {
|
||||||
|
var writer:XMLWriter = new XMLWriter();
|
||||||
|
var objDescriptor:XML = describeType(source);
|
||||||
|
var property:XML;
|
||||||
|
var propertyType:String;
|
||||||
|
var propertyValue:Object;
|
||||||
|
|
||||||
|
var qualifiedClassName:String = objDescriptor.@name;
|
||||||
|
qualifiedClassName = qualifiedClassName.replace("::", ".");
|
||||||
|
var className:String = qualifiedClassName.substring(qualifiedClassName.lastIndexOf(".") + 1);
|
||||||
|
className = className().toLowerCase() + className.substring(1);
|
||||||
|
writer.xml.setName(className);
|
||||||
|
|
||||||
|
for each(property in objDescriptor.elements("variable")) {
|
||||||
|
propertyValue = source[property.@name];
|
||||||
|
if (propertyValue != null) {
|
||||||
|
if (ObjectUtil.isSimple(propertyValue)) {
|
||||||
|
writer.addProperty(property.@name, propertyValue.toString());
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
writer.addProperty(property.@name, marshal(propertyValue).toXMLString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for each(property in objDescriptor.elements("accessor")) {
|
||||||
|
if (property.@access == "readonly") {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
propertyValue = source[property.@name];
|
||||||
|
if (source[property.@name] != null) {
|
||||||
|
if (ObjectUtil.isSimple(propertyValue)) {
|
||||||
|
writer.addProperty(property.@name, propertyValue.toString());
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
writer.addProperty(property.@name, marshal(propertyValue).toXMLString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return writer.xml;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function escapeString(str:String):String {
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
|
||||||
|
private function doRestCall(url:String, resultFunction:Function, faultFunction:Function = null,
|
||||||
|
restMethod:String = "GET",
|
||||||
|
bodyData:Object = null, headers:Object = null, contentType:String = "application/xml"):AsyncToken {
|
||||||
|
var httpService:HTTPService = new HTTPService();
|
||||||
|
|
||||||
|
if (headers == null) {
|
||||||
|
headers = new Object();
|
||||||
|
}
|
||||||
|
httpService.method = restMethod;
|
||||||
|
|
||||||
|
if (restMethod.toUpperCase() != HTTPRequestMessage.GET_METHOD) {
|
||||||
|
//httpService.method = HTTPRequestMessage.POST_METHOD; - not required as we're using the proxy
|
||||||
|
if (bodyData == null) {
|
||||||
|
bodyData = new Object();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (restMethod == HTTPRequestMessage.DELETE_METHOD) {
|
||||||
|
headers[X_HTTP_OVERRIDE_KEY] = HTTPRequestMessage.DELETE_METHOD;
|
||||||
|
bodyData = DELETE_DATA_DUMMY;
|
||||||
|
}
|
||||||
|
else if (restMethod == HTTPRequestMessage.PUT_METHOD) {
|
||||||
|
headers[X_HTTP_OVERRIDE_KEY] = HTTPRequestMessage.PUT_METHOD;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
headers[CONTENT_TYPE_HEADER_KEY] = contentType;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
//if the request type is GET and content type is xml then the Flex HTTPService converts it to a POST ... yeah
|
||||||
|
contentType = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
httpService.url = url;
|
||||||
|
httpService.contentType = contentType;
|
||||||
|
httpService.resultFormat = "e4x";
|
||||||
|
httpService.headers = headers;
|
||||||
|
httpService.addEventListener(ResultEvent.RESULT, resultFunction);
|
||||||
|
if (faultFunction != null) {
|
||||||
|
httpService.addEventListener(FaultEvent.FAULT, faultFunction);
|
||||||
|
}
|
||||||
|
if (_useProxyServer) {
|
||||||
|
httpService.useProxy = true;
|
||||||
|
|
||||||
|
var channelSet:ChannelSet = new ChannelSet();
|
||||||
|
var httpChannel:HTTPChannel = new HTTPChannel();
|
||||||
|
httpChannel.uri = ApiUrlHelper.getProxyUrl(_proxyHostName, _proxyPath);
|
||||||
|
channelSet.addChannel(httpChannel);
|
||||||
|
httpService.channelSet = channelSet;
|
||||||
|
}
|
||||||
|
|
||||||
|
return httpService.send(bodyData);
|
||||||
|
}
|
||||||
|
|
||||||
|
private function onApiRequestResult(event:ResultEvent):void {
|
||||||
|
var completionListener:Function = event.token.completionListener;
|
||||||
|
var result:Object = event.result;
|
||||||
|
var resultType:Class = event.token.returnType;
|
||||||
|
var resultObject:Object;
|
||||||
|
if (resultType != null) {
|
||||||
|
var context:ASAXBContext = ASAXBContext.newInstance(resultType);
|
||||||
|
var unmarshaller:Unmarshaller = context.createUnmarshaller();
|
||||||
|
var resultXML:XML = new XML(event.result);
|
||||||
|
try {
|
||||||
|
resultObject = unmarshaller.unmarshal(resultXML);
|
||||||
|
}
|
||||||
|
catch (error:TypeError) {
|
||||||
|
var errorResponse:Response = new Response(false, null, "Could not unmarshall response");
|
||||||
|
if (_apiEventNotifier != null) { //dispatch event via assigned dispatcher
|
||||||
|
var failureEvent:ApiClientEvent = new ApiClientEvent(event.token.completionEventType);
|
||||||
|
failureEvent.response = errorResponse;
|
||||||
|
_apiEventNotifier.dispatchEvent(failureEvent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (resultObject is ListWrapper) {
|
||||||
|
resultObject = ListWrapper(resultObject).getList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var response:Response = new Response(true, resultObject);
|
||||||
|
response.requestId = event.token.requestId;
|
||||||
|
var successEventType:String = event.token.completionEventType != null ? event.token.completionEventType : ApiClientEvent.SUCCESS_EVENT;
|
||||||
|
|
||||||
|
if (_apiEventNotifier != null) { //dispatch event via assigned dispatcher
|
||||||
|
var successEvent:ApiClientEvent = new ApiClientEvent(successEventType);
|
||||||
|
successEvent.response = response;
|
||||||
|
_apiEventNotifier.dispatchEvent(successEvent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private function onApiRequestFault(event:FaultEvent):void {
|
||||||
|
var completionListener:Function = event.token.completionListener;
|
||||||
|
if (completionListener != null) {
|
||||||
|
completionListener.call(null, new Response(false, null, event.fault.faultString));
|
||||||
|
}
|
||||||
|
|
||||||
|
var failureEventType:String = event.token.completionEventType != null ? event.token.completionEventType : ApiClientEvent.FAILURE_EVENT;
|
||||||
|
|
||||||
|
if (_apiEventNotifier != null) { //dispatch event via assigned dispatcher
|
||||||
|
var failureEvent:ApiClientEvent = new ApiClientEvent(failureEventType);
|
||||||
|
failureEvent.response = new Response(false, null, event.fault.faultString);
|
||||||
|
_apiEventNotifier.dispatchEvent(failureEvent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private function getArrayEnclosure(arr:Array):String {
|
||||||
|
if (arr != null && arr.length > 0) {
|
||||||
|
var className:String = flash.utils.getQualifiedClassName(arr[0])
|
||||||
|
if (className.indexOf("::") > 0)
|
||||||
|
className = className.substr(className.indexOf("::") + 2, className.length)
|
||||||
|
|
||||||
|
return className.substring(0, 1).toLowerCase() + className.substring(1, className.length) + "s";
|
||||||
|
} else
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
41
samples/client/petstore/flash/common/ApiUrlHelper.as
Normal file
41
samples/client/petstore/flash/common/ApiUrlHelper.as
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
package io.swagger.common {
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @private
|
||||||
|
* Internal class for the Rest client
|
||||||
|
*/
|
||||||
|
internal class ApiUrlHelper {
|
||||||
|
|
||||||
|
private static const API_URL_KEY:String = "api_key";
|
||||||
|
private static const AUTH_TOKEN_URL_KEY:String = "auth_token";
|
||||||
|
|
||||||
|
private static const HTTP_URL_PREFIX:String = "http://";
|
||||||
|
|
||||||
|
internal static function appendTokenInfo(restUrl:String, requestHeader: Object, credentials: ApiUserCredentials): String {
|
||||||
|
//checks for the presence api credentials on client initialization and not repeated here
|
||||||
|
if(restUrl.indexOf("?") == -1){
|
||||||
|
restUrl += ( "?" + API_URL_KEY + "=" + credentials.apiToken );
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
restUrl += ( "&" + API_URL_KEY + "=" + credentials.apiToken );
|
||||||
|
}
|
||||||
|
requestHeader.api_key = credentials.apiToken;
|
||||||
|
|
||||||
|
if(credentials.authToken != null && credentials.authToken != ""){
|
||||||
|
restUrl += ( "&" + AUTH_TOKEN_URL_KEY + "=" + credentials.authToken );
|
||||||
|
requestHeader.auth_token = credentials.authToken;
|
||||||
|
}
|
||||||
|
|
||||||
|
return restUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
internal static function getProxyUrl(hostName: String, proxyPath: String): String{
|
||||||
|
if (hostName(hostName.length - 1) == "/") //remove trailing slash
|
||||||
|
{
|
||||||
|
hostName = hostName.substring(0, hostName.length - 1);
|
||||||
|
}
|
||||||
|
return HTTP_URL_PREFIX + hostName + proxyPath;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
63
samples/client/petstore/flash/common/ApiUserCredentials.as
Normal file
63
samples/client/petstore/flash/common/ApiUserCredentials.as
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
package io.swagger.common {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Api account credentials.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class ApiUserCredentials {
|
||||||
|
/**
|
||||||
|
* An apitoken that is passed along with the requests
|
||||||
|
*/
|
||||||
|
public var apiToken:String;
|
||||||
|
/**
|
||||||
|
* A valid auth_token which could be necessary for certain operations
|
||||||
|
*/
|
||||||
|
public var authToken:String;
|
||||||
|
/**
|
||||||
|
* The userId which could be required for certain operations
|
||||||
|
*/
|
||||||
|
public var userId:Number;
|
||||||
|
/**
|
||||||
|
* The host name for the Rest API eg. api.companyName.com
|
||||||
|
*/
|
||||||
|
public var hostName:String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The base path to the api resources - used along with the hostname
|
||||||
|
* eg. /v4
|
||||||
|
*/
|
||||||
|
public var apiPath: String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The base path to the blazeds proxy
|
||||||
|
* eg. /v4/messagebroker/restproxy
|
||||||
|
*/
|
||||||
|
public var proxyPath: String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If a proxy server has been set up for the services specify the URL here. This value is used when the Api is invoked with
|
||||||
|
* the value useProxy as true
|
||||||
|
*/
|
||||||
|
public var apiProxyServerUrl: String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor of ApiUserCredentials
|
||||||
|
* @param apiToken An apitoken that is passed along with the requests
|
||||||
|
* @param authToken A valid auth_token which could necessary for certain operations
|
||||||
|
* @param hostName The host name for the Rest API eg. api.companyName.com
|
||||||
|
* @param userId The userId which is required for certain operations - currently, get user lists
|
||||||
|
*/
|
||||||
|
public function ApiUserCredentials(hostName: String, apiPath: String, apiToken: String,
|
||||||
|
authToken: String = null, userId: Number = -1, apiProxyServerUrl: String="",
|
||||||
|
proxyPath: String = null) {
|
||||||
|
this.hostName = hostName;
|
||||||
|
this.apiToken = apiToken;
|
||||||
|
this.authToken = authToken;
|
||||||
|
this.userId = userId;
|
||||||
|
this.apiPath = apiPath;
|
||||||
|
this.apiProxyServerUrl = apiProxyServerUrl;
|
||||||
|
this.proxyPath = proxyPath;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
0
samples/client/petstore/flash/common/ListWrapper.as
Normal file
0
samples/client/petstore/flash/common/ListWrapper.as
Normal file
75
samples/client/petstore/flash/common/SwaggerApi.as
Normal file
75
samples/client/petstore/flash/common/SwaggerApi.as
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
package io.swagger.common
|
||||||
|
{
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
|
||||||
|
import flash.events.EventDispatcher;
|
||||||
|
import flash.events.IEventDispatcher;
|
||||||
|
|
||||||
|
import mx.utils.UIDUtil;
|
||||||
|
|
||||||
|
public class SwaggerApi extends EventDispatcher
|
||||||
|
{
|
||||||
|
|
||||||
|
protected var _apiUsageCredentials:ApiUserCredentials;
|
||||||
|
protected var _apiEventNotifier:EventDispatcher;
|
||||||
|
protected var _apiInvoker: ApiInvoker;
|
||||||
|
|
||||||
|
protected var _useProxyServer: Boolean = false;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor for the api client
|
||||||
|
* @param apiCredentials Wrapper object for tokens and hostName required towards authentication
|
||||||
|
* @param eventDispatcher Optional event dispatcher that when provided is used by the SDK to dispatch any Response
|
||||||
|
*/
|
||||||
|
public function SwaggerApi(apiCredentials: ApiUserCredentials, eventDispatcher: EventDispatcher = null) {
|
||||||
|
super();
|
||||||
|
_apiUsageCredentials = apiCredentials;
|
||||||
|
_apiEventNotifier = eventDispatcher;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function useProxyServer(value:Boolean, proxyServerUrl: String = null):void {
|
||||||
|
_useProxyServer = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function getApiInvoker():ApiInvoker {
|
||||||
|
if(_apiInvoker == null){
|
||||||
|
if(_apiEventNotifier == null){
|
||||||
|
_apiEventNotifier = this;
|
||||||
|
}
|
||||||
|
_apiInvoker = new ApiInvoker(_apiUsageCredentials, _apiEventNotifier, _useProxyServer);
|
||||||
|
}
|
||||||
|
return _apiInvoker;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function getUniqueId():String {
|
||||||
|
return UIDUtil.createUID();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method for returning the path value
|
||||||
|
* For a string value an empty value is returned if the value is null
|
||||||
|
* @param value
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
protected static function toPathValue(value: Object): String {
|
||||||
|
if(value is Array){
|
||||||
|
return arrayToPathValue(value as Array);
|
||||||
|
}
|
||||||
|
return value == null ? "" : value.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method for returning a path value
|
||||||
|
* For a list of objects a comma separated string is returned
|
||||||
|
* @param objects
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
protected static function arrayToPathValue(objects: Array): String {
|
||||||
|
var out: String = "";
|
||||||
|
|
||||||
|
return objects.join(",");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
28
samples/client/petstore/flash/common/XMLWriter.as
Normal file
28
samples/client/petstore/flash/common/XMLWriter.as
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
package io.swagger.common
|
||||||
|
{
|
||||||
|
public class XMLWriter
|
||||||
|
{
|
||||||
|
public var xml:XML;
|
||||||
|
|
||||||
|
public function XMLWriter()
|
||||||
|
{
|
||||||
|
xml=<obj/>;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function reset():void {
|
||||||
|
xml=new XML();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function addProperty(propertyName:String, propertyValue:String):XML {
|
||||||
|
var xmlProperty:XML=<new/>
|
||||||
|
xmlProperty.setName(propertyName);
|
||||||
|
xmlProperty.appendChild(propertyValue);
|
||||||
|
xml.appendChild(xmlProperty);
|
||||||
|
return xmlProperty;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function addAttribute(propertyName:String, attribute:String, attributeValue:String):void {
|
||||||
|
xml.elements(propertyName)[0].@[attribute]=attributeValue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
36
samples/client/petstore/flash/event/ApiClientEvent.as
Normal file
36
samples/client/petstore/flash/event/ApiClientEvent.as
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
package io.swagger.event {
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
|
||||||
|
import flash.events.Event;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Event dispatched by the SDK to communicate success events and failure events.
|
||||||
|
* If a custom dispatcher has been assigned by the consumer on the generated client then the dispatcher dispatches
|
||||||
|
* the ApiClientEvent to indicate success or failure of the invocation using the Response
|
||||||
|
*/
|
||||||
|
public class ApiClientEvent extends Event{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Event type to indicate a unsuccessful invocation
|
||||||
|
*/
|
||||||
|
public static const FAILURE_EVENT:String = "unsuccesfulInvocation";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Event type to indicate a successful invocation
|
||||||
|
*/
|
||||||
|
public static const SUCCESS_EVENT:String = "successfulInvocation";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The Response object which contains response info
|
||||||
|
*/
|
||||||
|
public var response: Response;
|
||||||
|
/**
|
||||||
|
* Any additional info
|
||||||
|
*/
|
||||||
|
public var message:String;
|
||||||
|
|
||||||
|
public function ApiClientEvent(type:String,bubbles:Boolean = false,cancelable:Boolean = false) {
|
||||||
|
super(type, bubbles, cancelable);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
56
samples/client/petstore/flash/event/Response.as
Normal file
56
samples/client/petstore/flash/event/Response.as
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
package io.swagger.event {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Response contains info on the result of an API invocation.
|
||||||
|
* A completion listener will expect this Response object.
|
||||||
|
*/
|
||||||
|
public class Response {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Indicates whether the invoked operation failed or succeeded
|
||||||
|
*/
|
||||||
|
public var isSuccess:Boolean;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The payload of the succesful operation eg. a Word in a WordRequest
|
||||||
|
*/
|
||||||
|
public var payload:Object;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Error message in case of failure
|
||||||
|
*/
|
||||||
|
public var errorMessage:String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A request Id that was passed in by the user as a param when invoking the operation
|
||||||
|
*/
|
||||||
|
public var requestId:String;
|
||||||
|
private static const API_ERROR_MSG:String = "Api error response: ";
|
||||||
|
|
||||||
|
public function Response(isSuccessful: Boolean, payload: Object = null, errorMessage: String = null, requestId: String = null) {
|
||||||
|
this.isSuccess = isSuccessful;
|
||||||
|
this.payload = payload;
|
||||||
|
this.errorMessage = getFriendlyMessage(errorMessage);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static function getFriendlyMessage(errorMessage: String): String{
|
||||||
|
var result: String = errorMessage;
|
||||||
|
if(errorMessage == null)
|
||||||
|
return null;
|
||||||
|
var errorCode: String;
|
||||||
|
var errorCodeArray: Array = errorMessage.match(/(?<=HTTP\/1.1 )[0-9][0-9][0-9]/);
|
||||||
|
if(errorCodeArray != null && errorCodeArray.length == 1){
|
||||||
|
errorCode = String(errorCodeArray[0]);
|
||||||
|
}
|
||||||
|
var msgArray: Array = errorMessage.match(/(?<=HTTP\/1.1 [0-9][0-9][0-9] )[^]*/);
|
||||||
|
if(msgArray != null && msgArray.length == 1){
|
||||||
|
result = API_ERROR_MSG + String(msgArray[0]);
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function toString(): String {
|
||||||
|
return "Response (requestId:" + requestId + "; isSuccess:" + isSuccess + "; errorMessage:" + errorMessage + "; payload:" + payload + ")";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
34
samples/client/petstore/flash/exception/ApiErrorCodes.as
Normal file
34
samples/client/petstore/flash/exception/ApiErrorCodes.as
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
package io.swagger.exception
|
||||||
|
{
|
||||||
|
public class ApiErrorCodes
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* System exception.
|
||||||
|
*/
|
||||||
|
public static const SYSTEM_EXCEPTION: Number = 0;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* With Arguments as current key.
|
||||||
|
*/
|
||||||
|
public static const API_KEY_NOT_VALID: Number = 1000;
|
||||||
|
/**
|
||||||
|
* With arguments as current token value
|
||||||
|
*/
|
||||||
|
public static const AUTH_TOKEN_NOT_VALID: Number = 1001;
|
||||||
|
/**
|
||||||
|
* With arguments as input JSON and output class anme
|
||||||
|
*/
|
||||||
|
public static const ERROR_CONVERTING_JSON_TO_JAVA: Number = 1002;
|
||||||
|
/**
|
||||||
|
* With arguments as JAVA class name
|
||||||
|
*/
|
||||||
|
public static const ERROR_CONVERTING_JAVA_TO_JSON: Number = 1003;
|
||||||
|
|
||||||
|
public static const ERROR_FROM_WEBSERVICE_CALL: Number = 1004;
|
||||||
|
/**
|
||||||
|
* With arguments as current API server name
|
||||||
|
*/
|
||||||
|
public static const API_SERVER_NOT_VALID: Number = 1005;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
BIN
samples/client/petstore/flash/lib/as3corelib.swc
Normal file
BIN
samples/client/petstore/flash/lib/as3corelib.swc
Normal file
Binary file not shown.
@ -0,0 +1,146 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||||
|
<application xmlns="http://ns.adobe.com/air/application/2.0">
|
||||||
|
|
||||||
|
<!-- Adobe AIR Application Descriptor File Template.
|
||||||
|
|
||||||
|
Specifies parameters for identifying, installing, and launching AIR applications.
|
||||||
|
|
||||||
|
xmlns - The Adobe AIR namespace: http://ns.adobe.com/air/application/2.0
|
||||||
|
The last segment of the namespace specifies the version
|
||||||
|
of the AIR runtime required for this application to run.
|
||||||
|
|
||||||
|
minimumPatchLevel - The minimum patch level of the AIR runtime required to run
|
||||||
|
the application. Optional.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!-- A universally unique application identifier. Must be unique across all AIR applications.
|
||||||
|
Using a reverse DNS-style name as the id is recommended. (Eg. com.example.ExampleApplication.) Required. -->
|
||||||
|
<id>AirExecutorApp</id>
|
||||||
|
|
||||||
|
<!-- Used as the filename for the application. Required. -->
|
||||||
|
<filename>AirExecutorApp</filename>
|
||||||
|
|
||||||
|
<!-- The name that is displayed in the AIR application installer.
|
||||||
|
May have multiple values for each language. See samples or xsd schema file. Optional. -->
|
||||||
|
<name>AirExecutorApp</name>
|
||||||
|
|
||||||
|
<!-- An application version designator (such as "v1", "2.5", or "Alpha 1"). Required. -->
|
||||||
|
<version>v1</version>
|
||||||
|
|
||||||
|
<!-- Description, displayed in the AIR application installer.
|
||||||
|
May have multiple values for each language. See samples or xsd schema file. Optional. -->
|
||||||
|
<!-- <description></description> -->
|
||||||
|
|
||||||
|
<!-- Copyright information. Optional -->
|
||||||
|
<!-- <copyright></copyright> -->
|
||||||
|
|
||||||
|
<!-- Publisher ID. Used if you're updating an application created prior to 1.5.3 -->
|
||||||
|
<!-- <publisherID></publisherID> -->
|
||||||
|
|
||||||
|
<!-- Settings for the application's initial window. Required. -->
|
||||||
|
<initialWindow>
|
||||||
|
<!-- The main SWF or HTML file of the application. Required. -->
|
||||||
|
<!-- Note: In Flash Builder, the SWF reference is set automatically. -->
|
||||||
|
<content>AirExecutorApp.swf</content>
|
||||||
|
|
||||||
|
<!-- The title of the main window. Optional. -->
|
||||||
|
<!-- <title></title> -->
|
||||||
|
|
||||||
|
<!-- The type of system chrome to use (either "standard" or "none"). Optional. Default standard. -->
|
||||||
|
<!-- <systemChrome></systemChrome> -->
|
||||||
|
|
||||||
|
<!-- Whether the window is transparent. Only applicable when systemChrome is none. Optional. Default false. -->
|
||||||
|
<!-- <transparent></transparent> -->
|
||||||
|
|
||||||
|
<!-- Whether the window is initially visible. Optional. Default false. -->
|
||||||
|
<!-- <visible></visible> -->
|
||||||
|
|
||||||
|
<!-- Whether the user can minimize the window. Optional. Default true. -->
|
||||||
|
<!-- <minimizable></minimizable> -->
|
||||||
|
|
||||||
|
<!-- Whether the user can maximize the window. Optional. Default true. -->
|
||||||
|
<!-- <maximizable></maximizable> -->
|
||||||
|
|
||||||
|
<!-- Whether the user can resize the window. Optional. Default true. -->
|
||||||
|
<!-- <resizable></resizable> -->
|
||||||
|
|
||||||
|
<!-- The window's initial width in pixels. Optional. -->
|
||||||
|
<!-- <width></width> -->
|
||||||
|
|
||||||
|
<!-- The window's initial height in pixels. Optional. -->
|
||||||
|
<!-- <height></height> -->
|
||||||
|
|
||||||
|
<!-- The window's initial x position. Optional. -->
|
||||||
|
<!-- <x></x> -->
|
||||||
|
|
||||||
|
<!-- The window's initial y position. Optional. -->
|
||||||
|
<!-- <y></y> -->
|
||||||
|
|
||||||
|
<!-- The window's minimum size, specified as a width/height pair in pixels, such as "400 200". Optional. -->
|
||||||
|
<!-- <minSize></minSize> -->
|
||||||
|
|
||||||
|
<!-- The window's initial maximum size, specified as a width/height pair in pixels, such as "1600 1200". Optional. -->
|
||||||
|
<!-- <maxSize></maxSize> -->
|
||||||
|
</initialWindow>
|
||||||
|
|
||||||
|
<!-- We recommend omitting the supportedProfiles element, -->
|
||||||
|
<!-- which in turn permits your application to be deployed to all -->
|
||||||
|
<!-- devices supported by AIR. If you wish to restrict deployment -->
|
||||||
|
<!-- (i.e., to only mobile devices) then add this element and list -->
|
||||||
|
<!-- only the profiles which your application does support. -->
|
||||||
|
<!-- <supportedProfiles>desktop extendedDesktop mobileDevice extendedMobileDevice</supportedProfiles> -->
|
||||||
|
|
||||||
|
<!-- The subpath of the standard default installation location to use. Optional. -->
|
||||||
|
<!-- <installFolder></installFolder> -->
|
||||||
|
|
||||||
|
<!-- The subpath of the Programs menu to use. (Ignored on operating systems without a Programs menu.) Optional. -->
|
||||||
|
<!-- <programMenuFolder></programMenuFolder> -->
|
||||||
|
|
||||||
|
<!-- The icon the system uses for the application. For at least one resolution,
|
||||||
|
specify the path to a PNG file included in the AIR package. Optional. -->
|
||||||
|
<!-- <icon>
|
||||||
|
<image16x16></image16x16>
|
||||||
|
<image32x32></image32x32>
|
||||||
|
<image48x48></image48x48>
|
||||||
|
<image128x128></image128x128>
|
||||||
|
</icon> -->
|
||||||
|
|
||||||
|
<!-- Whether the application handles the update when a user double-clicks an update version
|
||||||
|
of the AIR file (true), or the default AIR application installer handles the update (false).
|
||||||
|
Optional. Default false. -->
|
||||||
|
<!-- <customUpdateUI></customUpdateUI> -->
|
||||||
|
|
||||||
|
<!-- Whether the application can be launched when the user clicks a link in a web browser.
|
||||||
|
Optional. Default false. -->
|
||||||
|
<!-- <allowBrowserInvocation></allowBrowserInvocation> -->
|
||||||
|
|
||||||
|
<!-- Listing of file types for which the application can register. Optional. -->
|
||||||
|
<!-- <fileTypes> -->
|
||||||
|
|
||||||
|
<!-- Defines one file type. Optional. -->
|
||||||
|
<!-- <fileType> -->
|
||||||
|
|
||||||
|
<!-- The name that the system displays for the registered file type. Required. -->
|
||||||
|
<!-- <name></name> -->
|
||||||
|
|
||||||
|
<!-- The extension to register. Required. -->
|
||||||
|
<!-- <extension></extension> -->
|
||||||
|
|
||||||
|
<!-- The description of the file type. Optional. -->
|
||||||
|
<!-- <description></description> -->
|
||||||
|
|
||||||
|
<!-- The MIME content type. -->
|
||||||
|
<!-- <contentType></contentType> -->
|
||||||
|
|
||||||
|
<!-- The icon to display for the file type. Optional. -->
|
||||||
|
<!-- <icon>
|
||||||
|
<image16x16></image16x16>
|
||||||
|
<image32x32></image32x32>
|
||||||
|
<image48x48></image48x48>
|
||||||
|
<image128x128></image128x128>
|
||||||
|
</icon> -->
|
||||||
|
|
||||||
|
<!-- </fileType> -->
|
||||||
|
<!-- </fileTypes> -->
|
||||||
|
|
||||||
|
</application>
|
29
samples/client/petstore/flash/src/main/flex/build.properties
Normal file
29
samples/client/petstore/flash/src/main/flex/build.properties
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
# Window and document title for the documentation
|
||||||
|
title=Sample app AS3 SDK API Documentation
|
||||||
|
|
||||||
|
#Path to the source folder where the .as files are located
|
||||||
|
sourcepath = ./src/main/flex
|
||||||
|
|
||||||
|
# Class-folders you want to search for classes to be included in the docs, seperated by spaces (for example ../com/ ../net/ )
|
||||||
|
# to include every .as and .mxml file within your project, just state ../
|
||||||
|
domainextensions = ./src/main/flex
|
||||||
|
|
||||||
|
# The Location of deployment library on your Computer (PC/Mac) for compiled SWC file
|
||||||
|
liboutputfolder = bin
|
||||||
|
liboutputfile = as3-sample-sdk.swc
|
||||||
|
libpath = lib
|
||||||
|
|
||||||
|
# The Location of the output folder for your generated documents
|
||||||
|
docsoutputfolder = asdoc
|
||||||
|
|
||||||
|
# The location of the test sources
|
||||||
|
testsourcepath = ./src/test/flex
|
||||||
|
|
||||||
|
# Home directory for flex sdk, change this to build for Mac or PC using # as comment
|
||||||
|
FLEX4_SDK_HOME = /usr/local/flex_sdk_4.1.0/
|
||||||
|
#FLEX4_SDK_HOME = /Applications/Adobe Flash Builder 4/sdks/4.1.0/
|
||||||
|
|
||||||
|
# The location of your asdoc.exe, change this to build for Mac or PC using # as comment
|
||||||
|
#asdoc.exe = C:/Program Files/Adobe/Flash Builder 4/sdks/3.5.0/bin/asdoc.exe
|
||||||
|
#asdoc.exe = /Applications/Adobe Flash Builder 4/sdks/3.5.0/bin/asdoc
|
||||||
|
|
192
samples/client/petstore/flash/src/main/flex/build.xml
Normal file
192
samples/client/petstore/flash/src/main/flex/build.xml
Normal file
@ -0,0 +1,192 @@
|
|||||||
|
<!-- Flex Library Project ASDocs -->
|
||||||
|
|
||||||
|
<project name="AS3SDKCompile" default="compile" basedir=".">
|
||||||
|
|
||||||
|
<!-- import our build properties file -->
|
||||||
|
<property file="./build.properties"/>
|
||||||
|
<property environment="env"/>
|
||||||
|
<property name="FLEX_HOME" value="${FLEX4_SDK_HOME}"/>
|
||||||
|
<property name="FLEX4_HOME" value="${FLEX4_SDK_HOME}"/>
|
||||||
|
|
||||||
|
<!--<property name="flexunit.swc" value="../lib/ext/flexunit-4.1.0_RC2-28-flex_3.5.0.12683.swc" />
|
||||||
|
<property name="flexunit-uilistener.swc" value="../lib/ext/flexunit-uilistener-4.1.0_RC2-28-flex_3.5.0.12683.swc" />
|
||||||
|
<property name="flexunit-cilistener.swc" value="../lib/ext/flexunit-cilistener-4.1.0_RC2-28-flex_3.5.0.12683.swc" />-->
|
||||||
|
|
||||||
|
<!-- Flex Ant Tasks used to perform compc and mxml compiling more info at http://labs.adobe.com/wiki/index.php/Flex_Ant_Tasks -->
|
||||||
|
<taskdef resource="flexTasks.tasks" classpath="${FLEX_HOME}/ant/lib/flexTasks.jar"/>
|
||||||
|
|
||||||
|
<target name="setup" description="perform an setup operations"/>
|
||||||
|
|
||||||
|
<!-- Execute the ASDoc Compile wich runs 3 seperate tasks in a series -->
|
||||||
|
<target name="compile" description="series of tasks to create docs and swc">
|
||||||
|
|
||||||
|
<!--<antcall target="cleanDir" description="clean the docs directory"/>-->
|
||||||
|
|
||||||
|
<!--<antcall target="asDocs" description="full build of asdocs"/>-->
|
||||||
|
|
||||||
|
<antcall target="buildSWC" description="build the SWC file"/>
|
||||||
|
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="deploy" description="perform an deployment operations"/>
|
||||||
|
|
||||||
|
<target name="install" description="perform an installation operations"/>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
|
||||||
|
DELETE the existing output folder and files and then re-generate the output folder
|
||||||
|
|
||||||
|
-->
|
||||||
|
|
||||||
|
<target name="clean"
|
||||||
|
description="DELETE the existing output folder and files and then re-generate the output folder">
|
||||||
|
|
||||||
|
<delete dir="${basedir}/${docsoutputfolder}" failonerror="true" includeemptydirs="true"/>
|
||||||
|
<delete file="${basedir}/${liboutputfolder}/${liboutputfile}"/>
|
||||||
|
<delete dir="${basedir}/dist" failonerror="true" includeemptydirs="true"/>
|
||||||
|
|
||||||
|
<mkdir dir="${basedir}/${docsoutputfolder}"/>
|
||||||
|
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
|
||||||
|
Run the ASDoc executable and generate the ASDocs to the new output folder
|
||||||
|
|
||||||
|
-->
|
||||||
|
|
||||||
|
<target name="docs" description="Run the ASDoc executable and generate the ASDocs to the new output folder">
|
||||||
|
|
||||||
|
<exec executable="${FLEX_HOME}/bin/asdoc" failonerror="true">
|
||||||
|
|
||||||
|
<arg line="-doc-sources ${sourcepath}"/>
|
||||||
|
<arg line="-source-path ${sourcepath}"/>
|
||||||
|
<arg line="-footer 'Copyright Wordnik'"/>
|
||||||
|
<arg line="-package io.swagger.api 'Contains the apis which are used by clients to make calls to the services deployed'"/>
|
||||||
|
<arg line="-package io.swagger.codegen.model 'Contains common classes which encapsulate data elements required'"/>
|
||||||
|
<arg line="-package io.swagger.common 'Contains classes which are used by the api classes to invoke the deployed api like SwaggerApi - a base class, ApiUserCredentials, etc.'"/>
|
||||||
|
<arg line="-package io.swagger.event 'Results of calls made to Wordnik are returned via dispatched events. This package contains such event classes. Right now thats just ApiClientEvent and Response.'"/>
|
||||||
|
<arg line="-package io.swagger.exception 'Contains classes that encapsulate the errors generated'"/>
|
||||||
|
|
||||||
|
<arg value="-window-title"/>
|
||||||
|
<arg value="${title}"/>
|
||||||
|
|
||||||
|
<arg value="-main-title"/>
|
||||||
|
<arg value="${title}"/>
|
||||||
|
|
||||||
|
<arg value="-output"/>
|
||||||
|
<arg value="${basedir}/${docsoutputfolder}"/>
|
||||||
|
|
||||||
|
<arg value="-external-library-path"/>
|
||||||
|
<arg value="${basedir}/${libpath}"/>
|
||||||
|
|
||||||
|
</exec>
|
||||||
|
|
||||||
|
<echo>docs created</echo>
|
||||||
|
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
|
||||||
|
Compile the SWC file library including lib folder and the path to our classes, we use compc for library,
|
||||||
|
check the docs for Flex Ant Tasks, http://labs.adobe.com/wiki/index.php/Flex_Ant_Tasks.
|
||||||
|
|
||||||
|
-->
|
||||||
|
|
||||||
|
<target name="buildSWC" description="Compile the SWC file for the Librayr Project">
|
||||||
|
|
||||||
|
<compc output="${basedir}/${liboutputfolder}/${liboutputfile}">
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Include the path to any external SWC files used in the sdk, you may have to place name of SWC (ASAXB-0.1.1.swc) at end of path.
|
||||||
|
So file path would be file="${basedir}/${libpath}/ASAXB-0.1.1.swc"
|
||||||
|
-->
|
||||||
|
<include-libraries file="${basedir}/${libpath}/"/>
|
||||||
|
|
||||||
|
<source-path path-element="${sourcepath}"/>
|
||||||
|
|
||||||
|
<keep-as3-metadata name="XmlRootNode"/>
|
||||||
|
<keep-as3-metadata name="XmlElement"/>
|
||||||
|
<keep-as3-metadata name="XmlElements"/>
|
||||||
|
|
||||||
|
<!-- include our Class packages into the build (com folder) -->
|
||||||
|
<include-sources dir="${sourcepath}" includes="*"/>
|
||||||
|
|
||||||
|
</compc>
|
||||||
|
|
||||||
|
<echo>SWC created</echo>
|
||||||
|
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="dist" depends="clean, buildSWC, docs">
|
||||||
|
<mkdir dir="${basedir}/dist/lib"/>
|
||||||
|
<mkdir dir="${basedir}/dist/docs"/>
|
||||||
|
<mkdir dir="${basedir}/dist/sample"/>
|
||||||
|
|
||||||
|
<copy file="${basedir}/${liboutputfolder}/${liboutputfile}" todir="${basedir}/dist/lib/">
|
||||||
|
</copy>
|
||||||
|
<copy todir="${basedir}/dist/docs/">
|
||||||
|
<fileset dir="${basedir}/asdoc"/>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
|
||||||
|
<zip destfile="sample-as3-sdk.zip" basedir="${basedir}/dist"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- Compiles and creates a test app that can be run using the adl - AIR Debug Launcher from command line
|
||||||
|
Note: For the output file to be executed an xml file is needed which points to this output swf - this is not
|
||||||
|
generated here
|
||||||
|
-->
|
||||||
|
<target name="compile-test" depends="buildSWC">
|
||||||
|
<property name="FLEX_HOME" value="${FLEX4_SDK_HOME}"/>
|
||||||
|
<mxmlc
|
||||||
|
static-rsls="false"
|
||||||
|
fork="true"
|
||||||
|
maxmemory="512m"
|
||||||
|
file="${testsourcepath}/AirExecutorApp.mxml"
|
||||||
|
output="${basedir}/${liboutputfolder}/AirExecutorApp.swf"
|
||||||
|
warnings="false"
|
||||||
|
configname="air"
|
||||||
|
locale="en_US">
|
||||||
|
<load-config filename="${FLEX4_HOME}/frameworks/air-config.xml"/>
|
||||||
|
<source-path path-element="${FLEX_HOME}/frameworks"/>
|
||||||
|
|
||||||
|
<compiler.debug>true</compiler.debug>
|
||||||
|
|
||||||
|
|
||||||
|
<source-path path-element="${testsourcepath}"/>
|
||||||
|
<!--<source-path path-element="${APP_ROOT}/locale/{locale}" />-->
|
||||||
|
|
||||||
|
<library-path dir="${FLEX_HOME}/frameworks/libs" append="true">
|
||||||
|
<include name="*.swc"/>
|
||||||
|
</library-path>
|
||||||
|
<library-path dir="${FLEX_HOME}/frameworks/libs/air" append="true">
|
||||||
|
<include name="*.swc"/>
|
||||||
|
</library-path>
|
||||||
|
<library-path dir="${FLEX_HOME}/frameworks/locale" append="true">
|
||||||
|
<include name="{locale}"/>
|
||||||
|
</library-path>
|
||||||
|
<library-path dir="${basedir}/${libpath}" append="true">
|
||||||
|
<include name="*.swc"/>
|
||||||
|
</library-path>
|
||||||
|
<library-path dir="${basedir}/${liboutputfolder}" append="true">
|
||||||
|
<include name="*.swc"/>
|
||||||
|
</library-path>
|
||||||
|
<library-path dir="${basedir}/${libpath}/ext" append="true">
|
||||||
|
<include name="*.swc"/>
|
||||||
|
</library-path>
|
||||||
|
|
||||||
|
<verbose-stacktraces>true</verbose-stacktraces>
|
||||||
|
</mxmlc>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="do-test">
|
||||||
|
<exec executable="${FLEX_HOME}/bin/adl" failonerror="true">
|
||||||
|
<arg value="${basedir}/bin/AirExecutorApp-app.xml"/>
|
||||||
|
</exec>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="test" depends="compile-test, do-test">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
</project>
|
@ -0,0 +1,146 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||||
|
<application xmlns="http://ns.adobe.com/air/application/2.0">
|
||||||
|
|
||||||
|
<!-- Adobe AIR Application Descriptor File Template.
|
||||||
|
|
||||||
|
Specifies parameters for identifying, installing, and launching AIR applications.
|
||||||
|
|
||||||
|
xmlns - The Adobe AIR namespace: http://ns.adobe.com/air/application/2.0
|
||||||
|
The last segment of the namespace specifies the version
|
||||||
|
of the AIR runtime required for this application to run.
|
||||||
|
|
||||||
|
minimumPatchLevel - The minimum patch level of the AIR runtime required to run
|
||||||
|
the application. Optional.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!-- A universally unique application identifier. Must be unique across all AIR applications.
|
||||||
|
Using a reverse DNS-style name as the id is recommended. (Eg. com.example.ExampleApplication.) Required. -->
|
||||||
|
<id>AirExecutorApp</id>
|
||||||
|
|
||||||
|
<!-- Used as the filename for the application. Required. -->
|
||||||
|
<filename>AirExecutorApp</filename>
|
||||||
|
|
||||||
|
<!-- The name that is displayed in the AIR application installer.
|
||||||
|
May have multiple values for each language. See samples or xsd schema file. Optional. -->
|
||||||
|
<name>AirExecutorApp</name>
|
||||||
|
|
||||||
|
<!-- An application version designator (such as "v1", "2.5", or "Alpha 1"). Required. -->
|
||||||
|
<version>v1</version>
|
||||||
|
|
||||||
|
<!-- Description, displayed in the AIR application installer.
|
||||||
|
May have multiple values for each language. See samples or xsd schema file. Optional. -->
|
||||||
|
<!-- <description></description> -->
|
||||||
|
|
||||||
|
<!-- Copyright information. Optional -->
|
||||||
|
<!-- <copyright></copyright> -->
|
||||||
|
|
||||||
|
<!-- Publisher ID. Used if you're updating an application created prior to 1.5.3 -->
|
||||||
|
<!-- <publisherID></publisherID> -->
|
||||||
|
|
||||||
|
<!-- Settings for the application's initial window. Required. -->
|
||||||
|
<initialWindow>
|
||||||
|
<!-- The main SWF or HTML file of the application. Required. -->
|
||||||
|
<!-- Note: In Flash Builder, the SWF reference is set automatically. -->
|
||||||
|
<content>AirExecutorApp.swf</content>
|
||||||
|
|
||||||
|
<!-- The title of the main window. Optional. -->
|
||||||
|
<!-- <title></title> -->
|
||||||
|
|
||||||
|
<!-- The type of system chrome to use (either "standard" or "none"). Optional. Default standard. -->
|
||||||
|
<!-- <systemChrome></systemChrome> -->
|
||||||
|
|
||||||
|
<!-- Whether the window is transparent. Only applicable when systemChrome is none. Optional. Default false. -->
|
||||||
|
<!-- <transparent></transparent> -->
|
||||||
|
|
||||||
|
<!-- Whether the window is initially visible. Optional. Default false. -->
|
||||||
|
<!-- <visible></visible> -->
|
||||||
|
|
||||||
|
<!-- Whether the user can minimize the window. Optional. Default true. -->
|
||||||
|
<!-- <minimizable></minimizable> -->
|
||||||
|
|
||||||
|
<!-- Whether the user can maximize the window. Optional. Default true. -->
|
||||||
|
<!-- <maximizable></maximizable> -->
|
||||||
|
|
||||||
|
<!-- Whether the user can resize the window. Optional. Default true. -->
|
||||||
|
<!-- <resizable></resizable> -->
|
||||||
|
|
||||||
|
<!-- The window's initial width in pixels. Optional. -->
|
||||||
|
<!-- <width></width> -->
|
||||||
|
|
||||||
|
<!-- The window's initial height in pixels. Optional. -->
|
||||||
|
<!-- <height></height> -->
|
||||||
|
|
||||||
|
<!-- The window's initial x position. Optional. -->
|
||||||
|
<!-- <x></x> -->
|
||||||
|
|
||||||
|
<!-- The window's initial y position. Optional. -->
|
||||||
|
<!-- <y></y> -->
|
||||||
|
|
||||||
|
<!-- The window's minimum size, specified as a width/height pair in pixels, such as "400 200". Optional. -->
|
||||||
|
<!-- <minSize></minSize> -->
|
||||||
|
|
||||||
|
<!-- The window's initial maximum size, specified as a width/height pair in pixels, such as "1600 1200". Optional. -->
|
||||||
|
<!-- <maxSize></maxSize> -->
|
||||||
|
</initialWindow>
|
||||||
|
|
||||||
|
<!-- We recommend omitting the supportedProfiles element, -->
|
||||||
|
<!-- which in turn permits your application to be deployed to all -->
|
||||||
|
<!-- devices supported by AIR. If you wish to restrict deployment -->
|
||||||
|
<!-- (i.e., to only mobile devices) then add this element and list -->
|
||||||
|
<!-- only the profiles which your application does support. -->
|
||||||
|
<!-- <supportedProfiles>desktop extendedDesktop mobileDevice extendedMobileDevice</supportedProfiles> -->
|
||||||
|
|
||||||
|
<!-- The subpath of the standard default installation location to use. Optional. -->
|
||||||
|
<!-- <installFolder></installFolder> -->
|
||||||
|
|
||||||
|
<!-- The subpath of the Programs menu to use. (Ignored on operating systems without a Programs menu.) Optional. -->
|
||||||
|
<!-- <programMenuFolder></programMenuFolder> -->
|
||||||
|
|
||||||
|
<!-- The icon the system uses for the application. For at least one resolution,
|
||||||
|
specify the path to a PNG file included in the AIR package. Optional. -->
|
||||||
|
<!-- <icon>
|
||||||
|
<image16x16></image16x16>
|
||||||
|
<image32x32></image32x32>
|
||||||
|
<image48x48></image48x48>
|
||||||
|
<image128x128></image128x128>
|
||||||
|
</icon> -->
|
||||||
|
|
||||||
|
<!-- Whether the application handles the update when a user double-clicks an update version
|
||||||
|
of the AIR file (true), or the default AIR application installer handles the update (false).
|
||||||
|
Optional. Default false. -->
|
||||||
|
<!-- <customUpdateUI></customUpdateUI> -->
|
||||||
|
|
||||||
|
<!-- Whether the application can be launched when the user clicks a link in a web browser.
|
||||||
|
Optional. Default false. -->
|
||||||
|
<!-- <allowBrowserInvocation></allowBrowserInvocation> -->
|
||||||
|
|
||||||
|
<!-- Listing of file types for which the application can register. Optional. -->
|
||||||
|
<!-- <fileTypes> -->
|
||||||
|
|
||||||
|
<!-- Defines one file type. Optional. -->
|
||||||
|
<!-- <fileType> -->
|
||||||
|
|
||||||
|
<!-- The name that the system displays for the registered file type. Required. -->
|
||||||
|
<!-- <name></name> -->
|
||||||
|
|
||||||
|
<!-- The extension to register. Required. -->
|
||||||
|
<!-- <extension></extension> -->
|
||||||
|
|
||||||
|
<!-- The description of the file type. Optional. -->
|
||||||
|
<!-- <description></description> -->
|
||||||
|
|
||||||
|
<!-- The MIME content type. -->
|
||||||
|
<!-- <contentType></contentType> -->
|
||||||
|
|
||||||
|
<!-- The icon to display for the file type. Optional. -->
|
||||||
|
<!-- <icon>
|
||||||
|
<image16x16></image16x16>
|
||||||
|
<image32x32></image32x32>
|
||||||
|
<image48x48></image48x48>
|
||||||
|
<image128x128></image128x128>
|
||||||
|
</icon> -->
|
||||||
|
|
||||||
|
<!-- </fileType> -->
|
||||||
|
<!-- </fileTypes> -->
|
||||||
|
|
||||||
|
</application>
|
@ -0,0 +1,29 @@
|
|||||||
|
# Window and document title for the documentation
|
||||||
|
title=Sample app AS3 SDK API Documentation
|
||||||
|
|
||||||
|
#Path to the source folder where the .as files are located
|
||||||
|
sourcepath = ./src/main/flex
|
||||||
|
|
||||||
|
# Class-folders you want to search for classes to be included in the docs, seperated by spaces (for example ../com/ ../net/ )
|
||||||
|
# to include every .as and .mxml file within your project, just state ../
|
||||||
|
domainextensions = ./src/main/flex
|
||||||
|
|
||||||
|
# The Location of deployment library on your Computer (PC/Mac) for compiled SWC file
|
||||||
|
liboutputfolder = bin
|
||||||
|
liboutputfile = as3-sample-sdk.swc
|
||||||
|
libpath = lib
|
||||||
|
|
||||||
|
# The Location of the output folder for your generated documents
|
||||||
|
docsoutputfolder = asdoc
|
||||||
|
|
||||||
|
# The location of the test sources
|
||||||
|
testsourcepath = ./src/test/flex
|
||||||
|
|
||||||
|
# Home directory for flex sdk, change this to build for Mac or PC using # as comment
|
||||||
|
FLEX4_SDK_HOME = /usr/local/flex_sdk_4.1.0/
|
||||||
|
#FLEX4_SDK_HOME = /Applications/Adobe Flash Builder 4/sdks/4.1.0/
|
||||||
|
|
||||||
|
# The location of your asdoc.exe, change this to build for Mac or PC using # as comment
|
||||||
|
#asdoc.exe = C:/Program Files/Adobe/Flash Builder 4/sdks/3.5.0/bin/asdoc.exe
|
||||||
|
#asdoc.exe = /Applications/Adobe Flash Builder 4/sdks/3.5.0/bin/asdoc
|
||||||
|
|
192
samples/client/petstore/flash/src/main/flex/io/swagger/build.xml
Normal file
192
samples/client/petstore/flash/src/main/flex/io/swagger/build.xml
Normal file
@ -0,0 +1,192 @@
|
|||||||
|
<!-- Flex Library Project ASDocs -->
|
||||||
|
|
||||||
|
<project name="AS3SDKCompile" default="compile" basedir=".">
|
||||||
|
|
||||||
|
<!-- import our build properties file -->
|
||||||
|
<property file="./build.properties"/>
|
||||||
|
<property environment="env"/>
|
||||||
|
<property name="FLEX_HOME" value="${FLEX4_SDK_HOME}"/>
|
||||||
|
<property name="FLEX4_HOME" value="${FLEX4_SDK_HOME}"/>
|
||||||
|
|
||||||
|
<!--<property name="flexunit.swc" value="../lib/ext/flexunit-4.1.0_RC2-28-flex_3.5.0.12683.swc" />
|
||||||
|
<property name="flexunit-uilistener.swc" value="../lib/ext/flexunit-uilistener-4.1.0_RC2-28-flex_3.5.0.12683.swc" />
|
||||||
|
<property name="flexunit-cilistener.swc" value="../lib/ext/flexunit-cilistener-4.1.0_RC2-28-flex_3.5.0.12683.swc" />-->
|
||||||
|
|
||||||
|
<!-- Flex Ant Tasks used to perform compc and mxml compiling more info at http://labs.adobe.com/wiki/index.php/Flex_Ant_Tasks -->
|
||||||
|
<taskdef resource="flexTasks.tasks" classpath="${FLEX_HOME}/ant/lib/flexTasks.jar"/>
|
||||||
|
|
||||||
|
<target name="setup" description="perform an setup operations"/>
|
||||||
|
|
||||||
|
<!-- Execute the ASDoc Compile wich runs 3 seperate tasks in a series -->
|
||||||
|
<target name="compile" description="series of tasks to create docs and swc">
|
||||||
|
|
||||||
|
<!--<antcall target="cleanDir" description="clean the docs directory"/>-->
|
||||||
|
|
||||||
|
<!--<antcall target="asDocs" description="full build of asdocs"/>-->
|
||||||
|
|
||||||
|
<antcall target="buildSWC" description="build the SWC file"/>
|
||||||
|
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="deploy" description="perform an deployment operations"/>
|
||||||
|
|
||||||
|
<target name="install" description="perform an installation operations"/>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
|
||||||
|
DELETE the existing output folder and files and then re-generate the output folder
|
||||||
|
|
||||||
|
-->
|
||||||
|
|
||||||
|
<target name="clean"
|
||||||
|
description="DELETE the existing output folder and files and then re-generate the output folder">
|
||||||
|
|
||||||
|
<delete dir="${basedir}/${docsoutputfolder}" failonerror="true" includeemptydirs="true"/>
|
||||||
|
<delete file="${basedir}/${liboutputfolder}/${liboutputfile}"/>
|
||||||
|
<delete dir="${basedir}/dist" failonerror="true" includeemptydirs="true"/>
|
||||||
|
|
||||||
|
<mkdir dir="${basedir}/${docsoutputfolder}"/>
|
||||||
|
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
|
||||||
|
Run the ASDoc executable and generate the ASDocs to the new output folder
|
||||||
|
|
||||||
|
-->
|
||||||
|
|
||||||
|
<target name="docs" description="Run the ASDoc executable and generate the ASDocs to the new output folder">
|
||||||
|
|
||||||
|
<exec executable="${FLEX_HOME}/bin/asdoc" failonerror="true">
|
||||||
|
|
||||||
|
<arg line="-doc-sources ${sourcepath}"/>
|
||||||
|
<arg line="-source-path ${sourcepath}"/>
|
||||||
|
<arg line="-footer 'Copyright Wordnik'"/>
|
||||||
|
<arg line="-package io.swagger.api 'Contains the apis which are used by clients to make calls to the services deployed'"/>
|
||||||
|
<arg line="-package io.swagger.codegen.model 'Contains common classes which encapsulate data elements required'"/>
|
||||||
|
<arg line="-package io.swagger.common 'Contains classes which are used by the api classes to invoke the deployed api like SwaggerApi - a base class, ApiUserCredentials, etc.'"/>
|
||||||
|
<arg line="-package io.swagger.event 'Results of calls made to Wordnik are returned via dispatched events. This package contains such event classes. Right now thats just ApiClientEvent and Response.'"/>
|
||||||
|
<arg line="-package io.swagger.exception 'Contains classes that encapsulate the errors generated'"/>
|
||||||
|
|
||||||
|
<arg value="-window-title"/>
|
||||||
|
<arg value="${title}"/>
|
||||||
|
|
||||||
|
<arg value="-main-title"/>
|
||||||
|
<arg value="${title}"/>
|
||||||
|
|
||||||
|
<arg value="-output"/>
|
||||||
|
<arg value="${basedir}/${docsoutputfolder}"/>
|
||||||
|
|
||||||
|
<arg value="-external-library-path"/>
|
||||||
|
<arg value="${basedir}/${libpath}"/>
|
||||||
|
|
||||||
|
</exec>
|
||||||
|
|
||||||
|
<echo>docs created</echo>
|
||||||
|
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
|
||||||
|
Compile the SWC file library including lib folder and the path to our classes, we use compc for library,
|
||||||
|
check the docs for Flex Ant Tasks, http://labs.adobe.com/wiki/index.php/Flex_Ant_Tasks.
|
||||||
|
|
||||||
|
-->
|
||||||
|
|
||||||
|
<target name="buildSWC" description="Compile the SWC file for the Librayr Project">
|
||||||
|
|
||||||
|
<compc output="${basedir}/${liboutputfolder}/${liboutputfile}">
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Include the path to any external SWC files used in the sdk, you may have to place name of SWC (ASAXB-0.1.1.swc) at end of path.
|
||||||
|
So file path would be file="${basedir}/${libpath}/ASAXB-0.1.1.swc"
|
||||||
|
-->
|
||||||
|
<include-libraries file="${basedir}/${libpath}/"/>
|
||||||
|
|
||||||
|
<source-path path-element="${sourcepath}"/>
|
||||||
|
|
||||||
|
<keep-as3-metadata name="XmlRootNode"/>
|
||||||
|
<keep-as3-metadata name="XmlElement"/>
|
||||||
|
<keep-as3-metadata name="XmlElements"/>
|
||||||
|
|
||||||
|
<!-- include our Class packages into the build (com folder) -->
|
||||||
|
<include-sources dir="${sourcepath}" includes="*"/>
|
||||||
|
|
||||||
|
</compc>
|
||||||
|
|
||||||
|
<echo>SWC created</echo>
|
||||||
|
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="dist" depends="clean, buildSWC, docs">
|
||||||
|
<mkdir dir="${basedir}/dist/lib"/>
|
||||||
|
<mkdir dir="${basedir}/dist/docs"/>
|
||||||
|
<mkdir dir="${basedir}/dist/sample"/>
|
||||||
|
|
||||||
|
<copy file="${basedir}/${liboutputfolder}/${liboutputfile}" todir="${basedir}/dist/lib/">
|
||||||
|
</copy>
|
||||||
|
<copy todir="${basedir}/dist/docs/">
|
||||||
|
<fileset dir="${basedir}/asdoc"/>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
|
||||||
|
<zip destfile="sample-as3-sdk.zip" basedir="${basedir}/dist"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<!-- Compiles and creates a test app that can be run using the adl - AIR Debug Launcher from command line
|
||||||
|
Note: For the output file to be executed an xml file is needed which points to this output swf - this is not
|
||||||
|
generated here
|
||||||
|
-->
|
||||||
|
<target name="compile-test" depends="buildSWC">
|
||||||
|
<property name="FLEX_HOME" value="${FLEX4_SDK_HOME}"/>
|
||||||
|
<mxmlc
|
||||||
|
static-rsls="false"
|
||||||
|
fork="true"
|
||||||
|
maxmemory="512m"
|
||||||
|
file="${testsourcepath}/AirExecutorApp.mxml"
|
||||||
|
output="${basedir}/${liboutputfolder}/AirExecutorApp.swf"
|
||||||
|
warnings="false"
|
||||||
|
configname="air"
|
||||||
|
locale="en_US">
|
||||||
|
<load-config filename="${FLEX4_HOME}/frameworks/air-config.xml"/>
|
||||||
|
<source-path path-element="${FLEX_HOME}/frameworks"/>
|
||||||
|
|
||||||
|
<compiler.debug>true</compiler.debug>
|
||||||
|
|
||||||
|
|
||||||
|
<source-path path-element="${testsourcepath}"/>
|
||||||
|
<!--<source-path path-element="${APP_ROOT}/locale/{locale}" />-->
|
||||||
|
|
||||||
|
<library-path dir="${FLEX_HOME}/frameworks/libs" append="true">
|
||||||
|
<include name="*.swc"/>
|
||||||
|
</library-path>
|
||||||
|
<library-path dir="${FLEX_HOME}/frameworks/libs/air" append="true">
|
||||||
|
<include name="*.swc"/>
|
||||||
|
</library-path>
|
||||||
|
<library-path dir="${FLEX_HOME}/frameworks/locale" append="true">
|
||||||
|
<include name="{locale}"/>
|
||||||
|
</library-path>
|
||||||
|
<library-path dir="${basedir}/${libpath}" append="true">
|
||||||
|
<include name="*.swc"/>
|
||||||
|
</library-path>
|
||||||
|
<library-path dir="${basedir}/${liboutputfolder}" append="true">
|
||||||
|
<include name="*.swc"/>
|
||||||
|
</library-path>
|
||||||
|
<library-path dir="${basedir}/${libpath}/ext" append="true">
|
||||||
|
<include name="*.swc"/>
|
||||||
|
</library-path>
|
||||||
|
|
||||||
|
<verbose-stacktraces>true</verbose-stacktraces>
|
||||||
|
</mxmlc>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="do-test">
|
||||||
|
<exec executable="${FLEX_HOME}/bin/adl" failonerror="true">
|
||||||
|
<arg value="${basedir}/bin/AirExecutorApp-app.xml"/>
|
||||||
|
</exec>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="test" depends="compile-test, do-test">
|
||||||
|
</target>
|
||||||
|
|
||||||
|
</project>
|
@ -0,0 +1,276 @@
|
|||||||
|
package io.swagger/client/api {
|
||||||
|
|
||||||
|
import io.swagger.common.ApiInvoker;
|
||||||
|
import io.swagger.exception.ApiErrorCodes;
|
||||||
|
import io.swagger.exception.ApiError;
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
import io.swagger.common.SwaggerApi;
|
||||||
|
import io.swagger/client/model.Pet;
|
||||||
|
import java.io.File;
|
||||||
|
|
||||||
|
import mx.rpc.AsyncToken;
|
||||||
|
import mx.utils.UIDUtil;
|
||||||
|
import flash.utils.Dictionary;
|
||||||
|
import flash.events.EventDispatcher;
|
||||||
|
|
||||||
|
public class PetApi extends SwaggerApi {
|
||||||
|
/**
|
||||||
|
* Constructor for the PetApi api client
|
||||||
|
* @param apiCredentials Wrapper object for tokens and hostName required towards authentication
|
||||||
|
* @param eventDispatcher Optional event dispatcher that when provided is used by the SDK to dispatch any Response
|
||||||
|
*/
|
||||||
|
public function PetApi(apiCredentials: ApiUserCredentials, eventDispatcher: EventDispatcher = null) {
|
||||||
|
super(apiCredentials, eventDispatcher);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static const event_update_pet: String = "update_pet";
|
||||||
|
public static const event_add_pet: String = "add_pet";
|
||||||
|
public static const event_find_pets_by_status: String = "find_pets_by_status";
|
||||||
|
public static const event_find_pets_by_tags: String = "find_pets_by_tags";
|
||||||
|
public static const event_get_pet_by_id: String = "get_pet_by_id";
|
||||||
|
public static const event_update_pet_with_form: String = "update_pet_with_form";
|
||||||
|
public static const event_delete_pet: String = "delete_pet";
|
||||||
|
public static const event_upload_file: String = "upload_file";
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function update_pet (body: Pet): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "PUT", queryParams, io.swagger.codegen.CodegenParameter@30f97aff, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "update_pet";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function add_pet (body: Pet): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@4afa1477, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "add_pet";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Array[Pet]
|
||||||
|
*/
|
||||||
|
public function find_pets_by_status (status: Array[String] = available): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/findByStatus".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if("null" != String(status))
|
||||||
|
queryParams["status"] = toPathValue(status);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "find_pets_by_status";
|
||||||
|
|
||||||
|
token.returnType = Array[Pet];
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Array[Pet]
|
||||||
|
*/
|
||||||
|
public function find_pets_by_tags (tags: Array[String]): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/findByTags".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if("null" != String(tags))
|
||||||
|
queryParams["tags"] = toPathValue(tags);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "find_pets_by_tags";
|
||||||
|
|
||||||
|
token.returnType = Array[Pet];
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Pet
|
||||||
|
*/
|
||||||
|
public function get_pet_by_id (petId: Number): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/{petId}".replace(/{format}/g,"xml").replace("{" + "petId" + "}", getApiInvoker().escapeString(petId));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "get_pet_by_id";
|
||||||
|
|
||||||
|
token.returnType = Pet;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function update_pet_with_form (petId: String, name: String, status: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/{petId}".replace(/{format}/g,"xml").replace("{" + "petId" + "}", getApiInvoker().escapeString(petId));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "update_pet_with_form";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function delete_pet (petId: Number, apiKey: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/{petId}".replace(/{format}/g,"xml").replace("{" + "petId" + "}", getApiInvoker().escapeString(petId));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
headerParams["apiKey"] = toPathValue(apiKey);
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "DELETE", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "delete_pet";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function upload_file (petId: Number, additionalMetadata: String, file: File): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/{petId}/uploadImage".replace(/{format}/g,"xml").replace("{" + "petId" + "}", getApiInvoker().escapeString(petId));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "upload_file";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,276 @@
|
|||||||
|
package io.swagger/client/api {
|
||||||
|
|
||||||
|
import io.swagger.common.ApiInvoker;
|
||||||
|
import io.swagger.exception.ApiErrorCodes;
|
||||||
|
import io.swagger.exception.ApiError;
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
import io.swagger.common.SwaggerApi;
|
||||||
|
import io.swagger/client/model.Pet;
|
||||||
|
import java.io.File;
|
||||||
|
|
||||||
|
import mx.rpc.AsyncToken;
|
||||||
|
import mx.utils.UIDUtil;
|
||||||
|
import flash.utils.Dictionary;
|
||||||
|
import flash.events.EventDispatcher;
|
||||||
|
|
||||||
|
public class PetApi extends SwaggerApi {
|
||||||
|
/**
|
||||||
|
* Constructor for the PetApi api client
|
||||||
|
* @param apiCredentials Wrapper object for tokens and hostName required towards authentication
|
||||||
|
* @param eventDispatcher Optional event dispatcher that when provided is used by the SDK to dispatch any Response
|
||||||
|
*/
|
||||||
|
public function PetApi(apiCredentials: ApiUserCredentials, eventDispatcher: EventDispatcher = null) {
|
||||||
|
super(apiCredentials, eventDispatcher);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static const event_update_pet: String = "update_pet";
|
||||||
|
public static const event_add_pet: String = "add_pet";
|
||||||
|
public static const event_find_pets_by_status: String = "find_pets_by_status";
|
||||||
|
public static const event_find_pets_by_tags: String = "find_pets_by_tags";
|
||||||
|
public static const event_get_pet_by_id: String = "get_pet_by_id";
|
||||||
|
public static const event_update_pet_with_form: String = "update_pet_with_form";
|
||||||
|
public static const event_delete_pet: String = "delete_pet";
|
||||||
|
public static const event_upload_file: String = "upload_file";
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function update_pet (body: Pet): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "PUT", queryParams, io.swagger.codegen.CodegenParameter@4afa1477, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "update_pet";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function add_pet (body: Pet): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@6855b715, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "add_pet";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Array[Pet]
|
||||||
|
*/
|
||||||
|
public function find_pets_by_status (status: Array[String] = available): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/findByStatus".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if("null" != String(status))
|
||||||
|
queryParams["status"] = toPathValue(status);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "find_pets_by_status";
|
||||||
|
|
||||||
|
token.returnType = Array[Pet];
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Array[Pet]
|
||||||
|
*/
|
||||||
|
public function find_pets_by_tags (tags: Array[String]): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/findByTags".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if("null" != String(tags))
|
||||||
|
queryParams["tags"] = toPathValue(tags);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "find_pets_by_tags";
|
||||||
|
|
||||||
|
token.returnType = Array[Pet];
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Pet
|
||||||
|
*/
|
||||||
|
public function get_pet_by_id (petId: Number): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/{petId}".replace(/{format}/g,"xml").replace("{" + "petId" + "}", getApiInvoker().escapeString(petId));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "get_pet_by_id";
|
||||||
|
|
||||||
|
token.returnType = Pet;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function update_pet_with_form (petId: String, name: String, status: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/{petId}".replace(/{format}/g,"xml").replace("{" + "petId" + "}", getApiInvoker().escapeString(petId));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "update_pet_with_form";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function delete_pet (petId: Number, apiKey: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/{petId}".replace(/{format}/g,"xml").replace("{" + "petId" + "}", getApiInvoker().escapeString(petId));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
headerParams["apiKey"] = toPathValue(apiKey);
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "DELETE", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "delete_pet";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function upload_file (petId: Number, additionalMetadata: String, file: File): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/{petId}/uploadImage".replace(/{format}/g,"xml").replace("{" + "petId" + "}", getApiInvoker().escapeString(petId));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "upload_file";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,151 @@
|
|||||||
|
package io.swagger/client/api {
|
||||||
|
|
||||||
|
import io.swagger.common.ApiInvoker;
|
||||||
|
import io.swagger.exception.ApiErrorCodes;
|
||||||
|
import io.swagger.exception.ApiError;
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
import io.swagger.common.SwaggerApi;
|
||||||
|
import io.swagger/client/model.Dictionary;
|
||||||
|
import io.swagger/client/model.Order;
|
||||||
|
|
||||||
|
import mx.rpc.AsyncToken;
|
||||||
|
import mx.utils.UIDUtil;
|
||||||
|
import flash.utils.Dictionary;
|
||||||
|
import flash.events.EventDispatcher;
|
||||||
|
|
||||||
|
public class StoreApi extends SwaggerApi {
|
||||||
|
/**
|
||||||
|
* Constructor for the StoreApi api client
|
||||||
|
* @param apiCredentials Wrapper object for tokens and hostName required towards authentication
|
||||||
|
* @param eventDispatcher Optional event dispatcher that when provided is used by the SDK to dispatch any Response
|
||||||
|
*/
|
||||||
|
public function StoreApi(apiCredentials: ApiUserCredentials, eventDispatcher: EventDispatcher = null) {
|
||||||
|
super(apiCredentials, eventDispatcher);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static const event_get_inventory: String = "get_inventory";
|
||||||
|
public static const event_place_order: String = "place_order";
|
||||||
|
public static const event_get_order_by_id: String = "get_order_by_id";
|
||||||
|
public static const event_delete_order: String = "delete_order";
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Dictionary(str, Number)
|
||||||
|
*/
|
||||||
|
public function get_inventory (): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/store/inventory".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "get_inventory";
|
||||||
|
|
||||||
|
token.returnType = Dictionary(str, Number);
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Order
|
||||||
|
*/
|
||||||
|
public function place_order (body: Order): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/store/order".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@6855b715, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "place_order";
|
||||||
|
|
||||||
|
token.returnType = Order;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Order
|
||||||
|
*/
|
||||||
|
public function get_order_by_id (orderId: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/store/order/{orderId}".replace(/{format}/g,"xml").replace("{" + "orderId" + "}", getApiInvoker().escapeString(orderId));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "get_order_by_id";
|
||||||
|
|
||||||
|
token.returnType = Order;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function delete_order (orderId: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/store/order/{orderId}".replace(/{format}/g,"xml").replace("{" + "orderId" + "}", getApiInvoker().escapeString(orderId));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "DELETE", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "delete_order";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,151 @@
|
|||||||
|
package io.swagger/client/api {
|
||||||
|
|
||||||
|
import io.swagger.common.ApiInvoker;
|
||||||
|
import io.swagger.exception.ApiErrorCodes;
|
||||||
|
import io.swagger.exception.ApiError;
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
import io.swagger.common.SwaggerApi;
|
||||||
|
import io.swagger/client/model.Dictionary;
|
||||||
|
import io.swagger/client/model.Order;
|
||||||
|
|
||||||
|
import mx.rpc.AsyncToken;
|
||||||
|
import mx.utils.UIDUtil;
|
||||||
|
import flash.utils.Dictionary;
|
||||||
|
import flash.events.EventDispatcher;
|
||||||
|
|
||||||
|
public class StoreApi extends SwaggerApi {
|
||||||
|
/**
|
||||||
|
* Constructor for the StoreApi api client
|
||||||
|
* @param apiCredentials Wrapper object for tokens and hostName required towards authentication
|
||||||
|
* @param eventDispatcher Optional event dispatcher that when provided is used by the SDK to dispatch any Response
|
||||||
|
*/
|
||||||
|
public function StoreApi(apiCredentials: ApiUserCredentials, eventDispatcher: EventDispatcher = null) {
|
||||||
|
super(apiCredentials, eventDispatcher);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static const event_get_inventory: String = "get_inventory";
|
||||||
|
public static const event_place_order: String = "place_order";
|
||||||
|
public static const event_get_order_by_id: String = "get_order_by_id";
|
||||||
|
public static const event_delete_order: String = "delete_order";
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Dictionary(str, Number)
|
||||||
|
*/
|
||||||
|
public function get_inventory (): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/store/inventory".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "get_inventory";
|
||||||
|
|
||||||
|
token.returnType = Dictionary(str, Number);
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Order
|
||||||
|
*/
|
||||||
|
public function place_order (body: Order): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/store/order".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@5366f936, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "place_order";
|
||||||
|
|
||||||
|
token.returnType = Order;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Order
|
||||||
|
*/
|
||||||
|
public function get_order_by_id (orderId: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/store/order/{orderId}".replace(/{format}/g,"xml").replace("{" + "orderId" + "}", getApiInvoker().escapeString(orderId));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "get_order_by_id";
|
||||||
|
|
||||||
|
token.returnType = Order;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function delete_order (orderId: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/store/order/{orderId}".replace(/{format}/g,"xml").replace("{" + "orderId" + "}", getApiInvoker().escapeString(orderId));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "DELETE", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "delete_order";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,275 @@
|
|||||||
|
package io.swagger/client/api {
|
||||||
|
|
||||||
|
import io.swagger.common.ApiInvoker;
|
||||||
|
import io.swagger.exception.ApiErrorCodes;
|
||||||
|
import io.swagger.exception.ApiError;
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
import io.swagger.common.SwaggerApi;
|
||||||
|
import io.swagger/client/model.User;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import mx.rpc.AsyncToken;
|
||||||
|
import mx.utils.UIDUtil;
|
||||||
|
import flash.utils.Dictionary;
|
||||||
|
import flash.events.EventDispatcher;
|
||||||
|
|
||||||
|
public class UserApi extends SwaggerApi {
|
||||||
|
/**
|
||||||
|
* Constructor for the UserApi api client
|
||||||
|
* @param apiCredentials Wrapper object for tokens and hostName required towards authentication
|
||||||
|
* @param eventDispatcher Optional event dispatcher that when provided is used by the SDK to dispatch any Response
|
||||||
|
*/
|
||||||
|
public function UserApi(apiCredentials: ApiUserCredentials, eventDispatcher: EventDispatcher = null) {
|
||||||
|
super(apiCredentials, eventDispatcher);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static const event_create_user: String = "create_user";
|
||||||
|
public static const event_create_users_with_array_input: String = "create_users_with_array_input";
|
||||||
|
public static const event_create_users_with_list_input: String = "create_users_with_list_input";
|
||||||
|
public static const event_login_user: String = "login_user";
|
||||||
|
public static const event_logout_user: String = "logout_user";
|
||||||
|
public static const event_get_user_by_name: String = "get_user_by_name";
|
||||||
|
public static const event_update_user: String = "update_user";
|
||||||
|
public static const event_delete_user: String = "delete_user";
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function create_user (body: User): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@21668d9, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "create_user";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function create_users_with_array_input (body: Array[User]): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/createWithArray".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@d3d7fa1, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "create_users_with_array_input";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function create_users_with_list_input (body: Array[User]): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/createWithList".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@408629d1, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "create_users_with_list_input";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns String
|
||||||
|
*/
|
||||||
|
public function login_user (username: String, password: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/login".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if("null" != String(username))
|
||||||
|
queryParams["username"] = toPathValue(username);
|
||||||
|
if("null" != String(password))
|
||||||
|
queryParams["password"] = toPathValue(password);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "login_user";
|
||||||
|
|
||||||
|
token.returnType = String;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function logout_user (): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/logout".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "logout_user";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns User
|
||||||
|
*/
|
||||||
|
public function get_user_by_name (username: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/{username}".replace(/{format}/g,"xml").replace("{" + "username" + "}", getApiInvoker().escapeString(username));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "get_user_by_name";
|
||||||
|
|
||||||
|
token.returnType = User;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function update_user (username: String, body: User): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/{username}".replace(/{format}/g,"xml").replace("{" + "username" + "}", getApiInvoker().escapeString(username));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "PUT", queryParams, io.swagger.codegen.CodegenParameter@2823796f, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "update_user";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function delete_user (username: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/{username}".replace(/{format}/g,"xml").replace("{" + "username" + "}", getApiInvoker().escapeString(username));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "DELETE", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "delete_user";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,275 @@
|
|||||||
|
package io.swagger/client/api {
|
||||||
|
|
||||||
|
import io.swagger.common.ApiInvoker;
|
||||||
|
import io.swagger.exception.ApiErrorCodes;
|
||||||
|
import io.swagger.exception.ApiError;
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
import io.swagger.common.SwaggerApi;
|
||||||
|
import io.swagger/client/model.User;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import mx.rpc.AsyncToken;
|
||||||
|
import mx.utils.UIDUtil;
|
||||||
|
import flash.utils.Dictionary;
|
||||||
|
import flash.events.EventDispatcher;
|
||||||
|
|
||||||
|
public class UserApi extends SwaggerApi {
|
||||||
|
/**
|
||||||
|
* Constructor for the UserApi api client
|
||||||
|
* @param apiCredentials Wrapper object for tokens and hostName required towards authentication
|
||||||
|
* @param eventDispatcher Optional event dispatcher that when provided is used by the SDK to dispatch any Response
|
||||||
|
*/
|
||||||
|
public function UserApi(apiCredentials: ApiUserCredentials, eventDispatcher: EventDispatcher = null) {
|
||||||
|
super(apiCredentials, eventDispatcher);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static const event_create_user: String = "create_user";
|
||||||
|
public static const event_create_users_with_array_input: String = "create_users_with_array_input";
|
||||||
|
public static const event_create_users_with_list_input: String = "create_users_with_list_input";
|
||||||
|
public static const event_login_user: String = "login_user";
|
||||||
|
public static const event_logout_user: String = "logout_user";
|
||||||
|
public static const event_get_user_by_name: String = "get_user_by_name";
|
||||||
|
public static const event_update_user: String = "update_user";
|
||||||
|
public static const event_delete_user: String = "delete_user";
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function create_user (body: User): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@d3d7fa1, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "create_user";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function create_users_with_array_input (body: Array[User]): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/createWithArray".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@408629d1, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "create_users_with_array_input";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function create_users_with_list_input (body: Array[User]): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/createWithList".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@2823796f, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "create_users_with_list_input";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns String
|
||||||
|
*/
|
||||||
|
public function login_user (username: String, password: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/login".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if("null" != String(username))
|
||||||
|
queryParams["username"] = toPathValue(username);
|
||||||
|
if("null" != String(password))
|
||||||
|
queryParams["password"] = toPathValue(password);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "login_user";
|
||||||
|
|
||||||
|
token.returnType = String;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function logout_user (): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/logout".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "logout_user";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns User
|
||||||
|
*/
|
||||||
|
public function get_user_by_name (username: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/{username}".replace(/{format}/g,"xml").replace("{" + "username" + "}", getApiInvoker().escapeString(username));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "get_user_by_name";
|
||||||
|
|
||||||
|
token.returnType = User;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function update_user (username: String, body: User): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/{username}".replace(/{format}/g,"xml").replace("{" + "username" + "}", getApiInvoker().escapeString(username));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "PUT", queryParams, io.swagger.codegen.CodegenParameter@30f97aff, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "update_user";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function delete_user (username: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/{username}".replace(/{format}/g,"xml").replace("{" + "username" + "}", getApiInvoker().escapeString(username));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "DELETE", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "delete_user";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,276 @@
|
|||||||
|
package io.swagger/client/api {
|
||||||
|
|
||||||
|
import io.swagger.common.ApiInvoker;
|
||||||
|
import io.swagger.exception.ApiErrorCodes;
|
||||||
|
import io.swagger.exception.ApiError;
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
import io.swagger.common.SwaggerApi;
|
||||||
|
import io.swagger/client/model.Pet;
|
||||||
|
import java.io.File;
|
||||||
|
|
||||||
|
import mx.rpc.AsyncToken;
|
||||||
|
import mx.utils.UIDUtil;
|
||||||
|
import flash.utils.Dictionary;
|
||||||
|
import flash.events.EventDispatcher;
|
||||||
|
|
||||||
|
public class PetApi extends SwaggerApi {
|
||||||
|
/**
|
||||||
|
* Constructor for the PetApi api client
|
||||||
|
* @param apiCredentials Wrapper object for tokens and hostName required towards authentication
|
||||||
|
* @param eventDispatcher Optional event dispatcher that when provided is used by the SDK to dispatch any Response
|
||||||
|
*/
|
||||||
|
public function PetApi(apiCredentials: ApiUserCredentials, eventDispatcher: EventDispatcher = null) {
|
||||||
|
super(apiCredentials, eventDispatcher);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static const event_update_pet: String = "update_pet";
|
||||||
|
public static const event_add_pet: String = "add_pet";
|
||||||
|
public static const event_find_pets_by_status: String = "find_pets_by_status";
|
||||||
|
public static const event_find_pets_by_tags: String = "find_pets_by_tags";
|
||||||
|
public static const event_get_pet_by_id: String = "get_pet_by_id";
|
||||||
|
public static const event_update_pet_with_form: String = "update_pet_with_form";
|
||||||
|
public static const event_delete_pet: String = "delete_pet";
|
||||||
|
public static const event_upload_file: String = "upload_file";
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function update_pet (body: Pet): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "PUT", queryParams, io.swagger.codegen.CodegenParameter@6855b715, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "update_pet";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function add_pet (body: Pet): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@5366f936, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "add_pet";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Array[Pet]
|
||||||
|
*/
|
||||||
|
public function find_pets_by_status (status: Array[String] = available): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/findByStatus".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if("null" != String(status))
|
||||||
|
queryParams["status"] = toPathValue(status);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "find_pets_by_status";
|
||||||
|
|
||||||
|
token.returnType = Array[Pet];
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Array[Pet]
|
||||||
|
*/
|
||||||
|
public function find_pets_by_tags (tags: Array[String]): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/findByTags".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if("null" != String(tags))
|
||||||
|
queryParams["tags"] = toPathValue(tags);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "find_pets_by_tags";
|
||||||
|
|
||||||
|
token.returnType = Array[Pet];
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Pet
|
||||||
|
*/
|
||||||
|
public function get_pet_by_id (pet_id: Number): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/{petId}".replace(/{format}/g,"xml").replace("{" + "pet_id" + "}", getApiInvoker().escapeString(pet_id));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "get_pet_by_id";
|
||||||
|
|
||||||
|
token.returnType = Pet;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function update_pet_with_form (pet_id: String, name: String, status: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/{petId}".replace(/{format}/g,"xml").replace("{" + "pet_id" + "}", getApiInvoker().escapeString(pet_id));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "update_pet_with_form";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function delete_pet (pet_id: Number, api_key: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/{petId}".replace(/{format}/g,"xml").replace("{" + "pet_id" + "}", getApiInvoker().escapeString(pet_id));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
headerParams["api_key"] = toPathValue(api_key);
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "DELETE", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "delete_pet";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function upload_file (pet_id: Number, additional_metadata: String, file: File): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/{petId}/uploadImage".replace(/{format}/g,"xml").replace("{" + "pet_id" + "}", getApiInvoker().escapeString(pet_id));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "upload_file";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,151 @@
|
|||||||
|
package io.swagger/client/api {
|
||||||
|
|
||||||
|
import io.swagger.common.ApiInvoker;
|
||||||
|
import io.swagger.exception.ApiErrorCodes;
|
||||||
|
import io.swagger.exception.ApiError;
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
import io.swagger.common.SwaggerApi;
|
||||||
|
import io.swagger/client/model.Dictionary;
|
||||||
|
import io.swagger/client/model.Order;
|
||||||
|
|
||||||
|
import mx.rpc.AsyncToken;
|
||||||
|
import mx.utils.UIDUtil;
|
||||||
|
import flash.utils.Dictionary;
|
||||||
|
import flash.events.EventDispatcher;
|
||||||
|
|
||||||
|
public class StoreApi extends SwaggerApi {
|
||||||
|
/**
|
||||||
|
* Constructor for the StoreApi api client
|
||||||
|
* @param apiCredentials Wrapper object for tokens and hostName required towards authentication
|
||||||
|
* @param eventDispatcher Optional event dispatcher that when provided is used by the SDK to dispatch any Response
|
||||||
|
*/
|
||||||
|
public function StoreApi(apiCredentials: ApiUserCredentials, eventDispatcher: EventDispatcher = null) {
|
||||||
|
super(apiCredentials, eventDispatcher);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static const event_get_inventory: String = "get_inventory";
|
||||||
|
public static const event_place_order: String = "place_order";
|
||||||
|
public static const event_get_order_by_id: String = "get_order_by_id";
|
||||||
|
public static const event_delete_order: String = "delete_order";
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Dictionary(str, Number)
|
||||||
|
*/
|
||||||
|
public function get_inventory (): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/store/inventory".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "get_inventory";
|
||||||
|
|
||||||
|
token.returnType = Dictionary(str, Number);
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Order
|
||||||
|
*/
|
||||||
|
public function place_order (body: Order): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/store/order".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@d737301, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "place_order";
|
||||||
|
|
||||||
|
token.returnType = Order;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Order
|
||||||
|
*/
|
||||||
|
public function get_order_by_id (order_id: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/store/order/{orderId}".replace(/{format}/g,"xml").replace("{" + "order_id" + "}", getApiInvoker().escapeString(order_id));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "get_order_by_id";
|
||||||
|
|
||||||
|
token.returnType = Order;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function delete_order (order_id: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/store/order/{orderId}".replace(/{format}/g,"xml").replace("{" + "order_id" + "}", getApiInvoker().escapeString(order_id));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "DELETE", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "delete_order";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,275 @@
|
|||||||
|
package io.swagger/client/api {
|
||||||
|
|
||||||
|
import io.swagger.common.ApiInvoker;
|
||||||
|
import io.swagger.exception.ApiErrorCodes;
|
||||||
|
import io.swagger.exception.ApiError;
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
import io.swagger.common.SwaggerApi;
|
||||||
|
import io.swagger/client/model.User;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import mx.rpc.AsyncToken;
|
||||||
|
import mx.utils.UIDUtil;
|
||||||
|
import flash.utils.Dictionary;
|
||||||
|
import flash.events.EventDispatcher;
|
||||||
|
|
||||||
|
public class UserApi extends SwaggerApi {
|
||||||
|
/**
|
||||||
|
* Constructor for the UserApi api client
|
||||||
|
* @param apiCredentials Wrapper object for tokens and hostName required towards authentication
|
||||||
|
* @param eventDispatcher Optional event dispatcher that when provided is used by the SDK to dispatch any Response
|
||||||
|
*/
|
||||||
|
public function UserApi(apiCredentials: ApiUserCredentials, eventDispatcher: EventDispatcher = null) {
|
||||||
|
super(apiCredentials, eventDispatcher);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static const event_create_user: String = "create_user";
|
||||||
|
public static const event_create_users_with_array_input: String = "create_users_with_array_input";
|
||||||
|
public static const event_create_users_with_list_input: String = "create_users_with_list_input";
|
||||||
|
public static const event_login_user: String = "login_user";
|
||||||
|
public static const event_logout_user: String = "logout_user";
|
||||||
|
public static const event_get_user_by_name: String = "get_user_by_name";
|
||||||
|
public static const event_update_user: String = "update_user";
|
||||||
|
public static const event_delete_user: String = "delete_user";
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function create_user (body: User): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@408629d1, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "create_user";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function create_users_with_array_input (body: Array[User]): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/createWithArray".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@2823796f, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "create_users_with_array_input";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function create_users_with_list_input (body: Array[User]): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/createWithList".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@30f97aff, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "create_users_with_list_input";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns String
|
||||||
|
*/
|
||||||
|
public function login_user (username: String, password: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/login".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if("null" != String(username))
|
||||||
|
queryParams["username"] = toPathValue(username);
|
||||||
|
if("null" != String(password))
|
||||||
|
queryParams["password"] = toPathValue(password);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "login_user";
|
||||||
|
|
||||||
|
token.returnType = String;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function logout_user (): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/logout".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "logout_user";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns User
|
||||||
|
*/
|
||||||
|
public function get_user_by_name (username: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/{username}".replace(/{format}/g,"xml").replace("{" + "username" + "}", getApiInvoker().escapeString(username));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "get_user_by_name";
|
||||||
|
|
||||||
|
token.returnType = User;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function update_user (username: String, body: User): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/{username}".replace(/{format}/g,"xml").replace("{" + "username" + "}", getApiInvoker().escapeString(username));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "PUT", queryParams, io.swagger.codegen.CodegenParameter@4afa1477, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "update_user";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function delete_user (username: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/{username}".replace(/{format}/g,"xml").replace("{" + "username" + "}", getApiInvoker().escapeString(username));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "DELETE", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "delete_user";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,40 @@
|
|||||||
|
package io.swagger/client/model {
|
||||||
|
|
||||||
|
|
||||||
|
[XmlRootNode(name="Category")]
|
||||||
|
public class Category {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="id")]
|
||||||
|
|
||||||
|
public var id: Number = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="name")]
|
||||||
|
|
||||||
|
public var name: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public function toString(): String {
|
||||||
|
var str: String = "Category: ";
|
||||||
|
|
||||||
|
str += " (id: " + id + ")";
|
||||||
|
|
||||||
|
str += " (name: " + name + ")";
|
||||||
|
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,18 @@
|
|||||||
|
package io.swagger/client/model {
|
||||||
|
|
||||||
|
import io.swagger.common.ListWrapper;
|
||||||
|
|
||||||
|
public class CategoryList implements ListWrapper {
|
||||||
|
// This declaration below of _Category_obj_class is to force flash compiler to include this class
|
||||||
|
private var _category_obj_class: io.swagger/client/model.Category = null;
|
||||||
|
[XmlElements(name="category", type="io.swagger/client/model.Category")]
|
||||||
|
public var category: Array = new Array();
|
||||||
|
|
||||||
|
public function getList(): Array{
|
||||||
|
return category;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,85 @@
|
|||||||
|
package io.swagger/client/model {
|
||||||
|
|
||||||
|
|
||||||
|
[XmlRootNode(name="Order")]
|
||||||
|
public class Order {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="id")]
|
||||||
|
|
||||||
|
public var id: Number = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="petId")]
|
||||||
|
|
||||||
|
public var petId: Number = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="quantity")]
|
||||||
|
|
||||||
|
public var quantity: Number = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="shipDate")]
|
||||||
|
|
||||||
|
public var shipDate: Date = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* Order Status */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="status")]
|
||||||
|
|
||||||
|
public var status: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="complete")]
|
||||||
|
|
||||||
|
public var complete: Boolean = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public function toString(): String {
|
||||||
|
var str: String = "Order: ";
|
||||||
|
|
||||||
|
str += " (id: " + id + ")";
|
||||||
|
|
||||||
|
str += " (petId: " + petId + ")";
|
||||||
|
|
||||||
|
str += " (quantity: " + quantity + ")";
|
||||||
|
|
||||||
|
str += " (shipDate: " + shipDate + ")";
|
||||||
|
|
||||||
|
str += " (status: " + status + ")";
|
||||||
|
|
||||||
|
str += " (complete: " + complete + ")";
|
||||||
|
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,18 @@
|
|||||||
|
package io.swagger/client/model {
|
||||||
|
|
||||||
|
import io.swagger.common.ListWrapper;
|
||||||
|
|
||||||
|
public class OrderList implements ListWrapper {
|
||||||
|
// This declaration below of _Order_obj_class is to force flash compiler to include this class
|
||||||
|
private var _order_obj_class: io.swagger/client/model.Order = null;
|
||||||
|
[XmlElements(name="order", type="io.swagger/client/model.Order")]
|
||||||
|
public var order: Array = new Array();
|
||||||
|
|
||||||
|
public function getList(): Array{
|
||||||
|
return order;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,86 @@
|
|||||||
|
package io.swagger/client/model {
|
||||||
|
|
||||||
|
import io.swagger/client/model.Category;
|
||||||
|
import io.swagger/client/model.Tag;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
[XmlRootNode(name="Pet")]
|
||||||
|
public class Pet {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="id")]
|
||||||
|
|
||||||
|
public var id: Number = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="category")]
|
||||||
|
|
||||||
|
public var category: Category = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="name")]
|
||||||
|
|
||||||
|
public var name: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public var photoUrls: Array[String] = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public var tags: Array[Tag] = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* pet status in the store */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="status")]
|
||||||
|
|
||||||
|
public var status: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public function toString(): String {
|
||||||
|
var str: String = "Pet: ";
|
||||||
|
|
||||||
|
str += " (id: " + id + ")";
|
||||||
|
|
||||||
|
str += " (category: " + category + ")";
|
||||||
|
|
||||||
|
str += " (name: " + name + ")";
|
||||||
|
|
||||||
|
str += " (photoUrls: " + photoUrls + ")";
|
||||||
|
|
||||||
|
str += " (tags: " + tags + ")";
|
||||||
|
|
||||||
|
str += " (status: " + status + ")";
|
||||||
|
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,21 @@
|
|||||||
|
package io.swagger/client/model {
|
||||||
|
|
||||||
|
import io.swagger.common.ListWrapper;
|
||||||
|
import io.swagger/client/model.Category;
|
||||||
|
import io.swagger/client/model.Tag;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class PetList implements ListWrapper {
|
||||||
|
// This declaration below of _Pet_obj_class is to force flash compiler to include this class
|
||||||
|
private var _pet_obj_class: io.swagger/client/model.Pet = null;
|
||||||
|
[XmlElements(name="pet", type="io.swagger/client/model.Pet")]
|
||||||
|
public var pet: Array = new Array();
|
||||||
|
|
||||||
|
public function getList(): Array{
|
||||||
|
return pet;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,40 @@
|
|||||||
|
package io.swagger/client/model {
|
||||||
|
|
||||||
|
|
||||||
|
[XmlRootNode(name="Tag")]
|
||||||
|
public class Tag {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="id")]
|
||||||
|
|
||||||
|
public var id: Number = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="name")]
|
||||||
|
|
||||||
|
public var name: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public function toString(): String {
|
||||||
|
var str: String = "Tag: ";
|
||||||
|
|
||||||
|
str += " (id: " + id + ")";
|
||||||
|
|
||||||
|
str += " (name: " + name + ")";
|
||||||
|
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,18 @@
|
|||||||
|
package io.swagger/client/model {
|
||||||
|
|
||||||
|
import io.swagger.common.ListWrapper;
|
||||||
|
|
||||||
|
public class TagList implements ListWrapper {
|
||||||
|
// This declaration below of _Tag_obj_class is to force flash compiler to include this class
|
||||||
|
private var _tag_obj_class: io.swagger/client/model.Tag = null;
|
||||||
|
[XmlElements(name="tag", type="io.swagger/client/model.Tag")]
|
||||||
|
public var tag: Array = new Array();
|
||||||
|
|
||||||
|
public function getList(): Array{
|
||||||
|
return tag;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,107 @@
|
|||||||
|
package io.swagger/client/model {
|
||||||
|
|
||||||
|
|
||||||
|
[XmlRootNode(name="User")]
|
||||||
|
public class User {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="id")]
|
||||||
|
|
||||||
|
public var id: Number = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="username")]
|
||||||
|
|
||||||
|
public var username: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="firstName")]
|
||||||
|
|
||||||
|
public var firstName: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="lastName")]
|
||||||
|
|
||||||
|
public var lastName: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="email")]
|
||||||
|
|
||||||
|
public var email: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="password")]
|
||||||
|
|
||||||
|
public var password: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="phone")]
|
||||||
|
|
||||||
|
public var phone: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* User Status */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="userStatus")]
|
||||||
|
|
||||||
|
public var userStatus: Number = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public function toString(): String {
|
||||||
|
var str: String = "User: ";
|
||||||
|
|
||||||
|
str += " (id: " + id + ")";
|
||||||
|
|
||||||
|
str += " (username: " + username + ")";
|
||||||
|
|
||||||
|
str += " (firstName: " + firstName + ")";
|
||||||
|
|
||||||
|
str += " (lastName: " + lastName + ")";
|
||||||
|
|
||||||
|
str += " (email: " + email + ")";
|
||||||
|
|
||||||
|
str += " (password: " + password + ")";
|
||||||
|
|
||||||
|
str += " (phone: " + phone + ")";
|
||||||
|
|
||||||
|
str += " (userStatus: " + userStatus + ")";
|
||||||
|
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,18 @@
|
|||||||
|
package io.swagger/client/model {
|
||||||
|
|
||||||
|
import io.swagger.common.ListWrapper;
|
||||||
|
|
||||||
|
public class UserList implements ListWrapper {
|
||||||
|
// This declaration below of _User_obj_class is to force flash compiler to include this class
|
||||||
|
private var _user_obj_class: io.swagger/client/model.User = null;
|
||||||
|
[XmlElements(name="user", type="io.swagger/client/model.User")]
|
||||||
|
public var user: Array = new Array();
|
||||||
|
|
||||||
|
public function getList(): Array{
|
||||||
|
return user;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,40 @@
|
|||||||
|
package io.swagger/client/model {
|
||||||
|
|
||||||
|
|
||||||
|
[XmlRootNode(name="Category")]
|
||||||
|
public class Category {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="id")]
|
||||||
|
|
||||||
|
public var id: Number = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="name")]
|
||||||
|
|
||||||
|
public var name: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public function toString(): String {
|
||||||
|
var str: String = "Category: ";
|
||||||
|
|
||||||
|
str += " (id: " + id + ")";
|
||||||
|
|
||||||
|
str += " (name: " + name + ")";
|
||||||
|
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,85 @@
|
|||||||
|
package io.swagger/client/model {
|
||||||
|
|
||||||
|
|
||||||
|
[XmlRootNode(name="Order")]
|
||||||
|
public class Order {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="id")]
|
||||||
|
|
||||||
|
public var id: Number = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="petId")]
|
||||||
|
|
||||||
|
public var petId: Number = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="quantity")]
|
||||||
|
|
||||||
|
public var quantity: Number = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="shipDate")]
|
||||||
|
|
||||||
|
public var shipDate: Date = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* Order Status */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="status")]
|
||||||
|
|
||||||
|
public var status: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="complete")]
|
||||||
|
|
||||||
|
public var complete: Boolean = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public function toString(): String {
|
||||||
|
var str: String = "Order: ";
|
||||||
|
|
||||||
|
str += " (id: " + id + ")";
|
||||||
|
|
||||||
|
str += " (petId: " + petId + ")";
|
||||||
|
|
||||||
|
str += " (quantity: " + quantity + ")";
|
||||||
|
|
||||||
|
str += " (shipDate: " + shipDate + ")";
|
||||||
|
|
||||||
|
str += " (status: " + status + ")";
|
||||||
|
|
||||||
|
str += " (complete: " + complete + ")";
|
||||||
|
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,86 @@
|
|||||||
|
package io.swagger/client/model {
|
||||||
|
|
||||||
|
import io.swagger/client/model.Category;
|
||||||
|
import io.swagger/client/model.Tag;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
[XmlRootNode(name="Pet")]
|
||||||
|
public class Pet {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="id")]
|
||||||
|
|
||||||
|
public var id: Number = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="category")]
|
||||||
|
|
||||||
|
public var category: Category = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="name")]
|
||||||
|
|
||||||
|
public var name: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public var photoUrls: Array[String] = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public var tags: Array[Tag] = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* pet status in the store */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="status")]
|
||||||
|
|
||||||
|
public var status: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public function toString(): String {
|
||||||
|
var str: String = "Pet: ";
|
||||||
|
|
||||||
|
str += " (id: " + id + ")";
|
||||||
|
|
||||||
|
str += " (category: " + category + ")";
|
||||||
|
|
||||||
|
str += " (name: " + name + ")";
|
||||||
|
|
||||||
|
str += " (photoUrls: " + photoUrls + ")";
|
||||||
|
|
||||||
|
str += " (tags: " + tags + ")";
|
||||||
|
|
||||||
|
str += " (status: " + status + ")";
|
||||||
|
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,40 @@
|
|||||||
|
package io.swagger/client/model {
|
||||||
|
|
||||||
|
|
||||||
|
[XmlRootNode(name="Tag")]
|
||||||
|
public class Tag {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="id")]
|
||||||
|
|
||||||
|
public var id: Number = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="name")]
|
||||||
|
|
||||||
|
public var name: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public function toString(): String {
|
||||||
|
var str: String = "Tag: ";
|
||||||
|
|
||||||
|
str += " (id: " + id + ")";
|
||||||
|
|
||||||
|
str += " (name: " + name + ")";
|
||||||
|
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,107 @@
|
|||||||
|
package io.swagger/client/model {
|
||||||
|
|
||||||
|
|
||||||
|
[XmlRootNode(name="User")]
|
||||||
|
public class User {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="id")]
|
||||||
|
|
||||||
|
public var id: Number = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="username")]
|
||||||
|
|
||||||
|
public var username: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="firstName")]
|
||||||
|
|
||||||
|
public var firstName: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="lastName")]
|
||||||
|
|
||||||
|
public var lastName: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="email")]
|
||||||
|
|
||||||
|
public var email: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="password")]
|
||||||
|
|
||||||
|
public var password: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="phone")]
|
||||||
|
|
||||||
|
public var phone: String = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* User Status */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[XmlElement(name="userStatus")]
|
||||||
|
|
||||||
|
public var userStatus: Number = None;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public function toString(): String {
|
||||||
|
var str: String = "User: ";
|
||||||
|
|
||||||
|
str += " (id: " + id + ")";
|
||||||
|
|
||||||
|
str += " (username: " + username + ")";
|
||||||
|
|
||||||
|
str += " (firstName: " + firstName + ")";
|
||||||
|
|
||||||
|
str += " (lastName: " + lastName + ")";
|
||||||
|
|
||||||
|
str += " (email: " + email + ")";
|
||||||
|
|
||||||
|
str += " (password: " + password + ")";
|
||||||
|
|
||||||
|
str += " (phone: " + phone + ")";
|
||||||
|
|
||||||
|
str += " (userStatus: " + userStatus + ")";
|
||||||
|
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,255 @@
|
|||||||
|
package io.swagger.common {
|
||||||
|
import io.swagger.event.ApiClientEvent;
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
|
||||||
|
public class ApiInvoker extends EventDispatcher {
|
||||||
|
|
||||||
|
private static const DELETE_DATA_DUMMY:String = "dummyDataRequiredForDeleteOverride";
|
||||||
|
private static const X_HTTP_OVERRIDE_KEY:String = "X-HTTP-Method-Override";
|
||||||
|
private static const CONTENT_TYPE_HEADER_KEY:String = "Content-Type";
|
||||||
|
|
||||||
|
public function ApiInvoker(apiUsageCredentials:ApiUserCredentials, eventNotifier:EventDispatcher, useProxy:Boolean = true) {
|
||||||
|
_apiUsageCredentials = apiUsageCredentials;
|
||||||
|
_useProxyServer = useProxy;
|
||||||
|
if (_apiUsageCredentials.hostName != null) {
|
||||||
|
_proxyHostName = _apiUsageCredentials.hostName;
|
||||||
|
}
|
||||||
|
_apiPath = _apiUsageCredentials.apiPath;
|
||||||
|
_proxyPath = _apiUsageCredentials.proxyPath;
|
||||||
|
_apiProxyServerUrl = _apiUsageCredentials.apiProxyServerUrl;
|
||||||
|
_apiEventNotifier = eventNotifier;
|
||||||
|
}
|
||||||
|
public var _apiEventNotifier:EventDispatcher;
|
||||||
|
internal var _apiProxyServerUrl:String = "";
|
||||||
|
internal var _useProxyServer:Boolean = true;
|
||||||
|
private var _apiUsageCredentials:ApiUserCredentials;
|
||||||
|
private var _baseUrl:String = "";
|
||||||
|
private var _proxyHostName:String = "";
|
||||||
|
private var _apiPath:String = "";
|
||||||
|
private var _proxyPath:String = "";
|
||||||
|
|
||||||
|
public function invokeAPI(resourceURL:String, method:String, queryParams:Dictionary, postObject:Object, headerParams:Dictionary):AsyncToken {
|
||||||
|
//make the communication
|
||||||
|
if (_useProxyServer) {
|
||||||
|
resourceURL = _apiProxyServerUrl + resourceURL;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
resourceURL = "http://" + _proxyHostName + _apiPath + resourceURL;
|
||||||
|
}
|
||||||
|
|
||||||
|
var counter:int = 0;
|
||||||
|
var symbol:String = "&";
|
||||||
|
var paramValue:Object;
|
||||||
|
for (var paramName:String in queryParams) {
|
||||||
|
paramValue = queryParams[paramName];
|
||||||
|
//var key:String = paramName;
|
||||||
|
// do stuff
|
||||||
|
symbol = "&";
|
||||||
|
if (counter == 0) {
|
||||||
|
symbol = "?";
|
||||||
|
}
|
||||||
|
resourceURL = resourceURL + symbol + paramName + "=" + paramValue.toString();
|
||||||
|
counter++;
|
||||||
|
|
||||||
|
}
|
||||||
|
// trace(resourceURL);
|
||||||
|
//create a httpservice and invoke the rest url waiting for response
|
||||||
|
var requestHeader:Object = new Object();
|
||||||
|
if (headerParams != null) {
|
||||||
|
for (var key:String in headerParams) {
|
||||||
|
requestHeader[key] = headerParams[key];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
resourceURL = ApiUrlHelper.appendTokenInfo(resourceURL, requestHeader, _apiUsageCredentials);
|
||||||
|
|
||||||
|
var bodyData:String = marshal(postObject).toString();//restRequest.postData;
|
||||||
|
|
||||||
|
return doRestCall(resourceURL, onApiRequestResult, onApiRequestFault, method, bodyData, requestHeader, "application/xml");
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public function marshal(source:Object):Object {
|
||||||
|
// trace("marshal got - " + source)
|
||||||
|
if (source is String) {
|
||||||
|
return source;
|
||||||
|
} else if (source is Array && source.length > 0) {
|
||||||
|
var writer:XMLWriter = new XMLWriter();
|
||||||
|
var sourceArray:Array = source as Array;
|
||||||
|
var arrayEnclosure:String = getArrayEnclosure(sourceArray);
|
||||||
|
writer.xml.setName(arrayEnclosure);
|
||||||
|
|
||||||
|
for (var i:int = 0; i < sourceArray.length; i++) {
|
||||||
|
var o:Object = sourceArray[i];
|
||||||
|
writer.xml.appendChild(marshal(o));
|
||||||
|
}
|
||||||
|
return writer.xml;
|
||||||
|
} else
|
||||||
|
return marshalObject(source);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function marshalObject(source:Object):XML {
|
||||||
|
var writer:XMLWriter = new XMLWriter();
|
||||||
|
var objDescriptor:XML = describeType(source);
|
||||||
|
var property:XML;
|
||||||
|
var propertyType:String;
|
||||||
|
var propertyValue:Object;
|
||||||
|
|
||||||
|
var qualifiedClassName:String = objDescriptor.@name;
|
||||||
|
qualifiedClassName = qualifiedClassName.replace("::", ".");
|
||||||
|
var className:String = qualifiedClassName.substring(qualifiedClassName.lastIndexOf(".") + 1);
|
||||||
|
className = className().toLowerCase() + className.substring(1);
|
||||||
|
writer.xml.setName(className);
|
||||||
|
|
||||||
|
for each(property in objDescriptor.elements("variable")) {
|
||||||
|
propertyValue = source[property.@name];
|
||||||
|
if (propertyValue != null) {
|
||||||
|
if (ObjectUtil.isSimple(propertyValue)) {
|
||||||
|
writer.addProperty(property.@name, propertyValue.toString());
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
writer.addProperty(property.@name, marshal(propertyValue).toXMLString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for each(property in objDescriptor.elements("accessor")) {
|
||||||
|
if (property.@access == "readonly") {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
propertyValue = source[property.@name];
|
||||||
|
if (source[property.@name] != null) {
|
||||||
|
if (ObjectUtil.isSimple(propertyValue)) {
|
||||||
|
writer.addProperty(property.@name, propertyValue.toString());
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
writer.addProperty(property.@name, marshal(propertyValue).toXMLString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return writer.xml;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function escapeString(str:String):String {
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
|
||||||
|
private function doRestCall(url:String, resultFunction:Function, faultFunction:Function = null,
|
||||||
|
restMethod:String = "GET",
|
||||||
|
bodyData:Object = null, headers:Object = null, contentType:String = "application/xml"):AsyncToken {
|
||||||
|
var httpService:HTTPService = new HTTPService();
|
||||||
|
|
||||||
|
if (headers == null) {
|
||||||
|
headers = new Object();
|
||||||
|
}
|
||||||
|
httpService.method = restMethod;
|
||||||
|
|
||||||
|
if (restMethod.toUpperCase() != HTTPRequestMessage.GET_METHOD) {
|
||||||
|
//httpService.method = HTTPRequestMessage.POST_METHOD; - not required as we're using the proxy
|
||||||
|
if (bodyData == null) {
|
||||||
|
bodyData = new Object();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (restMethod == HTTPRequestMessage.DELETE_METHOD) {
|
||||||
|
headers[X_HTTP_OVERRIDE_KEY] = HTTPRequestMessage.DELETE_METHOD;
|
||||||
|
bodyData = DELETE_DATA_DUMMY;
|
||||||
|
}
|
||||||
|
else if (restMethod == HTTPRequestMessage.PUT_METHOD) {
|
||||||
|
headers[X_HTTP_OVERRIDE_KEY] = HTTPRequestMessage.PUT_METHOD;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
headers[CONTENT_TYPE_HEADER_KEY] = contentType;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
//if the request type is GET and content type is xml then the Flex HTTPService converts it to a POST ... yeah
|
||||||
|
contentType = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
httpService.url = url;
|
||||||
|
httpService.contentType = contentType;
|
||||||
|
httpService.resultFormat = "e4x";
|
||||||
|
httpService.headers = headers;
|
||||||
|
httpService.addEventListener(ResultEvent.RESULT, resultFunction);
|
||||||
|
if (faultFunction != null) {
|
||||||
|
httpService.addEventListener(FaultEvent.FAULT, faultFunction);
|
||||||
|
}
|
||||||
|
if (_useProxyServer) {
|
||||||
|
httpService.useProxy = true;
|
||||||
|
|
||||||
|
var channelSet:ChannelSet = new ChannelSet();
|
||||||
|
var httpChannel:HTTPChannel = new HTTPChannel();
|
||||||
|
httpChannel.uri = ApiUrlHelper.getProxyUrl(_proxyHostName, _proxyPath);
|
||||||
|
channelSet.addChannel(httpChannel);
|
||||||
|
httpService.channelSet = channelSet;
|
||||||
|
}
|
||||||
|
|
||||||
|
return httpService.send(bodyData);
|
||||||
|
}
|
||||||
|
|
||||||
|
private function onApiRequestResult(event:ResultEvent):void {
|
||||||
|
var completionListener:Function = event.token.completionListener;
|
||||||
|
var result:Object = event.result;
|
||||||
|
var resultType:Class = event.token.returnType;
|
||||||
|
var resultObject:Object;
|
||||||
|
if (resultType != null) {
|
||||||
|
var context:ASAXBContext = ASAXBContext.newInstance(resultType);
|
||||||
|
var unmarshaller:Unmarshaller = context.createUnmarshaller();
|
||||||
|
var resultXML:XML = new XML(event.result);
|
||||||
|
try {
|
||||||
|
resultObject = unmarshaller.unmarshal(resultXML);
|
||||||
|
}
|
||||||
|
catch (error:TypeError) {
|
||||||
|
var errorResponse:Response = new Response(false, null, "Could not unmarshall response");
|
||||||
|
if (_apiEventNotifier != null) { //dispatch event via assigned dispatcher
|
||||||
|
var failureEvent:ApiClientEvent = new ApiClientEvent(event.token.completionEventType);
|
||||||
|
failureEvent.response = errorResponse;
|
||||||
|
_apiEventNotifier.dispatchEvent(failureEvent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (resultObject is ListWrapper) {
|
||||||
|
resultObject = ListWrapper(resultObject).getList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var response:Response = new Response(true, resultObject);
|
||||||
|
response.requestId = event.token.requestId;
|
||||||
|
var successEventType:String = event.token.completionEventType != null ? event.token.completionEventType : ApiClientEvent.SUCCESS_EVENT;
|
||||||
|
|
||||||
|
if (_apiEventNotifier != null) { //dispatch event via assigned dispatcher
|
||||||
|
var successEvent:ApiClientEvent = new ApiClientEvent(successEventType);
|
||||||
|
successEvent.response = response;
|
||||||
|
_apiEventNotifier.dispatchEvent(successEvent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private function onApiRequestFault(event:FaultEvent):void {
|
||||||
|
var completionListener:Function = event.token.completionListener;
|
||||||
|
if (completionListener != null) {
|
||||||
|
completionListener.call(null, new Response(false, null, event.fault.faultString));
|
||||||
|
}
|
||||||
|
|
||||||
|
var failureEventType:String = event.token.completionEventType != null ? event.token.completionEventType : ApiClientEvent.FAILURE_EVENT;
|
||||||
|
|
||||||
|
if (_apiEventNotifier != null) { //dispatch event via assigned dispatcher
|
||||||
|
var failureEvent:ApiClientEvent = new ApiClientEvent(failureEventType);
|
||||||
|
failureEvent.response = new Response(false, null, event.fault.faultString);
|
||||||
|
_apiEventNotifier.dispatchEvent(failureEvent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private function getArrayEnclosure(arr:Array):String {
|
||||||
|
if (arr != null && arr.length > 0) {
|
||||||
|
var className:String = flash.utils.getQualifiedClassName(arr[0])
|
||||||
|
if (className.indexOf("::") > 0)
|
||||||
|
className = className.substr(className.indexOf("::") + 2, className.length)
|
||||||
|
|
||||||
|
return className.substring(0, 1).toLowerCase() + className.substring(1, className.length) + "s";
|
||||||
|
} else
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,41 @@
|
|||||||
|
package io.swagger.common {
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @private
|
||||||
|
* Internal class for the Rest client
|
||||||
|
*/
|
||||||
|
internal class ApiUrlHelper {
|
||||||
|
|
||||||
|
private static const API_URL_KEY:String = "api_key";
|
||||||
|
private static const AUTH_TOKEN_URL_KEY:String = "auth_token";
|
||||||
|
|
||||||
|
private static const HTTP_URL_PREFIX:String = "http://";
|
||||||
|
|
||||||
|
internal static function appendTokenInfo(restUrl:String, requestHeader: Object, credentials: ApiUserCredentials): String {
|
||||||
|
//checks for the presence api credentials on client initialization and not repeated here
|
||||||
|
if(restUrl.indexOf("?") == -1){
|
||||||
|
restUrl += ( "?" + API_URL_KEY + "=" + credentials.apiToken );
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
restUrl += ( "&" + API_URL_KEY + "=" + credentials.apiToken );
|
||||||
|
}
|
||||||
|
requestHeader.api_key = credentials.apiToken;
|
||||||
|
|
||||||
|
if(credentials.authToken != null && credentials.authToken != ""){
|
||||||
|
restUrl += ( "&" + AUTH_TOKEN_URL_KEY + "=" + credentials.authToken );
|
||||||
|
requestHeader.auth_token = credentials.authToken;
|
||||||
|
}
|
||||||
|
|
||||||
|
return restUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
internal static function getProxyUrl(hostName: String, proxyPath: String): String{
|
||||||
|
if (hostName(hostName.length - 1) == "/") //remove trailing slash
|
||||||
|
{
|
||||||
|
hostName = hostName.substring(0, hostName.length - 1);
|
||||||
|
}
|
||||||
|
return HTTP_URL_PREFIX + hostName + proxyPath;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,63 @@
|
|||||||
|
package io.swagger.common {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Api account credentials.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class ApiUserCredentials {
|
||||||
|
/**
|
||||||
|
* An apitoken that is passed along with the requests
|
||||||
|
*/
|
||||||
|
public var apiToken:String;
|
||||||
|
/**
|
||||||
|
* A valid auth_token which could be necessary for certain operations
|
||||||
|
*/
|
||||||
|
public var authToken:String;
|
||||||
|
/**
|
||||||
|
* The userId which could be required for certain operations
|
||||||
|
*/
|
||||||
|
public var userId:Number;
|
||||||
|
/**
|
||||||
|
* The host name for the Rest API eg. api.companyName.com
|
||||||
|
*/
|
||||||
|
public var hostName:String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The base path to the api resources - used along with the hostname
|
||||||
|
* eg. /v4
|
||||||
|
*/
|
||||||
|
public var apiPath: String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The base path to the blazeds proxy
|
||||||
|
* eg. /v4/messagebroker/restproxy
|
||||||
|
*/
|
||||||
|
public var proxyPath: String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If a proxy server has been set up for the services specify the URL here. This value is used when the Api is invoked with
|
||||||
|
* the value useProxy as true
|
||||||
|
*/
|
||||||
|
public var apiProxyServerUrl: String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor of ApiUserCredentials
|
||||||
|
* @param apiToken An apitoken that is passed along with the requests
|
||||||
|
* @param authToken A valid auth_token which could necessary for certain operations
|
||||||
|
* @param hostName The host name for the Rest API eg. api.companyName.com
|
||||||
|
* @param userId The userId which is required for certain operations - currently, get user lists
|
||||||
|
*/
|
||||||
|
public function ApiUserCredentials(hostName: String, apiPath: String, apiToken: String,
|
||||||
|
authToken: String = null, userId: Number = -1, apiProxyServerUrl: String="",
|
||||||
|
proxyPath: String = null) {
|
||||||
|
this.hostName = hostName;
|
||||||
|
this.apiToken = apiToken;
|
||||||
|
this.authToken = authToken;
|
||||||
|
this.userId = userId;
|
||||||
|
this.apiPath = apiPath;
|
||||||
|
this.apiProxyServerUrl = apiProxyServerUrl;
|
||||||
|
this.proxyPath = proxyPath;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,9 @@
|
|||||||
|
package io.swagger.common
|
||||||
|
{
|
||||||
|
public interface ListWrapper
|
||||||
|
{
|
||||||
|
|
||||||
|
function getList(): Array;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,75 @@
|
|||||||
|
package io.swagger.common
|
||||||
|
{
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
|
||||||
|
import flash.events.EventDispatcher;
|
||||||
|
import flash.events.IEventDispatcher;
|
||||||
|
|
||||||
|
import mx.utils.UIDUtil;
|
||||||
|
|
||||||
|
public class SwaggerApi extends EventDispatcher
|
||||||
|
{
|
||||||
|
|
||||||
|
protected var _apiUsageCredentials:ApiUserCredentials;
|
||||||
|
protected var _apiEventNotifier:EventDispatcher;
|
||||||
|
protected var _apiInvoker: ApiInvoker;
|
||||||
|
|
||||||
|
protected var _useProxyServer: Boolean = false;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor for the api client
|
||||||
|
* @param apiCredentials Wrapper object for tokens and hostName required towards authentication
|
||||||
|
* @param eventDispatcher Optional event dispatcher that when provided is used by the SDK to dispatch any Response
|
||||||
|
*/
|
||||||
|
public function SwaggerApi(apiCredentials: ApiUserCredentials, eventDispatcher: EventDispatcher = null) {
|
||||||
|
super();
|
||||||
|
_apiUsageCredentials = apiCredentials;
|
||||||
|
_apiEventNotifier = eventDispatcher;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function useProxyServer(value:Boolean, proxyServerUrl: String = null):void {
|
||||||
|
_useProxyServer = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function getApiInvoker():ApiInvoker {
|
||||||
|
if(_apiInvoker == null){
|
||||||
|
if(_apiEventNotifier == null){
|
||||||
|
_apiEventNotifier = this;
|
||||||
|
}
|
||||||
|
_apiInvoker = new ApiInvoker(_apiUsageCredentials, _apiEventNotifier, _useProxyServer);
|
||||||
|
}
|
||||||
|
return _apiInvoker;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function getUniqueId():String {
|
||||||
|
return UIDUtil.createUID();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method for returning the path value
|
||||||
|
* For a string value an empty value is returned if the value is null
|
||||||
|
* @param value
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
protected static function toPathValue(value: Object): String {
|
||||||
|
if(value is Array){
|
||||||
|
return arrayToPathValue(value as Array);
|
||||||
|
}
|
||||||
|
return value == null ? "" : value.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method for returning a path value
|
||||||
|
* For a list of objects a comma separated string is returned
|
||||||
|
* @param objects
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
protected static function arrayToPathValue(objects: Array): String {
|
||||||
|
var out: String = "";
|
||||||
|
|
||||||
|
return objects.join(",");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,28 @@
|
|||||||
|
package io.swagger.common
|
||||||
|
{
|
||||||
|
public class XMLWriter
|
||||||
|
{
|
||||||
|
public var xml:XML;
|
||||||
|
|
||||||
|
public function XMLWriter()
|
||||||
|
{
|
||||||
|
xml=<obj/>;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function reset():void {
|
||||||
|
xml=new XML();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function addProperty(propertyName:String, propertyValue:String):XML {
|
||||||
|
var xmlProperty:XML=<new/>
|
||||||
|
xmlProperty.setName(propertyName);
|
||||||
|
xmlProperty.appendChild(propertyValue);
|
||||||
|
xml.appendChild(xmlProperty);
|
||||||
|
return xmlProperty;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function addAttribute(propertyName:String, attribute:String, attributeValue:String):void {
|
||||||
|
xml.elements(propertyName)[0].@[attribute]=attributeValue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,36 @@
|
|||||||
|
package io.swagger.event {
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
|
||||||
|
import flash.events.Event;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Event dispatched by the SDK to communicate success events and failure events.
|
||||||
|
* If a custom dispatcher has been assigned by the consumer on the generated client then the dispatcher dispatches
|
||||||
|
* the ApiClientEvent to indicate success or failure of the invocation using the Response
|
||||||
|
*/
|
||||||
|
public class ApiClientEvent extends Event{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Event type to indicate a unsuccessful invocation
|
||||||
|
*/
|
||||||
|
public static const FAILURE_EVENT:String = "unsuccesfulInvocation";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Event type to indicate a successful invocation
|
||||||
|
*/
|
||||||
|
public static const SUCCESS_EVENT:String = "successfulInvocation";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The Response object which contains response info
|
||||||
|
*/
|
||||||
|
public var response: Response;
|
||||||
|
/**
|
||||||
|
* Any additional info
|
||||||
|
*/
|
||||||
|
public var message:String;
|
||||||
|
|
||||||
|
public function ApiClientEvent(type:String,bubbles:Boolean = false,cancelable:Boolean = false) {
|
||||||
|
super(type, bubbles, cancelable);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,56 @@
|
|||||||
|
package io.swagger.event {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Response contains info on the result of an API invocation.
|
||||||
|
* A completion listener will expect this Response object.
|
||||||
|
*/
|
||||||
|
public class Response {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Indicates whether the invoked operation failed or succeeded
|
||||||
|
*/
|
||||||
|
public var isSuccess:Boolean;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The payload of the succesful operation eg. a Word in a WordRequest
|
||||||
|
*/
|
||||||
|
public var payload:Object;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Error message in case of failure
|
||||||
|
*/
|
||||||
|
public var errorMessage:String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A request Id that was passed in by the user as a param when invoking the operation
|
||||||
|
*/
|
||||||
|
public var requestId:String;
|
||||||
|
private static const API_ERROR_MSG:String = "Api error response: ";
|
||||||
|
|
||||||
|
public function Response(isSuccessful: Boolean, payload: Object = null, errorMessage: String = null, requestId: String = null) {
|
||||||
|
this.isSuccess = isSuccessful;
|
||||||
|
this.payload = payload;
|
||||||
|
this.errorMessage = getFriendlyMessage(errorMessage);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static function getFriendlyMessage(errorMessage: String): String{
|
||||||
|
var result: String = errorMessage;
|
||||||
|
if(errorMessage == null)
|
||||||
|
return null;
|
||||||
|
var errorCode: String;
|
||||||
|
var errorCodeArray: Array = errorMessage.match(/(?<=HTTP\/1.1 )[0-9][0-9][0-9]/);
|
||||||
|
if(errorCodeArray != null && errorCodeArray.length == 1){
|
||||||
|
errorCode = String(errorCodeArray[0]);
|
||||||
|
}
|
||||||
|
var msgArray: Array = errorMessage.match(/(?<=HTTP\/1.1 [0-9][0-9][0-9] )[^]*/);
|
||||||
|
if(msgArray != null && msgArray.length == 1){
|
||||||
|
result = API_ERROR_MSG + String(msgArray[0]);
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function toString(): String {
|
||||||
|
return "Response (requestId:" + requestId + "; isSuccess:" + isSuccess + "; errorMessage:" + errorMessage + "; payload:" + payload + ")";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,34 @@
|
|||||||
|
package io.swagger.exception
|
||||||
|
{
|
||||||
|
public class ApiErrorCodes
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* System exception.
|
||||||
|
*/
|
||||||
|
public static const SYSTEM_EXCEPTION: Number = 0;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* With Arguments as current key.
|
||||||
|
*/
|
||||||
|
public static const API_KEY_NOT_VALID: Number = 1000;
|
||||||
|
/**
|
||||||
|
* With arguments as current token value
|
||||||
|
*/
|
||||||
|
public static const AUTH_TOKEN_NOT_VALID: Number = 1001;
|
||||||
|
/**
|
||||||
|
* With arguments as input JSON and output class anme
|
||||||
|
*/
|
||||||
|
public static const ERROR_CONVERTING_JSON_TO_JAVA: Number = 1002;
|
||||||
|
/**
|
||||||
|
* With arguments as JAVA class name
|
||||||
|
*/
|
||||||
|
public static const ERROR_CONVERTING_JAVA_TO_JSON: Number = 1003;
|
||||||
|
|
||||||
|
public static const ERROR_FROM_WEBSERVICE_CALL: Number = 1004;
|
||||||
|
/**
|
||||||
|
* With arguments as current API server name
|
||||||
|
*/
|
||||||
|
public static const API_SERVER_NOT_VALID: Number = 1005;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,10 @@
|
|||||||
|
package io.swagger.exception
|
||||||
|
{
|
||||||
|
public class ApiError extends Error
|
||||||
|
{
|
||||||
|
public function ApiError(id:*=0, message:*="")
|
||||||
|
{
|
||||||
|
super(message,id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,255 @@
|
|||||||
|
package io.swagger.common {
|
||||||
|
import io.swagger.event.ApiClientEvent;
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
|
||||||
|
public class ApiInvoker extends EventDispatcher {
|
||||||
|
|
||||||
|
private static const DELETE_DATA_DUMMY:String = "dummyDataRequiredForDeleteOverride";
|
||||||
|
private static const X_HTTP_OVERRIDE_KEY:String = "X-HTTP-Method-Override";
|
||||||
|
private static const CONTENT_TYPE_HEADER_KEY:String = "Content-Type";
|
||||||
|
|
||||||
|
public function ApiInvoker(apiUsageCredentials:ApiUserCredentials, eventNotifier:EventDispatcher, useProxy:Boolean = true) {
|
||||||
|
_apiUsageCredentials = apiUsageCredentials;
|
||||||
|
_useProxyServer = useProxy;
|
||||||
|
if (_apiUsageCredentials.hostName != null) {
|
||||||
|
_proxyHostName = _apiUsageCredentials.hostName;
|
||||||
|
}
|
||||||
|
_apiPath = _apiUsageCredentials.apiPath;
|
||||||
|
_proxyPath = _apiUsageCredentials.proxyPath;
|
||||||
|
_apiProxyServerUrl = _apiUsageCredentials.apiProxyServerUrl;
|
||||||
|
_apiEventNotifier = eventNotifier;
|
||||||
|
}
|
||||||
|
public var _apiEventNotifier:EventDispatcher;
|
||||||
|
internal var _apiProxyServerUrl:String = "";
|
||||||
|
internal var _useProxyServer:Boolean = true;
|
||||||
|
private var _apiUsageCredentials:ApiUserCredentials;
|
||||||
|
private var _baseUrl:String = "";
|
||||||
|
private var _proxyHostName:String = "";
|
||||||
|
private var _apiPath:String = "";
|
||||||
|
private var _proxyPath:String = "";
|
||||||
|
|
||||||
|
public function invokeAPI(resourceURL:String, method:String, queryParams:Dictionary, postObject:Object, headerParams:Dictionary):AsyncToken {
|
||||||
|
//make the communication
|
||||||
|
if (_useProxyServer) {
|
||||||
|
resourceURL = _apiProxyServerUrl + resourceURL;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
resourceURL = "http://" + _proxyHostName + _apiPath + resourceURL;
|
||||||
|
}
|
||||||
|
|
||||||
|
var counter:int = 0;
|
||||||
|
var symbol:String = "&";
|
||||||
|
var paramValue:Object;
|
||||||
|
for (var paramName:String in queryParams) {
|
||||||
|
paramValue = queryParams[paramName];
|
||||||
|
//var key:String = paramName;
|
||||||
|
// do stuff
|
||||||
|
symbol = "&";
|
||||||
|
if (counter == 0) {
|
||||||
|
symbol = "?";
|
||||||
|
}
|
||||||
|
resourceURL = resourceURL + symbol + paramName + "=" + paramValue.toString();
|
||||||
|
counter++;
|
||||||
|
|
||||||
|
}
|
||||||
|
// trace(resourceURL);
|
||||||
|
//create a httpservice and invoke the rest url waiting for response
|
||||||
|
var requestHeader:Object = new Object();
|
||||||
|
if (headerParams != null) {
|
||||||
|
for (var key:String in headerParams) {
|
||||||
|
requestHeader[key] = headerParams[key];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
resourceURL = ApiUrlHelper.appendTokenInfo(resourceURL, requestHeader, _apiUsageCredentials);
|
||||||
|
|
||||||
|
var bodyData:String = marshal(postObject).toString();//restRequest.postData;
|
||||||
|
|
||||||
|
return doRestCall(resourceURL, onApiRequestResult, onApiRequestFault, method, bodyData, requestHeader, "application/xml");
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public function marshal(source:Object):Object {
|
||||||
|
// trace("marshal got - " + source)
|
||||||
|
if (source is String) {
|
||||||
|
return source;
|
||||||
|
} else if (source is Array && source.length > 0) {
|
||||||
|
var writer:XMLWriter = new XMLWriter();
|
||||||
|
var sourceArray:Array = source as Array;
|
||||||
|
var arrayEnclosure:String = getArrayEnclosure(sourceArray);
|
||||||
|
writer.xml.setName(arrayEnclosure);
|
||||||
|
|
||||||
|
for (var i:int = 0; i < sourceArray.length; i++) {
|
||||||
|
var o:Object = sourceArray[i];
|
||||||
|
writer.xml.appendChild(marshal(o));
|
||||||
|
}
|
||||||
|
return writer.xml;
|
||||||
|
} else
|
||||||
|
return marshalObject(source);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function marshalObject(source:Object):XML {
|
||||||
|
var writer:XMLWriter = new XMLWriter();
|
||||||
|
var objDescriptor:XML = describeType(source);
|
||||||
|
var property:XML;
|
||||||
|
var propertyType:String;
|
||||||
|
var propertyValue:Object;
|
||||||
|
|
||||||
|
var qualifiedClassName:String = objDescriptor.@name;
|
||||||
|
qualifiedClassName = qualifiedClassName.replace("::", ".");
|
||||||
|
var className:String = qualifiedClassName.substring(qualifiedClassName.lastIndexOf(".") + 1);
|
||||||
|
className = className().toLowerCase() + className.substring(1);
|
||||||
|
writer.xml.setName(className);
|
||||||
|
|
||||||
|
for each(property in objDescriptor.elements("variable")) {
|
||||||
|
propertyValue = source[property.@name];
|
||||||
|
if (propertyValue != null) {
|
||||||
|
if (ObjectUtil.isSimple(propertyValue)) {
|
||||||
|
writer.addProperty(property.@name, propertyValue.toString());
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
writer.addProperty(property.@name, marshal(propertyValue).toXMLString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for each(property in objDescriptor.elements("accessor")) {
|
||||||
|
if (property.@access == "readonly") {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
propertyValue = source[property.@name];
|
||||||
|
if (source[property.@name] != null) {
|
||||||
|
if (ObjectUtil.isSimple(propertyValue)) {
|
||||||
|
writer.addProperty(property.@name, propertyValue.toString());
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
writer.addProperty(property.@name, marshal(propertyValue).toXMLString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return writer.xml;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function escapeString(str:String):String {
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
|
||||||
|
private function doRestCall(url:String, resultFunction:Function, faultFunction:Function = null,
|
||||||
|
restMethod:String = "GET",
|
||||||
|
bodyData:Object = null, headers:Object = null, contentType:String = "application/xml"):AsyncToken {
|
||||||
|
var httpService:HTTPService = new HTTPService();
|
||||||
|
|
||||||
|
if (headers == null) {
|
||||||
|
headers = new Object();
|
||||||
|
}
|
||||||
|
httpService.method = restMethod;
|
||||||
|
|
||||||
|
if (restMethod.toUpperCase() != HTTPRequestMessage.GET_METHOD) {
|
||||||
|
//httpService.method = HTTPRequestMessage.POST_METHOD; - not required as we're using the proxy
|
||||||
|
if (bodyData == null) {
|
||||||
|
bodyData = new Object();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (restMethod == HTTPRequestMessage.DELETE_METHOD) {
|
||||||
|
headers[X_HTTP_OVERRIDE_KEY] = HTTPRequestMessage.DELETE_METHOD;
|
||||||
|
bodyData = DELETE_DATA_DUMMY;
|
||||||
|
}
|
||||||
|
else if (restMethod == HTTPRequestMessage.PUT_METHOD) {
|
||||||
|
headers[X_HTTP_OVERRIDE_KEY] = HTTPRequestMessage.PUT_METHOD;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
headers[CONTENT_TYPE_HEADER_KEY] = contentType;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
//if the request type is GET and content type is xml then the Flex HTTPService converts it to a POST ... yeah
|
||||||
|
contentType = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
httpService.url = url;
|
||||||
|
httpService.contentType = contentType;
|
||||||
|
httpService.resultFormat = "e4x";
|
||||||
|
httpService.headers = headers;
|
||||||
|
httpService.addEventListener(ResultEvent.RESULT, resultFunction);
|
||||||
|
if (faultFunction != null) {
|
||||||
|
httpService.addEventListener(FaultEvent.FAULT, faultFunction);
|
||||||
|
}
|
||||||
|
if (_useProxyServer) {
|
||||||
|
httpService.useProxy = true;
|
||||||
|
|
||||||
|
var channelSet:ChannelSet = new ChannelSet();
|
||||||
|
var httpChannel:HTTPChannel = new HTTPChannel();
|
||||||
|
httpChannel.uri = ApiUrlHelper.getProxyUrl(_proxyHostName, _proxyPath);
|
||||||
|
channelSet.addChannel(httpChannel);
|
||||||
|
httpService.channelSet = channelSet;
|
||||||
|
}
|
||||||
|
|
||||||
|
return httpService.send(bodyData);
|
||||||
|
}
|
||||||
|
|
||||||
|
private function onApiRequestResult(event:ResultEvent):void {
|
||||||
|
var completionListener:Function = event.token.completionListener;
|
||||||
|
var result:Object = event.result;
|
||||||
|
var resultType:Class = event.token.returnType;
|
||||||
|
var resultObject:Object;
|
||||||
|
if (resultType != null) {
|
||||||
|
var context:ASAXBContext = ASAXBContext.newInstance(resultType);
|
||||||
|
var unmarshaller:Unmarshaller = context.createUnmarshaller();
|
||||||
|
var resultXML:XML = new XML(event.result);
|
||||||
|
try {
|
||||||
|
resultObject = unmarshaller.unmarshal(resultXML);
|
||||||
|
}
|
||||||
|
catch (error:TypeError) {
|
||||||
|
var errorResponse:Response = new Response(false, null, "Could not unmarshall response");
|
||||||
|
if (_apiEventNotifier != null) { //dispatch event via assigned dispatcher
|
||||||
|
var failureEvent:ApiClientEvent = new ApiClientEvent(event.token.completionEventType);
|
||||||
|
failureEvent.response = errorResponse;
|
||||||
|
_apiEventNotifier.dispatchEvent(failureEvent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (resultObject is ListWrapper) {
|
||||||
|
resultObject = ListWrapper(resultObject).getList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var response:Response = new Response(true, resultObject);
|
||||||
|
response.requestId = event.token.requestId;
|
||||||
|
var successEventType:String = event.token.completionEventType != null ? event.token.completionEventType : ApiClientEvent.SUCCESS_EVENT;
|
||||||
|
|
||||||
|
if (_apiEventNotifier != null) { //dispatch event via assigned dispatcher
|
||||||
|
var successEvent:ApiClientEvent = new ApiClientEvent(successEventType);
|
||||||
|
successEvent.response = response;
|
||||||
|
_apiEventNotifier.dispatchEvent(successEvent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private function onApiRequestFault(event:FaultEvent):void {
|
||||||
|
var completionListener:Function = event.token.completionListener;
|
||||||
|
if (completionListener != null) {
|
||||||
|
completionListener.call(null, new Response(false, null, event.fault.faultString));
|
||||||
|
}
|
||||||
|
|
||||||
|
var failureEventType:String = event.token.completionEventType != null ? event.token.completionEventType : ApiClientEvent.FAILURE_EVENT;
|
||||||
|
|
||||||
|
if (_apiEventNotifier != null) { //dispatch event via assigned dispatcher
|
||||||
|
var failureEvent:ApiClientEvent = new ApiClientEvent(failureEventType);
|
||||||
|
failureEvent.response = new Response(false, null, event.fault.faultString);
|
||||||
|
_apiEventNotifier.dispatchEvent(failureEvent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private function getArrayEnclosure(arr:Array):String {
|
||||||
|
if (arr != null && arr.length > 0) {
|
||||||
|
var className:String = flash.utils.getQualifiedClassName(arr[0])
|
||||||
|
if (className.indexOf("::") > 0)
|
||||||
|
className = className.substr(className.indexOf("::") + 2, className.length)
|
||||||
|
|
||||||
|
return className.substring(0, 1).toLowerCase() + className.substring(1, className.length) + "s";
|
||||||
|
} else
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,41 @@
|
|||||||
|
package io.swagger.common {
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @private
|
||||||
|
* Internal class for the Rest client
|
||||||
|
*/
|
||||||
|
internal class ApiUrlHelper {
|
||||||
|
|
||||||
|
private static const API_URL_KEY:String = "api_key";
|
||||||
|
private static const AUTH_TOKEN_URL_KEY:String = "auth_token";
|
||||||
|
|
||||||
|
private static const HTTP_URL_PREFIX:String = "http://";
|
||||||
|
|
||||||
|
internal static function appendTokenInfo(restUrl:String, requestHeader: Object, credentials: ApiUserCredentials): String {
|
||||||
|
//checks for the presence api credentials on client initialization and not repeated here
|
||||||
|
if(restUrl.indexOf("?") == -1){
|
||||||
|
restUrl += ( "?" + API_URL_KEY + "=" + credentials.apiToken );
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
restUrl += ( "&" + API_URL_KEY + "=" + credentials.apiToken );
|
||||||
|
}
|
||||||
|
requestHeader.api_key = credentials.apiToken;
|
||||||
|
|
||||||
|
if(credentials.authToken != null && credentials.authToken != ""){
|
||||||
|
restUrl += ( "&" + AUTH_TOKEN_URL_KEY + "=" + credentials.authToken );
|
||||||
|
requestHeader.auth_token = credentials.authToken;
|
||||||
|
}
|
||||||
|
|
||||||
|
return restUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
internal static function getProxyUrl(hostName: String, proxyPath: String): String{
|
||||||
|
if (hostName(hostName.length - 1) == "/") //remove trailing slash
|
||||||
|
{
|
||||||
|
hostName = hostName.substring(0, hostName.length - 1);
|
||||||
|
}
|
||||||
|
return HTTP_URL_PREFIX + hostName + proxyPath;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,63 @@
|
|||||||
|
package io.swagger.common {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Api account credentials.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class ApiUserCredentials {
|
||||||
|
/**
|
||||||
|
* An apitoken that is passed along with the requests
|
||||||
|
*/
|
||||||
|
public var apiToken:String;
|
||||||
|
/**
|
||||||
|
* A valid auth_token which could be necessary for certain operations
|
||||||
|
*/
|
||||||
|
public var authToken:String;
|
||||||
|
/**
|
||||||
|
* The userId which could be required for certain operations
|
||||||
|
*/
|
||||||
|
public var userId:Number;
|
||||||
|
/**
|
||||||
|
* The host name for the Rest API eg. api.companyName.com
|
||||||
|
*/
|
||||||
|
public var hostName:String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The base path to the api resources - used along with the hostname
|
||||||
|
* eg. /v4
|
||||||
|
*/
|
||||||
|
public var apiPath: String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The base path to the blazeds proxy
|
||||||
|
* eg. /v4/messagebroker/restproxy
|
||||||
|
*/
|
||||||
|
public var proxyPath: String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If a proxy server has been set up for the services specify the URL here. This value is used when the Api is invoked with
|
||||||
|
* the value useProxy as true
|
||||||
|
*/
|
||||||
|
public var apiProxyServerUrl: String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor of ApiUserCredentials
|
||||||
|
* @param apiToken An apitoken that is passed along with the requests
|
||||||
|
* @param authToken A valid auth_token which could necessary for certain operations
|
||||||
|
* @param hostName The host name for the Rest API eg. api.companyName.com
|
||||||
|
* @param userId The userId which is required for certain operations - currently, get user lists
|
||||||
|
*/
|
||||||
|
public function ApiUserCredentials(hostName: String, apiPath: String, apiToken: String,
|
||||||
|
authToken: String = null, userId: Number = -1, apiProxyServerUrl: String="",
|
||||||
|
proxyPath: String = null) {
|
||||||
|
this.hostName = hostName;
|
||||||
|
this.apiToken = apiToken;
|
||||||
|
this.authToken = authToken;
|
||||||
|
this.userId = userId;
|
||||||
|
this.apiPath = apiPath;
|
||||||
|
this.apiProxyServerUrl = apiProxyServerUrl;
|
||||||
|
this.proxyPath = proxyPath;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,9 @@
|
|||||||
|
package io.swagger.common
|
||||||
|
{
|
||||||
|
public interface ListWrapper
|
||||||
|
{
|
||||||
|
|
||||||
|
function getList(): Array;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,75 @@
|
|||||||
|
package io.swagger.common
|
||||||
|
{
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
|
||||||
|
import flash.events.EventDispatcher;
|
||||||
|
import flash.events.IEventDispatcher;
|
||||||
|
|
||||||
|
import mx.utils.UIDUtil;
|
||||||
|
|
||||||
|
public class SwaggerApi extends EventDispatcher
|
||||||
|
{
|
||||||
|
|
||||||
|
protected var _apiUsageCredentials:ApiUserCredentials;
|
||||||
|
protected var _apiEventNotifier:EventDispatcher;
|
||||||
|
protected var _apiInvoker: ApiInvoker;
|
||||||
|
|
||||||
|
protected var _useProxyServer: Boolean = false;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor for the api client
|
||||||
|
* @param apiCredentials Wrapper object for tokens and hostName required towards authentication
|
||||||
|
* @param eventDispatcher Optional event dispatcher that when provided is used by the SDK to dispatch any Response
|
||||||
|
*/
|
||||||
|
public function SwaggerApi(apiCredentials: ApiUserCredentials, eventDispatcher: EventDispatcher = null) {
|
||||||
|
super();
|
||||||
|
_apiUsageCredentials = apiCredentials;
|
||||||
|
_apiEventNotifier = eventDispatcher;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function useProxyServer(value:Boolean, proxyServerUrl: String = null):void {
|
||||||
|
_useProxyServer = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function getApiInvoker():ApiInvoker {
|
||||||
|
if(_apiInvoker == null){
|
||||||
|
if(_apiEventNotifier == null){
|
||||||
|
_apiEventNotifier = this;
|
||||||
|
}
|
||||||
|
_apiInvoker = new ApiInvoker(_apiUsageCredentials, _apiEventNotifier, _useProxyServer);
|
||||||
|
}
|
||||||
|
return _apiInvoker;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function getUniqueId():String {
|
||||||
|
return UIDUtil.createUID();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method for returning the path value
|
||||||
|
* For a string value an empty value is returned if the value is null
|
||||||
|
* @param value
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
protected static function toPathValue(value: Object): String {
|
||||||
|
if(value is Array){
|
||||||
|
return arrayToPathValue(value as Array);
|
||||||
|
}
|
||||||
|
return value == null ? "" : value.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method for returning a path value
|
||||||
|
* For a list of objects a comma separated string is returned
|
||||||
|
* @param objects
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
protected static function arrayToPathValue(objects: Array): String {
|
||||||
|
var out: String = "";
|
||||||
|
|
||||||
|
return objects.join(",");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,28 @@
|
|||||||
|
package io.swagger.common
|
||||||
|
{
|
||||||
|
public class XMLWriter
|
||||||
|
{
|
||||||
|
public var xml:XML;
|
||||||
|
|
||||||
|
public function XMLWriter()
|
||||||
|
{
|
||||||
|
xml=<obj/>;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function reset():void {
|
||||||
|
xml=new XML();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function addProperty(propertyName:String, propertyValue:String):XML {
|
||||||
|
var xmlProperty:XML=<new/>
|
||||||
|
xmlProperty.setName(propertyName);
|
||||||
|
xmlProperty.appendChild(propertyValue);
|
||||||
|
xml.appendChild(xmlProperty);
|
||||||
|
return xmlProperty;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function addAttribute(propertyName:String, attribute:String, attributeValue:String):void {
|
||||||
|
xml.elements(propertyName)[0].@[attribute]=attributeValue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,36 @@
|
|||||||
|
package io.swagger.event {
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
|
||||||
|
import flash.events.Event;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Event dispatched by the SDK to communicate success events and failure events.
|
||||||
|
* If a custom dispatcher has been assigned by the consumer on the generated client then the dispatcher dispatches
|
||||||
|
* the ApiClientEvent to indicate success or failure of the invocation using the Response
|
||||||
|
*/
|
||||||
|
public class ApiClientEvent extends Event{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Event type to indicate a unsuccessful invocation
|
||||||
|
*/
|
||||||
|
public static const FAILURE_EVENT:String = "unsuccesfulInvocation";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Event type to indicate a successful invocation
|
||||||
|
*/
|
||||||
|
public static const SUCCESS_EVENT:String = "successfulInvocation";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The Response object which contains response info
|
||||||
|
*/
|
||||||
|
public var response: Response;
|
||||||
|
/**
|
||||||
|
* Any additional info
|
||||||
|
*/
|
||||||
|
public var message:String;
|
||||||
|
|
||||||
|
public function ApiClientEvent(type:String,bubbles:Boolean = false,cancelable:Boolean = false) {
|
||||||
|
super(type, bubbles, cancelable);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,56 @@
|
|||||||
|
package io.swagger.event {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Response contains info on the result of an API invocation.
|
||||||
|
* A completion listener will expect this Response object.
|
||||||
|
*/
|
||||||
|
public class Response {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Indicates whether the invoked operation failed or succeeded
|
||||||
|
*/
|
||||||
|
public var isSuccess:Boolean;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The payload of the succesful operation eg. a Word in a WordRequest
|
||||||
|
*/
|
||||||
|
public var payload:Object;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Error message in case of failure
|
||||||
|
*/
|
||||||
|
public var errorMessage:String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A request Id that was passed in by the user as a param when invoking the operation
|
||||||
|
*/
|
||||||
|
public var requestId:String;
|
||||||
|
private static const API_ERROR_MSG:String = "Api error response: ";
|
||||||
|
|
||||||
|
public function Response(isSuccessful: Boolean, payload: Object = null, errorMessage: String = null, requestId: String = null) {
|
||||||
|
this.isSuccess = isSuccessful;
|
||||||
|
this.payload = payload;
|
||||||
|
this.errorMessage = getFriendlyMessage(errorMessage);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static function getFriendlyMessage(errorMessage: String): String{
|
||||||
|
var result: String = errorMessage;
|
||||||
|
if(errorMessage == null)
|
||||||
|
return null;
|
||||||
|
var errorCode: String;
|
||||||
|
var errorCodeArray: Array = errorMessage.match(/(?<=HTTP\/1.1 )[0-9][0-9][0-9]/);
|
||||||
|
if(errorCodeArray != null && errorCodeArray.length == 1){
|
||||||
|
errorCode = String(errorCodeArray[0]);
|
||||||
|
}
|
||||||
|
var msgArray: Array = errorMessage.match(/(?<=HTTP\/1.1 [0-9][0-9][0-9] )[^]*/);
|
||||||
|
if(msgArray != null && msgArray.length == 1){
|
||||||
|
result = API_ERROR_MSG + String(msgArray[0]);
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function toString(): String {
|
||||||
|
return "Response (requestId:" + requestId + "; isSuccess:" + isSuccess + "; errorMessage:" + errorMessage + "; payload:" + payload + ")";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,34 @@
|
|||||||
|
package io.swagger.exception
|
||||||
|
{
|
||||||
|
public class ApiErrorCodes
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* System exception.
|
||||||
|
*/
|
||||||
|
public static const SYSTEM_EXCEPTION: Number = 0;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* With Arguments as current key.
|
||||||
|
*/
|
||||||
|
public static const API_KEY_NOT_VALID: Number = 1000;
|
||||||
|
/**
|
||||||
|
* With arguments as current token value
|
||||||
|
*/
|
||||||
|
public static const AUTH_TOKEN_NOT_VALID: Number = 1001;
|
||||||
|
/**
|
||||||
|
* With arguments as input JSON and output class anme
|
||||||
|
*/
|
||||||
|
public static const ERROR_CONVERTING_JSON_TO_JAVA: Number = 1002;
|
||||||
|
/**
|
||||||
|
* With arguments as JAVA class name
|
||||||
|
*/
|
||||||
|
public static const ERROR_CONVERTING_JAVA_TO_JSON: Number = 1003;
|
||||||
|
|
||||||
|
public static const ERROR_FROM_WEBSERVICE_CALL: Number = 1004;
|
||||||
|
/**
|
||||||
|
* With arguments as current API server name
|
||||||
|
*/
|
||||||
|
public static const API_SERVER_NOT_VALID: Number = 1005;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,10 @@
|
|||||||
|
package io.swagger.exception
|
||||||
|
{
|
||||||
|
public class ApiError extends Error
|
||||||
|
{
|
||||||
|
public function ApiError(id:*=0, message:*="")
|
||||||
|
{
|
||||||
|
super(message,id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,146 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||||
|
<application xmlns="http://ns.adobe.com/air/application/2.0">
|
||||||
|
|
||||||
|
<!-- Adobe AIR Application Descriptor File Template.
|
||||||
|
|
||||||
|
Specifies parameters for identifying, installing, and launching AIR applications.
|
||||||
|
|
||||||
|
xmlns - The Adobe AIR namespace: http://ns.adobe.com/air/application/2.0
|
||||||
|
The last segment of the namespace specifies the version
|
||||||
|
of the AIR runtime required for this application to run.
|
||||||
|
|
||||||
|
minimumPatchLevel - The minimum patch level of the AIR runtime required to run
|
||||||
|
the application. Optional.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!-- A universally unique application identifier. Must be unique across all AIR applications.
|
||||||
|
Using a reverse DNS-style name as the id is recommended. (Eg. com.example.ExampleApplication.) Required. -->
|
||||||
|
<id>AirExecutorApp</id>
|
||||||
|
|
||||||
|
<!-- Used as the filename for the application. Required. -->
|
||||||
|
<filename>AirExecutorApp</filename>
|
||||||
|
|
||||||
|
<!-- The name that is displayed in the AIR application installer.
|
||||||
|
May have multiple values for each language. See samples or xsd schema file. Optional. -->
|
||||||
|
<name>AirExecutorApp</name>
|
||||||
|
|
||||||
|
<!-- An application version designator (such as "v1", "2.5", or "Alpha 1"). Required. -->
|
||||||
|
<version>v1</version>
|
||||||
|
|
||||||
|
<!-- Description, displayed in the AIR application installer.
|
||||||
|
May have multiple values for each language. See samples or xsd schema file. Optional. -->
|
||||||
|
<!-- <description></description> -->
|
||||||
|
|
||||||
|
<!-- Copyright information. Optional -->
|
||||||
|
<!-- <copyright></copyright> -->
|
||||||
|
|
||||||
|
<!-- Publisher ID. Used if you're updating an application created prior to 1.5.3 -->
|
||||||
|
<!-- <publisherID></publisherID> -->
|
||||||
|
|
||||||
|
<!-- Settings for the application's initial window. Required. -->
|
||||||
|
<initialWindow>
|
||||||
|
<!-- The main SWF or HTML file of the application. Required. -->
|
||||||
|
<!-- Note: In Flash Builder, the SWF reference is set automatically. -->
|
||||||
|
<content>AirExecutorApp.swf</content>
|
||||||
|
|
||||||
|
<!-- The title of the main window. Optional. -->
|
||||||
|
<!-- <title></title> -->
|
||||||
|
|
||||||
|
<!-- The type of system chrome to use (either "standard" or "none"). Optional. Default standard. -->
|
||||||
|
<!-- <systemChrome></systemChrome> -->
|
||||||
|
|
||||||
|
<!-- Whether the window is transparent. Only applicable when systemChrome is none. Optional. Default false. -->
|
||||||
|
<!-- <transparent></transparent> -->
|
||||||
|
|
||||||
|
<!-- Whether the window is initially visible. Optional. Default false. -->
|
||||||
|
<!-- <visible></visible> -->
|
||||||
|
|
||||||
|
<!-- Whether the user can minimize the window. Optional. Default true. -->
|
||||||
|
<!-- <minimizable></minimizable> -->
|
||||||
|
|
||||||
|
<!-- Whether the user can maximize the window. Optional. Default true. -->
|
||||||
|
<!-- <maximizable></maximizable> -->
|
||||||
|
|
||||||
|
<!-- Whether the user can resize the window. Optional. Default true. -->
|
||||||
|
<!-- <resizable></resizable> -->
|
||||||
|
|
||||||
|
<!-- The window's initial width in pixels. Optional. -->
|
||||||
|
<!-- <width></width> -->
|
||||||
|
|
||||||
|
<!-- The window's initial height in pixels. Optional. -->
|
||||||
|
<!-- <height></height> -->
|
||||||
|
|
||||||
|
<!-- The window's initial x position. Optional. -->
|
||||||
|
<!-- <x></x> -->
|
||||||
|
|
||||||
|
<!-- The window's initial y position. Optional. -->
|
||||||
|
<!-- <y></y> -->
|
||||||
|
|
||||||
|
<!-- The window's minimum size, specified as a width/height pair in pixels, such as "400 200". Optional. -->
|
||||||
|
<!-- <minSize></minSize> -->
|
||||||
|
|
||||||
|
<!-- The window's initial maximum size, specified as a width/height pair in pixels, such as "1600 1200". Optional. -->
|
||||||
|
<!-- <maxSize></maxSize> -->
|
||||||
|
</initialWindow>
|
||||||
|
|
||||||
|
<!-- We recommend omitting the supportedProfiles element, -->
|
||||||
|
<!-- which in turn permits your application to be deployed to all -->
|
||||||
|
<!-- devices supported by AIR. If you wish to restrict deployment -->
|
||||||
|
<!-- (i.e., to only mobile devices) then add this element and list -->
|
||||||
|
<!-- only the profiles which your application does support. -->
|
||||||
|
<!-- <supportedProfiles>desktop extendedDesktop mobileDevice extendedMobileDevice</supportedProfiles> -->
|
||||||
|
|
||||||
|
<!-- The subpath of the standard default installation location to use. Optional. -->
|
||||||
|
<!-- <installFolder></installFolder> -->
|
||||||
|
|
||||||
|
<!-- The subpath of the Programs menu to use. (Ignored on operating systems without a Programs menu.) Optional. -->
|
||||||
|
<!-- <programMenuFolder></programMenuFolder> -->
|
||||||
|
|
||||||
|
<!-- The icon the system uses for the application. For at least one resolution,
|
||||||
|
specify the path to a PNG file included in the AIR package. Optional. -->
|
||||||
|
<!-- <icon>
|
||||||
|
<image16x16></image16x16>
|
||||||
|
<image32x32></image32x32>
|
||||||
|
<image48x48></image48x48>
|
||||||
|
<image128x128></image128x128>
|
||||||
|
</icon> -->
|
||||||
|
|
||||||
|
<!-- Whether the application handles the update when a user double-clicks an update version
|
||||||
|
of the AIR file (true), or the default AIR application installer handles the update (false).
|
||||||
|
Optional. Default false. -->
|
||||||
|
<!-- <customUpdateUI></customUpdateUI> -->
|
||||||
|
|
||||||
|
<!-- Whether the application can be launched when the user clicks a link in a web browser.
|
||||||
|
Optional. Default false. -->
|
||||||
|
<!-- <allowBrowserInvocation></allowBrowserInvocation> -->
|
||||||
|
|
||||||
|
<!-- Listing of file types for which the application can register. Optional. -->
|
||||||
|
<!-- <fileTypes> -->
|
||||||
|
|
||||||
|
<!-- Defines one file type. Optional. -->
|
||||||
|
<!-- <fileType> -->
|
||||||
|
|
||||||
|
<!-- The name that the system displays for the registered file type. Required. -->
|
||||||
|
<!-- <name></name> -->
|
||||||
|
|
||||||
|
<!-- The extension to register. Required. -->
|
||||||
|
<!-- <extension></extension> -->
|
||||||
|
|
||||||
|
<!-- The description of the file type. Optional. -->
|
||||||
|
<!-- <description></description> -->
|
||||||
|
|
||||||
|
<!-- The MIME content type. -->
|
||||||
|
<!-- <contentType></contentType> -->
|
||||||
|
|
||||||
|
<!-- The icon to display for the file type. Optional. -->
|
||||||
|
<!-- <icon>
|
||||||
|
<image16x16></image16x16>
|
||||||
|
<image32x32></image32x32>
|
||||||
|
<image48x48></image48x48>
|
||||||
|
<image128x128></image128x128>
|
||||||
|
</icon> -->
|
||||||
|
|
||||||
|
<!-- </fileType> -->
|
||||||
|
<!-- </fileTypes> -->
|
||||||
|
|
||||||
|
</application>
|
@ -0,0 +1,255 @@
|
|||||||
|
package io.swagger.common {
|
||||||
|
import io.swagger.event.ApiClientEvent;
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
|
||||||
|
public class ApiInvoker extends EventDispatcher {
|
||||||
|
|
||||||
|
private static const DELETE_DATA_DUMMY:String = "dummyDataRequiredForDeleteOverride";
|
||||||
|
private static const X_HTTP_OVERRIDE_KEY:String = "X-HTTP-Method-Override";
|
||||||
|
private static const CONTENT_TYPE_HEADER_KEY:String = "Content-Type";
|
||||||
|
|
||||||
|
public function ApiInvoker(apiUsageCredentials:ApiUserCredentials, eventNotifier:EventDispatcher, useProxy:Boolean = true) {
|
||||||
|
_apiUsageCredentials = apiUsageCredentials;
|
||||||
|
_useProxyServer = useProxy;
|
||||||
|
if (_apiUsageCredentials.hostName != null) {
|
||||||
|
_proxyHostName = _apiUsageCredentials.hostName;
|
||||||
|
}
|
||||||
|
_apiPath = _apiUsageCredentials.apiPath;
|
||||||
|
_proxyPath = _apiUsageCredentials.proxyPath;
|
||||||
|
_apiProxyServerUrl = _apiUsageCredentials.apiProxyServerUrl;
|
||||||
|
_apiEventNotifier = eventNotifier;
|
||||||
|
}
|
||||||
|
public var _apiEventNotifier:EventDispatcher;
|
||||||
|
internal var _apiProxyServerUrl:String = "";
|
||||||
|
internal var _useProxyServer:Boolean = true;
|
||||||
|
private var _apiUsageCredentials:ApiUserCredentials;
|
||||||
|
private var _baseUrl:String = "";
|
||||||
|
private var _proxyHostName:String = "";
|
||||||
|
private var _apiPath:String = "";
|
||||||
|
private var _proxyPath:String = "";
|
||||||
|
|
||||||
|
public function invokeAPI(resourceURL:String, method:String, queryParams:Dictionary, postObject:Object, headerParams:Dictionary):AsyncToken {
|
||||||
|
//make the communication
|
||||||
|
if (_useProxyServer) {
|
||||||
|
resourceURL = _apiProxyServerUrl + resourceURL;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
resourceURL = "http://" + _proxyHostName + _apiPath + resourceURL;
|
||||||
|
}
|
||||||
|
|
||||||
|
var counter:int = 0;
|
||||||
|
var symbol:String = "&";
|
||||||
|
var paramValue:Object;
|
||||||
|
for (var paramName:String in queryParams) {
|
||||||
|
paramValue = queryParams[paramName];
|
||||||
|
//var key:String = paramName;
|
||||||
|
// do stuff
|
||||||
|
symbol = "&";
|
||||||
|
if (counter == 0) {
|
||||||
|
symbol = "?";
|
||||||
|
}
|
||||||
|
resourceURL = resourceURL + symbol + paramName + "=" + paramValue.toString();
|
||||||
|
counter++;
|
||||||
|
|
||||||
|
}
|
||||||
|
// trace(resourceURL);
|
||||||
|
//create a httpservice and invoke the rest url waiting for response
|
||||||
|
var requestHeader:Object = new Object();
|
||||||
|
if (headerParams != null) {
|
||||||
|
for (var key:String in headerParams) {
|
||||||
|
requestHeader[key] = headerParams[key];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
resourceURL = ApiUrlHelper.appendTokenInfo(resourceURL, requestHeader, _apiUsageCredentials);
|
||||||
|
|
||||||
|
var bodyData:String = marshal(postObject).toString();//restRequest.postData;
|
||||||
|
|
||||||
|
return doRestCall(resourceURL, onApiRequestResult, onApiRequestFault, method, bodyData, requestHeader, "application/xml");
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public function marshal(source:Object):Object {
|
||||||
|
// trace("marshal got - " + source)
|
||||||
|
if (source is String) {
|
||||||
|
return source;
|
||||||
|
} else if (source is Array && source.length > 0) {
|
||||||
|
var writer:XMLWriter = new XMLWriter();
|
||||||
|
var sourceArray:Array = source as Array;
|
||||||
|
var arrayEnclosure:String = getArrayEnclosure(sourceArray);
|
||||||
|
writer.xml.setName(arrayEnclosure);
|
||||||
|
|
||||||
|
for (var i:int = 0; i < sourceArray.length; i++) {
|
||||||
|
var o:Object = sourceArray[i];
|
||||||
|
writer.xml.appendChild(marshal(o));
|
||||||
|
}
|
||||||
|
return writer.xml;
|
||||||
|
} else
|
||||||
|
return marshalObject(source);
|
||||||
|
}
|
||||||
|
|
||||||
|
public function marshalObject(source:Object):XML {
|
||||||
|
var writer:XMLWriter = new XMLWriter();
|
||||||
|
var objDescriptor:XML = describeType(source);
|
||||||
|
var property:XML;
|
||||||
|
var propertyType:String;
|
||||||
|
var propertyValue:Object;
|
||||||
|
|
||||||
|
var qualifiedClassName:String = objDescriptor.@name;
|
||||||
|
qualifiedClassName = qualifiedClassName.replace("::", ".");
|
||||||
|
var className:String = qualifiedClassName.substring(qualifiedClassName.lastIndexOf(".") + 1);
|
||||||
|
className = className().toLowerCase() + className.substring(1);
|
||||||
|
writer.xml.setName(className);
|
||||||
|
|
||||||
|
for each(property in objDescriptor.elements("variable")) {
|
||||||
|
propertyValue = source[property.@name];
|
||||||
|
if (propertyValue != null) {
|
||||||
|
if (ObjectUtil.isSimple(propertyValue)) {
|
||||||
|
writer.addProperty(property.@name, propertyValue.toString());
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
writer.addProperty(property.@name, marshal(propertyValue).toXMLString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for each(property in objDescriptor.elements("accessor")) {
|
||||||
|
if (property.@access == "readonly") {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
propertyValue = source[property.@name];
|
||||||
|
if (source[property.@name] != null) {
|
||||||
|
if (ObjectUtil.isSimple(propertyValue)) {
|
||||||
|
writer.addProperty(property.@name, propertyValue.toString());
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
writer.addProperty(property.@name, marshal(propertyValue).toXMLString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return writer.xml;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function escapeString(str:String):String {
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
|
||||||
|
private function doRestCall(url:String, resultFunction:Function, faultFunction:Function = null,
|
||||||
|
restMethod:String = "GET",
|
||||||
|
bodyData:Object = null, headers:Object = null, contentType:String = "application/xml"):AsyncToken {
|
||||||
|
var httpService:HTTPService = new HTTPService();
|
||||||
|
|
||||||
|
if (headers == null) {
|
||||||
|
headers = new Object();
|
||||||
|
}
|
||||||
|
httpService.method = restMethod;
|
||||||
|
|
||||||
|
if (restMethod.toUpperCase() != HTTPRequestMessage.GET_METHOD) {
|
||||||
|
//httpService.method = HTTPRequestMessage.POST_METHOD; - not required as we're using the proxy
|
||||||
|
if (bodyData == null) {
|
||||||
|
bodyData = new Object();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (restMethod == HTTPRequestMessage.DELETE_METHOD) {
|
||||||
|
headers[X_HTTP_OVERRIDE_KEY] = HTTPRequestMessage.DELETE_METHOD;
|
||||||
|
bodyData = DELETE_DATA_DUMMY;
|
||||||
|
}
|
||||||
|
else if (restMethod == HTTPRequestMessage.PUT_METHOD) {
|
||||||
|
headers[X_HTTP_OVERRIDE_KEY] = HTTPRequestMessage.PUT_METHOD;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
headers[CONTENT_TYPE_HEADER_KEY] = contentType;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
//if the request type is GET and content type is xml then the Flex HTTPService converts it to a POST ... yeah
|
||||||
|
contentType = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
httpService.url = url;
|
||||||
|
httpService.contentType = contentType;
|
||||||
|
httpService.resultFormat = "e4x";
|
||||||
|
httpService.headers = headers;
|
||||||
|
httpService.addEventListener(ResultEvent.RESULT, resultFunction);
|
||||||
|
if (faultFunction != null) {
|
||||||
|
httpService.addEventListener(FaultEvent.FAULT, faultFunction);
|
||||||
|
}
|
||||||
|
if (_useProxyServer) {
|
||||||
|
httpService.useProxy = true;
|
||||||
|
|
||||||
|
var channelSet:ChannelSet = new ChannelSet();
|
||||||
|
var httpChannel:HTTPChannel = new HTTPChannel();
|
||||||
|
httpChannel.uri = ApiUrlHelper.getProxyUrl(_proxyHostName, _proxyPath);
|
||||||
|
channelSet.addChannel(httpChannel);
|
||||||
|
httpService.channelSet = channelSet;
|
||||||
|
}
|
||||||
|
|
||||||
|
return httpService.send(bodyData);
|
||||||
|
}
|
||||||
|
|
||||||
|
private function onApiRequestResult(event:ResultEvent):void {
|
||||||
|
var completionListener:Function = event.token.completionListener;
|
||||||
|
var result:Object = event.result;
|
||||||
|
var resultType:Class = event.token.returnType;
|
||||||
|
var resultObject:Object;
|
||||||
|
if (resultType != null) {
|
||||||
|
var context:ASAXBContext = ASAXBContext.newInstance(resultType);
|
||||||
|
var unmarshaller:Unmarshaller = context.createUnmarshaller();
|
||||||
|
var resultXML:XML = new XML(event.result);
|
||||||
|
try {
|
||||||
|
resultObject = unmarshaller.unmarshal(resultXML);
|
||||||
|
}
|
||||||
|
catch (error:TypeError) {
|
||||||
|
var errorResponse:Response = new Response(false, null, "Could not unmarshall response");
|
||||||
|
if (_apiEventNotifier != null) { //dispatch event via assigned dispatcher
|
||||||
|
var failureEvent:ApiClientEvent = new ApiClientEvent(event.token.completionEventType);
|
||||||
|
failureEvent.response = errorResponse;
|
||||||
|
_apiEventNotifier.dispatchEvent(failureEvent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (resultObject is ListWrapper) {
|
||||||
|
resultObject = ListWrapper(resultObject).getList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
var response:Response = new Response(true, resultObject);
|
||||||
|
response.requestId = event.token.requestId;
|
||||||
|
var successEventType:String = event.token.completionEventType != null ? event.token.completionEventType : ApiClientEvent.SUCCESS_EVENT;
|
||||||
|
|
||||||
|
if (_apiEventNotifier != null) { //dispatch event via assigned dispatcher
|
||||||
|
var successEvent:ApiClientEvent = new ApiClientEvent(successEventType);
|
||||||
|
successEvent.response = response;
|
||||||
|
_apiEventNotifier.dispatchEvent(successEvent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private function onApiRequestFault(event:FaultEvent):void {
|
||||||
|
var completionListener:Function = event.token.completionListener;
|
||||||
|
if (completionListener != null) {
|
||||||
|
completionListener.call(null, new Response(false, null, event.fault.faultString));
|
||||||
|
}
|
||||||
|
|
||||||
|
var failureEventType:String = event.token.completionEventType != null ? event.token.completionEventType : ApiClientEvent.FAILURE_EVENT;
|
||||||
|
|
||||||
|
if (_apiEventNotifier != null) { //dispatch event via assigned dispatcher
|
||||||
|
var failureEvent:ApiClientEvent = new ApiClientEvent(failureEventType);
|
||||||
|
failureEvent.response = new Response(false, null, event.fault.faultString);
|
||||||
|
_apiEventNotifier.dispatchEvent(failureEvent);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private function getArrayEnclosure(arr:Array):String {
|
||||||
|
if (arr != null && arr.length > 0) {
|
||||||
|
var className:String = flash.utils.getQualifiedClassName(arr[0])
|
||||||
|
if (className.indexOf("::") > 0)
|
||||||
|
className = className.substr(className.indexOf("::") + 2, className.length)
|
||||||
|
|
||||||
|
return className.substring(0, 1).toLowerCase() + className.substring(1, className.length) + "s";
|
||||||
|
} else
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,41 @@
|
|||||||
|
package io.swagger.common {
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @private
|
||||||
|
* Internal class for the Rest client
|
||||||
|
*/
|
||||||
|
internal class ApiUrlHelper {
|
||||||
|
|
||||||
|
private static const API_URL_KEY:String = "api_key";
|
||||||
|
private static const AUTH_TOKEN_URL_KEY:String = "auth_token";
|
||||||
|
|
||||||
|
private static const HTTP_URL_PREFIX:String = "http://";
|
||||||
|
|
||||||
|
internal static function appendTokenInfo(restUrl:String, requestHeader: Object, credentials: ApiUserCredentials): String {
|
||||||
|
//checks for the presence api credentials on client initialization and not repeated here
|
||||||
|
if(restUrl.indexOf("?") == -1){
|
||||||
|
restUrl += ( "?" + API_URL_KEY + "=" + credentials.apiToken );
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
restUrl += ( "&" + API_URL_KEY + "=" + credentials.apiToken );
|
||||||
|
}
|
||||||
|
requestHeader.api_key = credentials.apiToken;
|
||||||
|
|
||||||
|
if(credentials.authToken != null && credentials.authToken != ""){
|
||||||
|
restUrl += ( "&" + AUTH_TOKEN_URL_KEY + "=" + credentials.authToken );
|
||||||
|
requestHeader.auth_token = credentials.authToken;
|
||||||
|
}
|
||||||
|
|
||||||
|
return restUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
internal static function getProxyUrl(hostName: String, proxyPath: String): String{
|
||||||
|
if (hostName(hostName.length - 1) == "/") //remove trailing slash
|
||||||
|
{
|
||||||
|
hostName = hostName.substring(0, hostName.length - 1);
|
||||||
|
}
|
||||||
|
return HTTP_URL_PREFIX + hostName + proxyPath;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,63 @@
|
|||||||
|
package io.swagger.common {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Api account credentials.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public class ApiUserCredentials {
|
||||||
|
/**
|
||||||
|
* An apitoken that is passed along with the requests
|
||||||
|
*/
|
||||||
|
public var apiToken:String;
|
||||||
|
/**
|
||||||
|
* A valid auth_token which could be necessary for certain operations
|
||||||
|
*/
|
||||||
|
public var authToken:String;
|
||||||
|
/**
|
||||||
|
* The userId which could be required for certain operations
|
||||||
|
*/
|
||||||
|
public var userId:Number;
|
||||||
|
/**
|
||||||
|
* The host name for the Rest API eg. api.companyName.com
|
||||||
|
*/
|
||||||
|
public var hostName:String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The base path to the api resources - used along with the hostname
|
||||||
|
* eg. /v4
|
||||||
|
*/
|
||||||
|
public var apiPath: String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The base path to the blazeds proxy
|
||||||
|
* eg. /v4/messagebroker/restproxy
|
||||||
|
*/
|
||||||
|
public var proxyPath: String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If a proxy server has been set up for the services specify the URL here. This value is used when the Api is invoked with
|
||||||
|
* the value useProxy as true
|
||||||
|
*/
|
||||||
|
public var apiProxyServerUrl: String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor of ApiUserCredentials
|
||||||
|
* @param apiToken An apitoken that is passed along with the requests
|
||||||
|
* @param authToken A valid auth_token which could necessary for certain operations
|
||||||
|
* @param hostName The host name for the Rest API eg. api.companyName.com
|
||||||
|
* @param userId The userId which is required for certain operations - currently, get user lists
|
||||||
|
*/
|
||||||
|
public function ApiUserCredentials(hostName: String, apiPath: String, apiToken: String,
|
||||||
|
authToken: String = null, userId: Number = -1, apiProxyServerUrl: String="",
|
||||||
|
proxyPath: String = null) {
|
||||||
|
this.hostName = hostName;
|
||||||
|
this.apiToken = apiToken;
|
||||||
|
this.authToken = authToken;
|
||||||
|
this.userId = userId;
|
||||||
|
this.apiPath = apiPath;
|
||||||
|
this.apiProxyServerUrl = apiProxyServerUrl;
|
||||||
|
this.proxyPath = proxyPath;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,75 @@
|
|||||||
|
package io.swagger.common
|
||||||
|
{
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
|
||||||
|
import flash.events.EventDispatcher;
|
||||||
|
import flash.events.IEventDispatcher;
|
||||||
|
|
||||||
|
import mx.utils.UIDUtil;
|
||||||
|
|
||||||
|
public class SwaggerApi extends EventDispatcher
|
||||||
|
{
|
||||||
|
|
||||||
|
protected var _apiUsageCredentials:ApiUserCredentials;
|
||||||
|
protected var _apiEventNotifier:EventDispatcher;
|
||||||
|
protected var _apiInvoker: ApiInvoker;
|
||||||
|
|
||||||
|
protected var _useProxyServer: Boolean = false;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor for the api client
|
||||||
|
* @param apiCredentials Wrapper object for tokens and hostName required towards authentication
|
||||||
|
* @param eventDispatcher Optional event dispatcher that when provided is used by the SDK to dispatch any Response
|
||||||
|
*/
|
||||||
|
public function SwaggerApi(apiCredentials: ApiUserCredentials, eventDispatcher: EventDispatcher = null) {
|
||||||
|
super();
|
||||||
|
_apiUsageCredentials = apiCredentials;
|
||||||
|
_apiEventNotifier = eventDispatcher;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function useProxyServer(value:Boolean, proxyServerUrl: String = null):void {
|
||||||
|
_useProxyServer = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function getApiInvoker():ApiInvoker {
|
||||||
|
if(_apiInvoker == null){
|
||||||
|
if(_apiEventNotifier == null){
|
||||||
|
_apiEventNotifier = this;
|
||||||
|
}
|
||||||
|
_apiInvoker = new ApiInvoker(_apiUsageCredentials, _apiEventNotifier, _useProxyServer);
|
||||||
|
}
|
||||||
|
return _apiInvoker;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function getUniqueId():String {
|
||||||
|
return UIDUtil.createUID();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method for returning the path value
|
||||||
|
* For a string value an empty value is returned if the value is null
|
||||||
|
* @param value
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
protected static function toPathValue(value: Object): String {
|
||||||
|
if(value is Array){
|
||||||
|
return arrayToPathValue(value as Array);
|
||||||
|
}
|
||||||
|
return value == null ? "" : value.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method for returning a path value
|
||||||
|
* For a list of objects a comma separated string is returned
|
||||||
|
* @param objects
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
protected static function arrayToPathValue(objects: Array): String {
|
||||||
|
var out: String = "";
|
||||||
|
|
||||||
|
return objects.join(",");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,28 @@
|
|||||||
|
package io.swagger.common
|
||||||
|
{
|
||||||
|
public class XMLWriter
|
||||||
|
{
|
||||||
|
public var xml:XML;
|
||||||
|
|
||||||
|
public function XMLWriter()
|
||||||
|
{
|
||||||
|
xml=<obj/>;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function reset():void {
|
||||||
|
xml=new XML();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function addProperty(propertyName:String, propertyValue:String):XML {
|
||||||
|
var xmlProperty:XML=<new/>
|
||||||
|
xmlProperty.setName(propertyName);
|
||||||
|
xmlProperty.appendChild(propertyValue);
|
||||||
|
xml.appendChild(xmlProperty);
|
||||||
|
return xmlProperty;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function addAttribute(propertyName:String, attribute:String, attributeValue:String):void {
|
||||||
|
xml.elements(propertyName)[0].@[attribute]=attributeValue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,36 @@
|
|||||||
|
package io.swagger.event {
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
|
||||||
|
import flash.events.Event;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Event dispatched by the SDK to communicate success events and failure events.
|
||||||
|
* If a custom dispatcher has been assigned by the consumer on the generated client then the dispatcher dispatches
|
||||||
|
* the ApiClientEvent to indicate success or failure of the invocation using the Response
|
||||||
|
*/
|
||||||
|
public class ApiClientEvent extends Event{
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Event type to indicate a unsuccessful invocation
|
||||||
|
*/
|
||||||
|
public static const FAILURE_EVENT:String = "unsuccesfulInvocation";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Event type to indicate a successful invocation
|
||||||
|
*/
|
||||||
|
public static const SUCCESS_EVENT:String = "successfulInvocation";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The Response object which contains response info
|
||||||
|
*/
|
||||||
|
public var response: Response;
|
||||||
|
/**
|
||||||
|
* Any additional info
|
||||||
|
*/
|
||||||
|
public var message:String;
|
||||||
|
|
||||||
|
public function ApiClientEvent(type:String,bubbles:Boolean = false,cancelable:Boolean = false) {
|
||||||
|
super(type, bubbles, cancelable);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,56 @@
|
|||||||
|
package io.swagger.event {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Response contains info on the result of an API invocation.
|
||||||
|
* A completion listener will expect this Response object.
|
||||||
|
*/
|
||||||
|
public class Response {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Indicates whether the invoked operation failed or succeeded
|
||||||
|
*/
|
||||||
|
public var isSuccess:Boolean;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The payload of the succesful operation eg. a Word in a WordRequest
|
||||||
|
*/
|
||||||
|
public var payload:Object;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Error message in case of failure
|
||||||
|
*/
|
||||||
|
public var errorMessage:String;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A request Id that was passed in by the user as a param when invoking the operation
|
||||||
|
*/
|
||||||
|
public var requestId:String;
|
||||||
|
private static const API_ERROR_MSG:String = "Api error response: ";
|
||||||
|
|
||||||
|
public function Response(isSuccessful: Boolean, payload: Object = null, errorMessage: String = null, requestId: String = null) {
|
||||||
|
this.isSuccess = isSuccessful;
|
||||||
|
this.payload = payload;
|
||||||
|
this.errorMessage = getFriendlyMessage(errorMessage);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static function getFriendlyMessage(errorMessage: String): String{
|
||||||
|
var result: String = errorMessage;
|
||||||
|
if(errorMessage == null)
|
||||||
|
return null;
|
||||||
|
var errorCode: String;
|
||||||
|
var errorCodeArray: Array = errorMessage.match(/(?<=HTTP\/1.1 )[0-9][0-9][0-9]/);
|
||||||
|
if(errorCodeArray != null && errorCodeArray.length == 1){
|
||||||
|
errorCode = String(errorCodeArray[0]);
|
||||||
|
}
|
||||||
|
var msgArray: Array = errorMessage.match(/(?<=HTTP\/1.1 [0-9][0-9][0-9] )[^]*/);
|
||||||
|
if(msgArray != null && msgArray.length == 1){
|
||||||
|
result = API_ERROR_MSG + String(msgArray[0]);
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function toString(): String {
|
||||||
|
return "Response (requestId:" + requestId + "; isSuccess:" + isSuccess + "; errorMessage:" + errorMessage + "; payload:" + payload + ")";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,34 @@
|
|||||||
|
package io.swagger.exception
|
||||||
|
{
|
||||||
|
public class ApiErrorCodes
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* System exception.
|
||||||
|
*/
|
||||||
|
public static const SYSTEM_EXCEPTION: Number = 0;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* With Arguments as current key.
|
||||||
|
*/
|
||||||
|
public static const API_KEY_NOT_VALID: Number = 1000;
|
||||||
|
/**
|
||||||
|
* With arguments as current token value
|
||||||
|
*/
|
||||||
|
public static const AUTH_TOKEN_NOT_VALID: Number = 1001;
|
||||||
|
/**
|
||||||
|
* With arguments as input JSON and output class anme
|
||||||
|
*/
|
||||||
|
public static const ERROR_CONVERTING_JSON_TO_JAVA: Number = 1002;
|
||||||
|
/**
|
||||||
|
* With arguments as JAVA class name
|
||||||
|
*/
|
||||||
|
public static const ERROR_CONVERTING_JAVA_TO_JSON: Number = 1003;
|
||||||
|
|
||||||
|
public static const ERROR_FROM_WEBSERVICE_CALL: Number = 1004;
|
||||||
|
/**
|
||||||
|
* With arguments as current API server name
|
||||||
|
*/
|
||||||
|
public static const API_SERVER_NOT_VALID: Number = 1005;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
samples/client/petstore/flash/src/main/flex/lib/ASAXB-0.1.1.swc
Normal file
BIN
samples/client/petstore/flash/src/main/flex/lib/ASAXB-0.1.1.swc
Normal file
Binary file not shown.
BIN
samples/client/petstore/flash/src/main/flex/lib/as3corelib.swc
Normal file
BIN
samples/client/petstore/flash/src/main/flex/lib/as3corelib.swc
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,276 @@
|
|||||||
|
package src/main/flex/io.swagger/client/api {
|
||||||
|
|
||||||
|
import io.swagger.common.ApiInvoker;
|
||||||
|
import io.swagger.exception.ApiErrorCodes;
|
||||||
|
import io.swagger.exception.ApiError;
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
import io.swagger.common.SwaggerApi;
|
||||||
|
import src/main/flex/io.swagger/client/model.Pet;
|
||||||
|
import java.io.File;
|
||||||
|
|
||||||
|
import mx.rpc.AsyncToken;
|
||||||
|
import mx.utils.UIDUtil;
|
||||||
|
import flash.utils.Dictionary;
|
||||||
|
import flash.events.EventDispatcher;
|
||||||
|
|
||||||
|
public class PetApi extends SwaggerApi {
|
||||||
|
/**
|
||||||
|
* Constructor for the PetApi api client
|
||||||
|
* @param apiCredentials Wrapper object for tokens and hostName required towards authentication
|
||||||
|
* @param eventDispatcher Optional event dispatcher that when provided is used by the SDK to dispatch any Response
|
||||||
|
*/
|
||||||
|
public function PetApi(apiCredentials: ApiUserCredentials, eventDispatcher: EventDispatcher = null) {
|
||||||
|
super(apiCredentials, eventDispatcher);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static const event_update_pet: String = "update_pet";
|
||||||
|
public static const event_add_pet: String = "add_pet";
|
||||||
|
public static const event_find_pets_by_status: String = "find_pets_by_status";
|
||||||
|
public static const event_find_pets_by_tags: String = "find_pets_by_tags";
|
||||||
|
public static const event_get_pet_by_id: String = "get_pet_by_id";
|
||||||
|
public static const event_update_pet_with_form: String = "update_pet_with_form";
|
||||||
|
public static const event_delete_pet: String = "delete_pet";
|
||||||
|
public static const event_upload_file: String = "upload_file";
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function update_pet (body: Pet): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "PUT", queryParams, io.swagger.codegen.CodegenParameter@4afa1477, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "update_pet";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function add_pet (body: Pet): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@6855b715, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "add_pet";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Array[Pet]
|
||||||
|
*/
|
||||||
|
public function find_pets_by_status (status: Array[String] = available): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/findByStatus".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if("null" != String(status))
|
||||||
|
queryParams["status"] = toPathValue(status);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "find_pets_by_status";
|
||||||
|
|
||||||
|
token.returnType = Array[Pet];
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Array[Pet]
|
||||||
|
*/
|
||||||
|
public function find_pets_by_tags (tags: Array[String]): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/findByTags".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if("null" != String(tags))
|
||||||
|
queryParams["tags"] = toPathValue(tags);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "find_pets_by_tags";
|
||||||
|
|
||||||
|
token.returnType = Array[Pet];
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Pet
|
||||||
|
*/
|
||||||
|
public function get_pet_by_id (pet_id: Number): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/{petId}".replace(/{format}/g,"xml").replace("{" + "pet_id" + "}", getApiInvoker().escapeString(pet_id));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "get_pet_by_id";
|
||||||
|
|
||||||
|
token.returnType = Pet;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function update_pet_with_form (pet_id: String, name: String, status: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/{petId}".replace(/{format}/g,"xml").replace("{" + "pet_id" + "}", getApiInvoker().escapeString(pet_id));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "update_pet_with_form";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function delete_pet (pet_id: Number, api_key: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/{petId}".replace(/{format}/g,"xml").replace("{" + "pet_id" + "}", getApiInvoker().escapeString(pet_id));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
headerParams["api_key"] = toPathValue(api_key);
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "DELETE", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "delete_pet";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function upload_file (pet_id: Number, additional_metadata: String, file: File): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/pet/{petId}/uploadImage".replace(/{format}/g,"xml").replace("{" + "pet_id" + "}", getApiInvoker().escapeString(pet_id));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "upload_file";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,151 @@
|
|||||||
|
package src/main/flex/io.swagger/client/api {
|
||||||
|
|
||||||
|
import io.swagger.common.ApiInvoker;
|
||||||
|
import io.swagger.exception.ApiErrorCodes;
|
||||||
|
import io.swagger.exception.ApiError;
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
import io.swagger.common.SwaggerApi;
|
||||||
|
import src/main/flex/io.swagger/client/model.Dictionary;
|
||||||
|
import src/main/flex/io.swagger/client/model.Order;
|
||||||
|
|
||||||
|
import mx.rpc.AsyncToken;
|
||||||
|
import mx.utils.UIDUtil;
|
||||||
|
import flash.utils.Dictionary;
|
||||||
|
import flash.events.EventDispatcher;
|
||||||
|
|
||||||
|
public class StoreApi extends SwaggerApi {
|
||||||
|
/**
|
||||||
|
* Constructor for the StoreApi api client
|
||||||
|
* @param apiCredentials Wrapper object for tokens and hostName required towards authentication
|
||||||
|
* @param eventDispatcher Optional event dispatcher that when provided is used by the SDK to dispatch any Response
|
||||||
|
*/
|
||||||
|
public function StoreApi(apiCredentials: ApiUserCredentials, eventDispatcher: EventDispatcher = null) {
|
||||||
|
super(apiCredentials, eventDispatcher);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static const event_get_inventory: String = "get_inventory";
|
||||||
|
public static const event_place_order: String = "place_order";
|
||||||
|
public static const event_get_order_by_id: String = "get_order_by_id";
|
||||||
|
public static const event_delete_order: String = "delete_order";
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Dictionary(str, Number)
|
||||||
|
*/
|
||||||
|
public function get_inventory (): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/store/inventory".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "get_inventory";
|
||||||
|
|
||||||
|
token.returnType = Dictionary(str, Number);
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Order
|
||||||
|
*/
|
||||||
|
public function place_order (body: Order): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/store/order".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@5366f936, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "place_order";
|
||||||
|
|
||||||
|
token.returnType = Order;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns Order
|
||||||
|
*/
|
||||||
|
public function get_order_by_id (order_id: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/store/order/{orderId}".replace(/{format}/g,"xml").replace("{" + "order_id" + "}", getApiInvoker().escapeString(order_id));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "get_order_by_id";
|
||||||
|
|
||||||
|
token.returnType = Order;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function delete_order (order_id: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/store/order/{orderId}".replace(/{format}/g,"xml").replace("{" + "order_id" + "}", getApiInvoker().escapeString(order_id));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "DELETE", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "delete_order";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,275 @@
|
|||||||
|
package src/main/flex/io.swagger/client/api {
|
||||||
|
|
||||||
|
import io.swagger.common.ApiInvoker;
|
||||||
|
import io.swagger.exception.ApiErrorCodes;
|
||||||
|
import io.swagger.exception.ApiError;
|
||||||
|
import io.swagger.common.ApiUserCredentials;
|
||||||
|
import io.swagger.event.Response;
|
||||||
|
import io.swagger.common.SwaggerApi;
|
||||||
|
import src/main/flex/io.swagger/client/model.User;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import mx.rpc.AsyncToken;
|
||||||
|
import mx.utils.UIDUtil;
|
||||||
|
import flash.utils.Dictionary;
|
||||||
|
import flash.events.EventDispatcher;
|
||||||
|
|
||||||
|
public class UserApi extends SwaggerApi {
|
||||||
|
/**
|
||||||
|
* Constructor for the UserApi api client
|
||||||
|
* @param apiCredentials Wrapper object for tokens and hostName required towards authentication
|
||||||
|
* @param eventDispatcher Optional event dispatcher that when provided is used by the SDK to dispatch any Response
|
||||||
|
*/
|
||||||
|
public function UserApi(apiCredentials: ApiUserCredentials, eventDispatcher: EventDispatcher = null) {
|
||||||
|
super(apiCredentials, eventDispatcher);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static const event_create_user: String = "create_user";
|
||||||
|
public static const event_create_users_with_array_input: String = "create_users_with_array_input";
|
||||||
|
public static const event_create_users_with_list_input: String = "create_users_with_list_input";
|
||||||
|
public static const event_login_user: String = "login_user";
|
||||||
|
public static const event_logout_user: String = "logout_user";
|
||||||
|
public static const event_get_user_by_name: String = "get_user_by_name";
|
||||||
|
public static const event_update_user: String = "update_user";
|
||||||
|
public static const event_delete_user: String = "delete_user";
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function create_user (body: User): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@d3d7fa1, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "create_user";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function create_users_with_array_input (body: Array[User]): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/createWithArray".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@408629d1, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "create_users_with_array_input";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function create_users_with_list_input (body: Array[User]): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/createWithList".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "POST", queryParams, io.swagger.codegen.CodegenParameter@2823796f, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "create_users_with_list_input";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns String
|
||||||
|
*/
|
||||||
|
public function login_user (username: String, password: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/login".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if("null" != String(username))
|
||||||
|
queryParams["username"] = toPathValue(username);
|
||||||
|
if("null" != String(password))
|
||||||
|
queryParams["password"] = toPathValue(password);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "login_user";
|
||||||
|
|
||||||
|
token.returnType = String;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function logout_user (): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/logout".replace(/{format}/g,"xml");
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "logout_user";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns User
|
||||||
|
*/
|
||||||
|
public function get_user_by_name (username: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/{username}".replace(/{format}/g,"xml").replace("{" + "username" + "}", getApiInvoker().escapeString(username));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "GET", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "get_user_by_name";
|
||||||
|
|
||||||
|
token.returnType = User;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function update_user (username: String, body: User): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/{username}".replace(/{format}/g,"xml").replace("{" + "username" + "}", getApiInvoker().escapeString(username));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "PUT", queryParams, io.swagger.codegen.CodegenParameter@30f97aff, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "update_user";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns void
|
||||||
|
*/
|
||||||
|
public function delete_user (username: String): String {
|
||||||
|
// create path and map variables
|
||||||
|
var path: String = "/user/{username}".replace(/{format}/g,"xml").replace("{" + "username" + "}", getApiInvoker().escapeString(username));
|
||||||
|
|
||||||
|
// query params
|
||||||
|
var queryParams: Dictionary = new Dictionary();
|
||||||
|
var headerParams: Dictionary = new Dictionary();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
var token:AsyncToken = getApiInvoker().invokeAPI(path, "DELETE", queryParams, null, headerParams);
|
||||||
|
|
||||||
|
var requestId: String = getUniqueId();
|
||||||
|
|
||||||
|
token.requestId = requestId;
|
||||||
|
token.completionEventType = "delete_user";
|
||||||
|
|
||||||
|
token.returnType = null ;
|
||||||
|
return requestId;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user