mirror of
				https://github.com/OpenAPITools/openapi-generator.git
				synced 2025-10-31 16:53:54 +00:00 
			
		
		
		
	Swagger: AS3 sdk - Refactoring towards better names and cleanup
This commit is contained in:
		
							parent
							
								
									d1fff11394
								
							
						
					
					
						commit
						2f311849d8
					
				| @ -11,10 +11,7 @@ | ||||
| 
 | ||||
|     "defaultModelImports":[], | ||||
| 
 | ||||
|     "defaultServiceImports":["mx.rpc.AsyncToken","mx.utils.UIDUtil", | ||||
|         "flash.utils.Dictionary","flash.events.EventDispatcher", | ||||
|         "com.wordnik.swagger.common.ApiUserCredentials","com.wordnik.swagger.event.Response", | ||||
|         "com.wordnik.swagger.common.SwaggerApi"], | ||||
|     "defaultServiceImports":[], | ||||
| 
 | ||||
|     "modelPackageName":"com.wordnik.swagger.model", | ||||
| 
 | ||||
|  | ||||
| @ -99,6 +99,10 @@ | ||||
| 			<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="*" /> | ||||
|  | ||||
							
								
								
									
										28
									
								
								conf/as3/structure/build.properties
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								conf/as3/structure/build.properties
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,28 @@ | ||||
| # 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/as3 | ||||
| 
 | ||||
| # 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/as3 | ||||
| 
 | ||||
| # 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 | ||||
| 
 | ||||
| # Home directory for flex sdk 3, change this to build for Mac or PC using # as comment | ||||
| # SDK_HOME = C:/Program Files/Adobe/Flash Builder 4/sdks/3.5.0 | ||||
| # SDK_HOME = /Applications/Adobe Flash Builder 4/sdks/3.5.0 | ||||
| # SDK_HOME = /usr/local/flex_sdk_4.1.0/ | ||||
| # FLEX_HOME = /usr/local/flex_sdk_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 | ||||
| 
 | ||||
							
								
								
									
										131
									
								
								conf/as3/structure/build.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										131
									
								
								conf/as3/structure/build.xml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,131 @@ | ||||
| <!-- 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="${env.SDK_HOME}"/> | ||||
| 
 | ||||
| 
 | ||||
|     <!-- 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="${env.SDK_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="${env.SDK_HOME}/bin/asdoc" failonerror="true"> | ||||
| 
 | ||||
|             <arg line="-doc-sources ${sourcepath}"/> | ||||
|             <arg line="-source-path ${sourcepath}"/> | ||||
| 			<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 com.wordnik.swagger.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 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 com.wordnik.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> | ||||
| 
 | ||||
| </project> | ||||
| @ -29,11 +29,11 @@ package com.wordnik.swagger.common | ||||
| 	{ | ||||
| 		 | ||||
| 		private var _apiUsageCredentials:ApiUserCredentials; | ||||
| 		internal var _apiProxyServerUrl:String = "http://apihost.wordnik.com/"; | ||||
| 		private var _baseUrl: String = "http://beta.wordnik.com/api/"; | ||||
| 		internal var _apiProxyServerUrl:String = ""; | ||||
| 		private var _baseUrl: String = ""; | ||||
| 		internal var _useProxyServer: Boolean = true; | ||||
| 		private var _proxyHostName:String = "api.wordnik.com"; | ||||
| 		private var _apiPath: String = "/v4"; | ||||
| 		private var _proxyHostName:String = ""; | ||||
| 		private var _apiPath: String = ""; | ||||
| 		 | ||||
| 		public var _apiEventNotifier:EventDispatcher; | ||||
| 		public var _apiLibraryReferences:LibraryReferences; | ||||
|  | ||||
| @ -14,7 +14,7 @@ internal class ApiUrlHelper { | ||||
|     private static const HTTP_URL_PREFIX:String = "http://"; | ||||
| 
 | ||||
|     internal static function appendTokenInfo(restUrl:String, requestHeader: Object, credentials: ApiUserCredentials): String { | ||||
|         //wordnik credentials presence validated on client initialization and not here | ||||
|         //checks for the presence api credentials on client initialization and not repeated here | ||||
|         if(restUrl.indexOf("?") == -1){ | ||||
|             restUrl += ( "?" + API_URL_KEY + "=" + credentials.apiToken ); | ||||
|         } | ||||
|  | ||||
| @ -1,24 +1,24 @@ | ||||
| package com.wordnik.swagger.common { | ||||
| 
 | ||||
| /** | ||||
|  * Wordnik Api account credentials. The info is used to authenticate with the Wordnik API and perform | ||||
|  * account-specific user actions | ||||
|  * Api account credentials. | ||||
|  * | ||||
|  */ | ||||
| public class ApiUserCredentials { | ||||
|     /** | ||||
|      * All requests must be signed with your Wordnik API key | ||||
|      * An apitoken that is passed along with the requests | ||||
|      */ | ||||
|     public var apiToken:String; | ||||
|     /** | ||||
|      * A valid auth_token which is necessary for certain operations - currently, user accounts and list-related CRUD operations | ||||
|      * A valid auth_token which could be necessary for certain operations | ||||
|      */ | ||||
|     public var authToken:String; | ||||
|     /** | ||||
|      * The userId which is required for certain operations - currently, get user lists | ||||
|      * The userId which could be required for certain operations | ||||
|      */ | ||||
|     public var userId:Number; | ||||
|     /** | ||||
|      * The host name for the Wordnik Rest API eg. api.wordnik.com | ||||
|      * The host name for the Rest API eg. api.companyName.com | ||||
|      */ | ||||
|     public var hostName:String; | ||||
| 	 | ||||
| @ -36,9 +36,9 @@ public class ApiUserCredentials { | ||||
| 
 | ||||
|     /** | ||||
|      * Constructor of ApiUserCredentials | ||||
|      * @param apiToken All requests must be signed with your Wordnik API key | ||||
|      * @param authToken A valid auth_token which is necessary for certain operations - currently, user accounts and list-related CRUD operations | ||||
|      * @param hostName The host name for the Wordnik Rest API eg. api.wordnik.com | ||||
|      * @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(apiToken: String, authToken: String = null, hostName: String = null, userId: Number = -1,  | ||||
|  | ||||
| @ -14,15 +14,8 @@ package com.wordnik.swagger.common | ||||
| 		protected var _apiEventNotifier:EventDispatcher; | ||||
| 		protected var _apiInvoker: ApiInvoker; | ||||
| 		 | ||||
| 		protected var apiProxyServerUrl:String = "http://apihost.wordnik.com/"; | ||||
| 		protected var _baseUrl: String = "http://beta.wordnik.com/api/"; | ||||
| 		protected var _useProxyServer: Boolean = true; | ||||
| 		protected var proxyHostName:String = "api.wordnik.com"; | ||||
| 		 | ||||
| 		protected static const DELETE_DATA_DUMMY:String = "dummyDataRequiredForDeleteOverride"; | ||||
| 		protected static const X_HTTP_OVERRIDE_KEY:String = "X-HTTP-Method-Override"; | ||||
| 		protected static const CONTENT_TYPE_HEADER_KEY:String = "Content-Type"; | ||||
| 		 | ||||
| 
 | ||||
| 		 | ||||
| 		/** | ||||
| 		 * Constructor for the api client | ||||
|  | ||||
| @ -5,7 +5,7 @@ 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 WordnikClient then the dispatcher dispatches | ||||
|  * 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{ | ||||
|  | ||||
| @ -1,8 +1,8 @@ | ||||
| package com.wordnik.swagger.event { | ||||
| 
 | ||||
| /** | ||||
|  * Response contains info on the result of a Wordnik API invocation. | ||||
|  * A completion listener will expect this WNResult object as a parameter.  | ||||
|  * Response contains info on the result of an API invocation. | ||||
|  * A completion listener will expect this Response object. | ||||
|  */ | ||||
| public class Response { | ||||
| 
 | ||||
|  | ||||
| @ -1,13 +0,0 @@ | ||||
| package com.wordnik.swagger.model | ||||
| { | ||||
| 	public class DefinitionWrapper | ||||
| 	{ | ||||
| 		/** | ||||
| 		 *  | ||||
| 		 *  | ||||
| 		 *  | ||||
| 		 */ | ||||
| 		[XmlElements(name="definition", type="com.wordnik.swagger.model.Definition")] | ||||
| 		public var definition: Array  =  new Array(); | ||||
| 	} | ||||
| } | ||||
| @ -4,7 +4,14 @@ package $packageName$ { | ||||
| import $exceptionPackageName$.ApiErrorCodes; | ||||
| import $exceptionPackageName$.ApiError; | ||||
| import $modelPackageName$.*; | ||||
| import com.wordnik.swagger.common.ApiUserCredentials; | ||||
| import com.wordnik.swagger.event.Response; | ||||
| import com.wordnik.swagger.common.SwaggerApi; | ||||
| 
 | ||||
| import mx.rpc.AsyncToken; | ||||
| import mx.utils.UIDUtil; | ||||
| import flash.utils.Dictionary; | ||||
| import flash.events.EventDispatcher; | ||||
| 
 | ||||
| $imports:{ import | | ||||
| import $import$; | ||||
| @ -17,6 +24,9 @@ import $import$; | ||||
|      */ | ||||
|     public class $resource$ extends $extends$ { | ||||
| 
 | ||||
| $methods:{ method | | ||||
|         public var event_$method.name$: String = "$method.name$";$\r$}$ | ||||
| 
 | ||||
| 		/** | ||||
| 		 * Constructor for the $resource$ api client | ||||
| 		 * @param apiCredentials Wrapper object for tokens and hostName required towards authentication | ||||
|  | ||||
| @ -22,7 +22,6 @@ import com.wordnik.swagger.codegen.config.common.CamelCaseNamingPolicyProvider; | ||||
| import com.wordnik.swagger.codegen.config.java.JavaDataTypeMappingProvider; | ||||
| import com.wordnik.swagger.codegen.exception.CodeGenerationException; | ||||
| import com.wordnik.swagger.codegen.resource.*; | ||||
| import com.wordnik.swagger.codegen.util.FileUtil; | ||||
| import org.antlr.stringtemplate.StringTemplate; | ||||
| import org.antlr.stringtemplate.StringTemplateGroup; | ||||
| import org.codehaus.jackson.map.DeserializationConfig; | ||||
| @ -107,7 +106,7 @@ public class LibraryCodeGenerator { | ||||
|         } | ||||
|         generateModelClasses(resources, aTemplateGroup); | ||||
|         generateModelClassesForInput(resources, aTemplateGroup); | ||||
|         if(languageConfig.isHelperEnumRequired()){ | ||||
|         if(languageConfig.isModelEnumRequired()){ | ||||
|             generateEnumForAllowedValues(resources, aTemplateGroup); | ||||
|         } | ||||
| 
 | ||||
| @ -138,9 +137,6 @@ public class LibraryCodeGenerator { | ||||
|     private void generateModelClasses(List<Resource> resources, StringTemplateGroup templateGroup) { | ||||
|     	List<String> generatedClassNames = new ArrayList(); | ||||
| 
 | ||||
|         //remove old generated files | ||||
|         FileUtil.clearFolder(languageConfig.getModelClassLocation()); | ||||
| 
 | ||||
|     	for(Resource resource: resources) { | ||||
|     		for(Model model : resource.getModels()){ | ||||
|     			if(!generatedClassNames.contains(model.getName()) && !this.getCodeGenRulesProvider().isModelIgnored(model.getName())){ | ||||
| @ -291,8 +287,8 @@ public class LibraryCodeGenerator { | ||||
|                             if(codeGenRulesProvider.isModelIgnored( nameGenerator.applyMethodNamingPolicy( method.getReturnClassName() ))){ | ||||
|                                 continue; | ||||
|                             } | ||||
|                             if(method.getOutputWrapperModel() != null) { | ||||
|                                 Model model = method.getOutputWrapperModel(); | ||||
|                             if(method.getListWrapperModel() != null) { | ||||
|                                 Model model = method.getListWrapperModel(); | ||||
|                                 method.setReturnClassName(model.getName()); | ||||
|                                 if(model != null){ | ||||
|                                     if(!generatedClasses.contains(model.getName())) { | ||||
| @ -314,7 +310,7 @@ public class LibraryCodeGenerator { | ||||
|                                         template.setAttribute("className", model.getGenratedClassName()); | ||||
|                                         template.setAttribute(PACKAGE_NAME, config.getModelPackageName()); | ||||
|                                         File aFile = new File(languageConfig.getModelClassLocation()+model.getGenratedClassName()+languageConfig.getClassFileExtension()); | ||||
|                                         writeFile(aFile, template.toString(), "Output wrapper model class"); | ||||
|                                         writeFile(aFile, template.toString(), "List wrapper model class"); | ||||
|                                         generatedClasses.add(model.getName()); | ||||
|                                     } | ||||
|                                 } | ||||
| @ -334,9 +330,6 @@ public class LibraryCodeGenerator { | ||||
|      */ | ||||
|     private void generateAPIClasses(List<Resource> resources, StringTemplateGroup templateGroup) { | ||||
| 
 | ||||
|         //delete previously generated files | ||||
|         FileUtil.clearFolder(languageConfig.getResourceClassLocation()); | ||||
| 
 | ||||
|     	for(Resource resource : resources) { | ||||
|             try{ | ||||
|                 List<ResourceMethod> methods = new ArrayList<ResourceMethod>(); | ||||
|  | ||||
| @ -54,7 +54,7 @@ public class ResourceMethod { | ||||
| 	 | ||||
| 	private Model inputModel; | ||||
| 
 | ||||
|     private Model outputWrapperModel; | ||||
|     private Model listWrapperModel; | ||||
| 
 | ||||
|     public String getTitle() { | ||||
|         return title; | ||||
| @ -202,11 +202,11 @@ public class ResourceMethod { | ||||
| 		return false; | ||||
| 	} | ||||
| 
 | ||||
|     public void setOutputWrapperModel(Model outputWrapperModel) { | ||||
|         this.outputWrapperModel = outputWrapperModel; | ||||
|     public void setListWrapperModel(Model listWrapperModel) { | ||||
|         this.listWrapperModel = listWrapperModel; | ||||
|     } | ||||
| 
 | ||||
|     public Model getOutputWrapperModel() { | ||||
|         return outputWrapperModel; | ||||
|     public Model getListWrapperModel() { | ||||
|         return listWrapperModel; | ||||
|     } | ||||
| } | ||||
|  | ||||
| @ -41,7 +41,7 @@ public class LanguageConfiguration { | ||||
| 
 | ||||
|     private String annotationPackageName; | ||||
| 
 | ||||
|     private boolean isHelperEnumRequired = true; | ||||
|     private boolean isModelEnumRequired = true; | ||||
| 
 | ||||
|     private boolean isOutputWrapperRequired = false; | ||||
| 
 | ||||
| @ -114,12 +114,12 @@ public class LanguageConfiguration { | ||||
|         this.libraryHome = libraryHome; | ||||
|     } | ||||
| 
 | ||||
|     public void setHelperEnumRequired(boolean helperEnumRequired) { | ||||
|         this.isHelperEnumRequired = helperEnumRequired; | ||||
|     public void setModelEnumRequired(boolean modelEnumRequired) { | ||||
|         this.isModelEnumRequired = modelEnumRequired; | ||||
|     } | ||||
| 
 | ||||
|     public boolean isHelperEnumRequired() { | ||||
|         return isHelperEnumRequired; | ||||
|     public boolean isModelEnumRequired() { | ||||
|         return isModelEnumRequired; | ||||
|     } | ||||
| 
 | ||||
|     public void setOutputWrapperRequired(boolean outputWrapperRequired) { | ||||
|  | ||||
| @ -107,7 +107,7 @@ public interface NamingPolicyProvider { | ||||
|      * @param wrapperItemName | ||||
|      * @return | ||||
|      */ | ||||
|     public String getOutputWrapperName(String wrapperItemName); | ||||
|     public String getListWrapperName(String wrapperItemName); | ||||
| 
 | ||||
|     /** | ||||
|      * Generates a name for an enum for the param or field name. | ||||
|  | ||||
| @ -76,12 +76,15 @@ public class As3LibCodeGen extends LibraryCodeGenerator{ | ||||
|         //create ouput directories | ||||
|         FileUtil.createOutputDirectories(as3Configuration.getModelClassLocation(), as3Configuration.getClassFileExtension()); | ||||
|         FileUtil.createOutputDirectories(as3Configuration.getResourceClassLocation(), as3Configuration.getClassFileExtension()); | ||||
|         //delete previously generated files | ||||
|         FileUtil.clearFolder(as3Configuration.getModelClassLocation()); | ||||
|         FileUtil.clearFolder(as3Configuration.getResourceClassLocation()); | ||||
|         FileUtil.clearFolder(as3Configuration.getLibraryHome() + "/src/main/as3/com/wordnik/swagger/common"); | ||||
|         FileUtil.clearFolder(as3Configuration.getLibraryHome() + "/src/main/as3/com/wordnik/swagger/exception"); | ||||
|         FileUtil.clearFolder(as3Configuration.getLibraryHome() + "/src/main/as3/com/wordnik/swagger/event"); | ||||
|         FileUtil.copyDirectory(new File(as3Configuration.getStructureLocation()), new File(as3Configuration.getLibraryHome())); | ||||
| 
 | ||||
|         as3Configuration.setHelperEnumRequired(false); | ||||
|         as3Configuration.setModelEnumRequired(false); | ||||
|         as3Configuration.setOutputWrapperRequired(true); | ||||
|         return as3Configuration; | ||||
|     } | ||||
|  | ||||
| @ -151,8 +151,8 @@ public class CamelCaseNamingPolicyProvider implements NamingPolicyProvider { | ||||
|      * @param wrapperItemName | ||||
|      * @return | ||||
|      */ | ||||
|     public String getOutputWrapperName(String wrapperItemName) { | ||||
|         return applyClassNamingPolicy(wrapperItemName) + "Wrapper"; | ||||
|     public String getListWrapperName(String wrapperItemName) { | ||||
|         return applyClassNamingPolicy(wrapperItemName) + "List"; | ||||
|     } | ||||
| 
 | ||||
|     /** | ||||
|  | ||||
| @ -85,6 +85,8 @@ public class JavaLibCodeGen extends LibraryCodeGenerator { | ||||
|         //create ouput directories | ||||
|         FileUtil.createOutputDirectories(javaConfiguration.getModelClassLocation(), javaConfiguration.getClassFileExtension()); | ||||
|         FileUtil.createOutputDirectories(javaConfiguration.getResourceClassLocation(), javaConfiguration.getClassFileExtension()); | ||||
|         FileUtil.clearFolder(javaConfiguration.getModelClassLocation()); | ||||
|         FileUtil.clearFolder(javaConfiguration.getResourceClassLocation()); | ||||
|         FileUtil.clearFolder(javaConfiguration.getLibraryHome() + "/src/main/java/com/wordnik/swagger/runtime"); | ||||
|         FileUtil.createOutputDirectories(javaConfiguration.getLibraryHome() + "/src/main/java/com/wordnik/swagger/runtime", "java"); | ||||
|         FileUtil.copyDirectory(new File("src/main/java/com/wordnik/swagger/runtime"), new File(javaConfiguration.getLibraryHome()+"/src/main/java/com/wordnik/swagger/runtime")); | ||||
|  | ||||
| @ -309,16 +309,15 @@ public class EndpointOperation { | ||||
|             //if this is a list return type | ||||
|             if(method.getReturnClassName().equals(dataTypeMapper.getListReturnTypeSignature(responseClass))){ | ||||
|                 String returnValueTypeName = method.getReturnValue(); | ||||
|                 Model outputWrapperModel = new Model(); | ||||
|                 outputWrapperModel.setName(nameGenerator.getOutputWrapperName(returnValueTypeName)); | ||||
|                 Model listWrapperModel = new Model(); | ||||
|                 listWrapperModel.setName(nameGenerator.getListWrapperName(returnValueTypeName)); | ||||
|                 List<ModelField> fields = new ArrayList<ModelField>(); | ||||
|                 ModelField aModelField = new ModelField(); | ||||
|                 aModelField.setName(nameGenerator.applyMethodNamingPolicy(returnValueTypeName)); | ||||
|                 aModelField.setParamType(responseClass); | ||||
|                 fields.add(aModelField); | ||||
|                 outputWrapperModel.setFields(fields); | ||||
|                 method.setOutputWrapperModel(outputWrapperModel); | ||||
|                 //method.setReturnClassName(outputWrapperModel.getName()); | ||||
|                 listWrapperModel.setFields(fields); | ||||
|                 method.setListWrapperModel(listWrapperModel); | ||||
|             } | ||||
| 
 | ||||
| 			//get description string for exception			 | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user