Merge pull request #3124 from mateuszmackowiak/objc/core_data_support_for_array_model

[Objc] - CoreData support for ArrayModels
This commit is contained in:
wing328 2016-06-16 17:24:08 +08:00 committed by GitHub
commit dd379461e2
48 changed files with 437 additions and 159 deletions

View File

@ -22,6 +22,7 @@ public class CodegenModel {
public String unescapedDescription; public String unescapedDescription;
public String discriminator; public String discriminator;
public String defaultValue; public String defaultValue;
public String arrayModelType;
public List<CodegenProperty> vars = new ArrayList<CodegenProperty>(); public List<CodegenProperty> vars = new ArrayList<CodegenProperty>();
public List<CodegenProperty> requiredVars = new ArrayList<CodegenProperty>(); // a list of required properties public List<CodegenProperty> requiredVars = new ArrayList<CodegenProperty>(); // a list of required properties
public List<CodegenProperty> optionalVars = new ArrayList<CodegenProperty>(); // a list of optional properties public List<CodegenProperty> optionalVars = new ArrayList<CodegenProperty>(); // a list of optional properties
@ -35,7 +36,7 @@ public class CodegenModel {
public Set<String> allMandatory; public Set<String> allMandatory;
public Set<String> imports = new TreeSet<String>(); public Set<String> imports = new TreeSet<String>();
public Boolean hasVars, emptyVars, hasMoreModels, hasEnums, isEnum, hasRequired; public Boolean hasVars, emptyVars, hasMoreModels, hasEnums, isEnum, hasRequired, isArrayModel;
public ExternalDocs externalDocs; public ExternalDocs externalDocs;
public Map<String, Object> vendorExtensions; public Map<String, Object> vendorExtensions;

View File

@ -1198,6 +1198,8 @@ public class DefaultCodegen {
ArrayModel am = (ArrayModel) model; ArrayModel am = (ArrayModel) model;
ArrayProperty arrayProperty = new ArrayProperty(am.getItems()); ArrayProperty arrayProperty = new ArrayProperty(am.getItems());
m.hasEnums = false; // Otherwise there will be a NullPointerException in JavaClientCodegen.fromModel m.hasEnums = false; // Otherwise there will be a NullPointerException in JavaClientCodegen.fromModel
m.isArrayModel = true;
m.arrayModelType = fromProperty(name, arrayProperty).complexType;
addParentContainer(m, name, arrayProperty); addParentContainer(m, name, arrayProperty);
} else if (model instanceof RefModel) { } else if (model instanceof RefModel) {
// TODO // TODO
@ -1465,7 +1467,9 @@ public class DefaultCodegen {
if (p instanceof BinaryProperty) { if (p instanceof BinaryProperty) {
property.isBinary = true; property.isBinary = true;
} }
if (p instanceof UUIDProperty) {
property.isString = true;
}
if (p instanceof ByteArrayProperty) { if (p instanceof ByteArrayProperty) {
property.isByteArray = true; property.isByteArray = true;
} }

View File

@ -1,6 +1,7 @@
package io.swagger.codegen.languages; package io.swagger.codegen.languages;
import io.swagger.codegen.*; import io.swagger.codegen.*;
import io.swagger.models.ArrayModel;
import io.swagger.models.Model; import io.swagger.models.Model;
import io.swagger.models.properties.*; import io.swagger.models.properties.*;
@ -94,7 +95,7 @@ public class ObjcClientCodegen extends DefaultCodegen implements CodegenConfig {
typeMapping.clear(); typeMapping.clear();
typeMapping.put("enum", "NSString"); typeMapping.put("enum", "NSString");
typeMapping.put("date", "NSDate"); typeMapping.put("date", "NSDate");
typeMapping.put("DateTime", "NSDate"); typeMapping.put("datetime", "NSDate");
typeMapping.put("boolean", "NSNumber"); typeMapping.put("boolean", "NSNumber");
typeMapping.put("string", "NSString"); typeMapping.put("string", "NSString");
typeMapping.put("integer", "NSNumber"); typeMapping.put("integer", "NSNumber");
@ -105,12 +106,15 @@ public class ObjcClientCodegen extends DefaultCodegen implements CodegenConfig {
typeMapping.put("array", "NSArray"); typeMapping.put("array", "NSArray");
typeMapping.put("map", "NSDictionary"); typeMapping.put("map", "NSDictionary");
typeMapping.put("number", "NSNumber"); typeMapping.put("number", "NSNumber");
typeMapping.put("bigdecimal", "NSNumber");
typeMapping.put("List", "NSArray"); typeMapping.put("List", "NSArray");
typeMapping.put("object", "NSObject"); typeMapping.put("object", "NSObject");
typeMapping.put("file", "NSURL"); typeMapping.put("file", "NSURL");
typeMapping.put("binary", "NSData"); typeMapping.put("binary", "NSData");
typeMapping.put("ByteArray", "NSData"); typeMapping.put("bytearray", "NSData");
typeMapping.put("byte", "NSData"); typeMapping.put("byte", "NSData");
typeMapping.put("uuid", "NSString");
typeMapping.put("password", "NSString");
// ref: http://www.tutorialspoint.com/objective_c/objective_c_basic_syntax.htm // ref: http://www.tutorialspoint.com/objective_c/objective_c_basic_syntax.htm
setReservedWordsLowerCase( setReservedWordsLowerCase(
@ -293,8 +297,8 @@ public class ObjcClientCodegen extends DefaultCodegen implements CodegenConfig {
public String getSwaggerType(Property p) { public String getSwaggerType(Property p) {
String swaggerType = super.getSwaggerType(p); String swaggerType = super.getSwaggerType(p);
String type = null; String type = null;
if (typeMapping.containsKey(swaggerType)) { if (typeMapping.containsKey(swaggerType.toLowerCase())) {
type = typeMapping.get(swaggerType); type = typeMapping.get(swaggerType.toLowerCase());
if (languageSpecificPrimitives.contains(type) && !foundationClasses.contains(type)) { if (languageSpecificPrimitives.contains(type) && !foundationClasses.contains(type)) {
return toModelNameWithoutReservedWordCheck(type); return toModelNameWithoutReservedWordCheck(type);
} }
@ -304,15 +308,6 @@ public class ObjcClientCodegen extends DefaultCodegen implements CodegenConfig {
return toModelNameWithoutReservedWordCheck(type); return toModelNameWithoutReservedWordCheck(type);
} }
public CodegenProperty coreDatafromProperty(String name, Property p) {
CodegenProperty property = fromProperty(name, p);
if(!generateCoreData) {
return property;
}
property.baseType = getTypeCoreDataDeclaration(p);
return property;
}
@Override @Override
public String getTypeDeclaration(Property p) { public String getTypeDeclaration(Property p) {
if (p instanceof ArrayProperty) { if (p instanceof ArrayProperty) {
@ -377,73 +372,6 @@ public class ObjcClientCodegen extends DefaultCodegen implements CodegenConfig {
} }
} }
public String getTypeCoreDataDeclaration(Property p) {
if (p instanceof ArrayProperty) {
ArrayProperty ap = (ArrayProperty) p;
Property inner = ap.getItems();
String innerType = getSwaggerType(inner);
String innerTypeDeclaration = getTypeDeclaration(inner);
if (innerTypeDeclaration.endsWith("*")) {
innerTypeDeclaration = innerTypeDeclaration.substring(0, innerTypeDeclaration.length() - 1);
}
// In this codition, type of property p is array of primitive,
// return container type with pointer, e.g. `NSArray*<NSString*>*'
if (languageSpecificPrimitives.contains(innerTypeDeclaration)) {
return getSwaggerType(p) + "<" + innerTypeDeclaration + "*>*";
}
// In this codition, type of property p is array of model,
// return container type combine inner type with pointer, e.g. `NSArray<SWGTag>*'
else {
for (String sd : advancedMapingTypes) {
if(innerTypeDeclaration.startsWith(sd)) {
return getSwaggerType(p) + "<" + innerTypeDeclaration + "*>*";
}
}
return getSwaggerType(p) + "<" + innerTypeDeclaration + ">*";
}
} else if (p instanceof MapProperty) {
MapProperty mp = (MapProperty) p;
Property inner = mp.getAdditionalProperties();
String innerTypeDeclaration = getTypeDeclaration(inner);
if (innerTypeDeclaration.endsWith("*")) {
innerTypeDeclaration = innerTypeDeclaration.substring(0, innerTypeDeclaration.length() - 1);
}
if (languageSpecificPrimitives.contains(innerTypeDeclaration)) {
return getSwaggerType(p) + "<NSString*, " + innerTypeDeclaration + "*>*";
} else {
for (String s : advancedMapingTypes) {
if(innerTypeDeclaration.startsWith(s)) {
return getSwaggerType(p) + "<NSString*, " + innerTypeDeclaration + "*>*";
}
}
return getSwaggerType(p) + "<NSString*, " + innerTypeDeclaration + ">*";
}
} else {
String swaggerType = getSwaggerType(p);
// In this codition, type of p is objective-c primitive type, e.g. `NSSNumber',
// return type of p with pointer, e.g. `NSNumber*'
if (languageSpecificPrimitives.contains(swaggerType) &&
foundationClasses.contains(swaggerType)) {
return swaggerType + "*";
}
// In this codition, type of p is c primitive type, e.g. `bool',
// return type of p, e.g. `bool'
else if (languageSpecificPrimitives.contains(swaggerType)) {
return swaggerType;
}
// In this codition, type of p is objective-c object type, e.g. `SWGPet',
// return type of p with pointer, e.g. `SWGPet*'
else {
return swaggerType + "*";
}
}
}
@Override @Override
public boolean isDataTypeBinary(String dataType) { public boolean isDataTypeBinary(String dataType) {
return dataType.toLowerCase().startsWith("nsdata"); return dataType.toLowerCase().startsWith("nsdata");

View File

@ -2,10 +2,11 @@
<model userDefinedModelVersionIdentifier="" type="com.apple.IDECoreDataModeler.DataModel" documentVersion="1.0" lastSavedToolsVersion="9525" systemVersion="15D21" minimumToolsVersion="Xcode 7.0"> <model userDefinedModelVersionIdentifier="" type="com.apple.IDECoreDataModeler.DataModel" documentVersion="1.0" lastSavedToolsVersion="9525" systemVersion="15D21" minimumToolsVersion="Xcode 7.0">
{{#models}}{{#model}}<entity name="{{{classname}}}ManagedObject" representedClassName="{{{classname}}}ManagedObject" syncable="YES"> {{#models}}{{#model}}<entity name="{{{classname}}}ManagedObject" representedClassName="{{{classname}}}ManagedObject" syncable="YES">
{{#vars}}{{#complexType}} <relationship name="{{name}}" {{^required}}optional="YES"{{/required}} {{#isListContainer}}toMany="YES"{{/isListContainer}}{{^isListContainer}}maxCount="1"{{/isListContainer}} deletionRule="Cascade" destinationEntity="{{{complexType}}}ManagedObject" syncable="YES"/>{{/complexType}}{{^complexType}} <attribute name="{{name}}" {{^required}}optional="YES"{{/required}} attributeType="{{#isString}}String{{/isString}}{{#isInteger}}Integer 16{{/isInteger}}{{#isLong}}Double{{/isLong}}{{#isDouble}}Double{{/isDouble}}{{#isFloat}}Float{{/isFloat}}{{#isByteArray}}Binary{{/isByteArray}}{{#isBinary}}Binary{{/isBinary}}{{#isListContainer}}Transformable{{/isListContainer}}{{#isMapContainer}}Transformable{{/isMapContainer}}{{#isBoolean}}Boolean{{/isBoolean}}{{#isDate}}Date{{/isDate}}{{#isDateTime}}Date{{/isDateTime}}" syncable="YES"/>{{/complexType}}{{#vendorExtensions.x-unique-id-key}} {{#isArrayModel}} <relationship name="entries" optional="YES" toMany="YES" deletionRule="Cascade" destinationEntity="{{{arrayModelType}}}ManagedObject" syncable="YES"/>
<uniquenessConstraints><uniquenessConstraint><constraint value="{{name}}"/></uniquenessConstraint></uniquenessConstraints>{{/vendorExtensions.x-unique-id-key}} {{/isArrayModel}}{{^isArrayModel}}{{#vars}}{{#complexType}} <relationship name="{{name}}" {{^required}}optional="YES"{{/required}} {{#isListContainer}}toMany="YES"{{/isListContainer}}{{^isListContainer}}maxCount="1"{{/isListContainer}} deletionRule="Cascade" destinationEntity="{{{complexType}}}ManagedObject" syncable="YES"/>{{/complexType}}{{^complexType}} <attribute name="{{name}}" {{^required}}optional="YES"{{/required}} attributeType="{{#isString}}String{{/isString}}{{#isInteger}}Integer 16{{/isInteger}}{{#isLong}}Double{{/isLong}}{{#isDouble}}Double{{/isDouble}}{{#isFloat}}Float{{/isFloat}}{{#isByteArray}}Binary{{/isByteArray}}{{#isBinary}}Binary{{/isBinary}}{{#isListContainer}}Transformable{{/isListContainer}}{{#isMapContainer}}Transformable{{/isMapContainer}}{{#isBoolean}}Boolean{{/isBoolean}}{{#isDate}}Date{{/isDate}}{{#isDateTime}}Date{{/isDateTime}}" syncable="YES"/>{{/complexType}}{{#vendorExtensions.x-is-unique}}
<uniquenessConstraints><uniquenessConstraint><constraint value="{{name}}"/></uniquenessConstraint></uniquenessConstraints>{{/vendorExtensions.x-is-unique}}
{{/vars}} {{/vars}}
{{/isArrayModel}}
</entity> </entity>
{{/model}}{{/models}} {{/model}}{{/models}}
</model> </model>

View File

@ -8,11 +8,13 @@
* Do not edit the class manually. * Do not edit the class manually.
*/ */
@implementation {{classname}}ManagedObject @implementation {{classname}}ManagedObject
{{#isArrayModel}}
{{#vars}} @dynamic entries;
@dynamic {{name}};
{{/vars}}
{{/isArrayModel}}{{^isArrayModel}}{{#vars}}
@dynamic {{name}};{{/vars}}
{{/isArrayModel}}
{{/model}} {{/model}}
@end @end
{{/models}} {{/models}}

View File

@ -10,26 +10,40 @@
{{#model}} {{#model}}
NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_BEGIN
{{#isArrayModel}}
@interface {{classname}}ManagedObject : {{#parent}}{{{parent}}}{{/parent}}{{^parent}}NSManagedObject{{/parent}} @interface {{classname}}ManagedObject : NSManagedObject
@property (nullable, nonatomic, retain) NSSet<{{{arrayModelType}}}ManagedObject*>* entries;
{{/isArrayModel}}{{^isArrayModel}}
@interface {{classname}}ManagedObject : {{#parent}}{{{parent}}}ManagedObject{{/parent}}{{^parent}}NSManagedObject{{/parent}}
{{#vars}} {{#vars}}
{{#description}}/* {{{description}}} {{^required}}[optional]{{/required}} {{#description}}/* {{{description}}} {{^required}}[optional]{{/required}}
*/{{/description}} */{{/description}}
@property (nullable, nonatomic, retain) {{^complexType}}{{{ datatype }}}{{/complexType}}{{#complexType}}{{#isListContainer}}NSSet<{{{complexType}}}ManagedObject*>*{{/isListContainer}}{{^isListContainer}}{{{complexType}}}ManagedObject*{{/isListContainer}}{{/complexType}} {{name}}; @property (nullable, nonatomic, retain) {{^complexType}}{{{ datatype }}}{{/complexType}}{{#complexType}}{{#isListContainer}}NSSet<{{{complexType}}}ManagedObject*>*{{/isListContainer}}{{^isListContainer}}{{#isMapContainer}}{{{ datatype }}}{{/isMapContainer}}{{^isMapContainer}}{{{complexType}}}ManagedObject*{{/isMapContainer}}{{/isListContainer}}{{/complexType}} {{name}};
{{/vars}} {{/vars}}
{{/isArrayModel}}
@end @end
@interface {{classname}}ManagedObject (GeneratedAccessors) @interface {{classname}}ManagedObject (GeneratedAccessors)
{{#isArrayModel}}
- (void)addEntriesObject:({{arrayModelType}}ManagedObject *)value;
- (void)removeEntriesObject:({{arrayModelType}}ManagedObject *)value;
- (void)addEntries:(NSSet<{{{arrayModelType}}}ManagedObject*> *)values;
- (void)removeEntries:(NSSet<{{{arrayModelType}}}ManagedObject*> *)values;
{{/isArrayModel}}
{{^isArrayModel}}
{{#vars}}{{#isListContainer}}{{#complexType}}- (void)add{{vendorExtensions.x-uppercaseName}}Object:({{complexType}}ManagedObject *)value; {{#vars}}{{#isListContainer}}{{#complexType}}- (void)add{{vendorExtensions.x-uppercaseName}}Object:({{complexType}}ManagedObject *)value;
- (void)remove{{vendorExtensions.x-uppercaseName}}Object:({{complexType}}ManagedObject *)value; - (void)remove{{vendorExtensions.x-uppercaseName}}Object:({{complexType}}ManagedObject *)value;
- (void)add{{vendorExtensions.x-uppercaseName}}:(NSSet<{{{complexType}}}ManagedObject*> *)values; - (void)add{{vendorExtensions.x-uppercaseName}}:(NSSet<{{{complexType}}}ManagedObject*> *)values;
- (void)remove{{vendorExtensions.x-uppercaseName}}:(NSSet<{{{complexType}}}ManagedObject*> *)values; - (void)remove{{vendorExtensions.x-uppercaseName}}:(NSSet<{{{complexType}}}ManagedObject*> *)values;
{{/complexType}}{{/isListContainer}}{{/vars}} {{/complexType}}{{/isListContainer}}{{/vars}}
{{/isArrayModel}}
@end @end
{{/model}}
{{/models}}
NS_ASSUME_NONNULL_END NS_ASSUME_NONNULL_END
{{/model}}
{{/models}}

View File

@ -13,8 +13,9 @@
-(instancetype)init { -(instancetype)init {
self = [super init]; self = [super init];
if (self != nil) { if (self != nil) {
{{#vars}}{{#complexType}} _{{name}}Builder = [[{{complexType}}ManagedObjectBuilder alloc] init]; {{#isArrayModel}} _entriesBuilder = [[{{arrayModelType}}ManagedObjectBuilder alloc] init];
{{/complexType}}{{/vars}} } {{/isArrayModel}}{{#vars}}{{#complexType}}{{^isMapContainer}} _{{name}}Builder = [[{{complexType}}ManagedObjectBuilder alloc] init];
{{/isMapContainer}}{{/complexType}}{{/vars}} }
return self; return self;
} }
@ -23,9 +24,9 @@
return managedObject; return managedObject;
} }
-({{classname}}ManagedObject*){{classname}}ManagedObjectFrom{{classname}}:({{classname}}*){{name}} context:(NSManagedObjectContext*)context { -({{classname}}ManagedObject*){{classname}}ManagedObjectFrom{{classname}}:({{classname}}*)object context:(NSManagedObjectContext*)context {
{{classname}}ManagedObject* new{{classname}} = [self createNew{{{classname}}}ManagedObjectInContext:context]; {{classname}}ManagedObject* new{{classname}} = [self createNew{{{classname}}}ManagedObjectInContext:context];
[self update{{classname}}ManagedObject:new{{classname}} with{{classname}}:{{name}}]; [self update{{classname}}ManagedObject:new{{classname}} with{{classname}}:object];
return new{{classname}}; return new{{classname}};
} }
@ -40,13 +41,18 @@
[convertedObjs addObject:convertedObj]; [convertedObjs addObject:convertedObj];
} }
managedObject.{{name}} = convertedObjs; managedObject.{{name}} = convertedObjs;
}{{/isListContainer}}{{^isListContainer}} }{{/isListContainer}}{{^isListContainer}}{{^isMapContainer}}
if(!managedObject.{{name}}) { if(!managedObject.{{name}}) {
managedObject.{{name}} = [self.{{name}}Builder {{complexType}}ManagedObjectFrom{{complexType}}:object.{{name}} context:managedObject.managedObjectContext]; managedObject.{{name}} = [self.{{name}}Builder {{complexType}}ManagedObjectFrom{{complexType}}:object.{{name}} context:managedObject.managedObjectContext];
} else { } else {
[self.{{name}}Builder update{{complexType}}ManagedObject:managedObject.{{name}} with{{complexType}}:object.{{name}}]; [self.{{name}}Builder update{{complexType}}ManagedObject:managedObject.{{name}} with{{complexType}}:object.{{name}}];
}{{/isListContainer}}{{/complexType}} }{{/isMapContainer}}{{#isMapContainer}}managedObject.{{name}} = [object.{{name}} copy];{{/isMapContainer}}{{/isListContainer}}{{/complexType}}
{{/vars}} {{/vars}}{{#isArrayModel}} NSMutableSet * convertedObjs = [NSMutableSet set];
for (id innerObject in object) {
id convertedObj = [self.entriesBuilder {{arrayModelType}}ManagedObjectFrom{{arrayModelType}}:innerObject context:managedObject.managedObjectContext];
[convertedObjs addObject:convertedObj];
}
managedObject.entries = convertedObjs;{{/isArrayModel}}
} }
-({{classname}}*){{classname}}From{{classname}}ManagedObject:({{classname}}ManagedObject*)obj { -({{classname}}*){{classname}}From{{classname}}ManagedObject:({{classname}}ManagedObject*)obj {
@ -59,7 +65,14 @@
} }
-(void)update{{classname}}:({{classname}}*)new{{classname}} with{{classname}}ManagedObject:({{classname}}ManagedObject*)obj { -(void)update{{classname}}:({{classname}}*)new{{classname}} with{{classname}}ManagedObject:({{classname}}ManagedObject*)obj {
{{#vars}}{{^complexType}} new{{classname}}.{{name}} = [obj.{{name}} copy];{{/complexType}}{{#complexType}}{{#isListContainer}} if(obj.{{name}} != nil) { {{#isArrayModel}} [new{{classname}} removeAllObjects];
NSMutableArray* convertedObjs = [NSMutableArray array];
for (id innerObject in obj.entries) {
id convertedObj = [self.entriesBuilder {{arrayModelType}}From{{arrayModelType}}ManagedObject:innerObject];
[convertedObjs addObject:convertedObj];
}
[new{{classname}} addObjectsFromArray:convertedObjs];
{{/isArrayModel}}{{#vars}}{{^complexType}} new{{classname}}.{{name}} = [obj.{{name}} copy];{{/complexType}}{{#complexType}}{{#isListContainer}} if(obj.{{name}} != nil) {
NSMutableArray* convertedObjs = [NSMutableArray array]; NSMutableArray* convertedObjs = [NSMutableArray array];
for (id innerObject in obj.{{name}}) { for (id innerObject in obj.{{name}}) {
id convertedObj = [self.{{name}}Builder {{complexType}}From{{complexType}}ManagedObject:innerObject]; id convertedObj = [self.{{name}}Builder {{complexType}}From{{complexType}}ManagedObject:innerObject];

View File

@ -6,25 +6,25 @@
{{#models}} {{#models}}
{{#model}} {{#model}}
#import "{{classPrefix}}{{name}}ManagedObject.h" #import "{{classname}}ManagedObject.h"
#import "{{classPrefix}}{{name}}.h" #import "{{classname}}.h"
{{>licenceInfo}} {{>licenceInfo}}
@interface {{classname}}ManagedObjectBuilder : NSObject @interface {{classname}}ManagedObjectBuilder : NSObject
{{#vars}}{{#complexType}}@property (nonatomic, strong) {{complexType}}ManagedObjectBuilder * {{name}}Builder; {{#isArrayModel}}@property (nonatomic, strong) {{arrayModelType}}ManagedObjectBuilder * entriesBuilder;{{/isArrayModel}}{{#vars}}{{#complexType}}@property (nonatomic, strong) {{complexType}}ManagedObjectBuilder * {{name}}Builder;
{{/complexType}}{{/vars}} {{/complexType}}{{/vars}}
-({{classname}}ManagedObject*)createNew{{classname}}ManagedObjectInContext:(NSManagedObjectContext*)context; -({{classname}}ManagedObject*)createNew{{classname}}ManagedObjectInContext:(NSManagedObjectContext*)context;
-({{classname}}ManagedObject*){{classname}}ManagedObjectFrom{{classname}}:({{classname}}*){{name}} context:(NSManagedObjectContext*)context; -({{classname}}ManagedObject*){{classname}}ManagedObjectFrom{{classname}}:({{classname}}*)object context:(NSManagedObjectContext*)context;
-(void)update{{classname}}ManagedObject:({{classname}}ManagedObject*){{name}} with{{classname}}:({{classname}}*){{name}}2; -(void)update{{classname}}ManagedObject:({{classname}}ManagedObject*)object with{{classname}}:({{classname}}*)object2;
-({{classname}}*){{classname}}From{{classname}}ManagedObject:({{classname}}ManagedObject*)obj; -({{classname}}*){{classname}}From{{classname}}ManagedObject:({{classname}}ManagedObject*)obj;
-(void)update{{classname}}:({{classname}}*){{name}} with{{classname}}ManagedObject:({{classname}}ManagedObject*){{name}}2; -(void)update{{classname}}:({{classname}}*)object with{{classname}}ManagedObject:({{classname}}ManagedObject*)object2;
@end @end
{{/model}} {{/model}}

View File

@ -267,6 +267,43 @@ public class ObjcModelTest {
Assert.assertEquals(Sets.intersection(cm.imports, Sets.newHashSet("SWGChildren")).size(), 1); Assert.assertEquals(Sets.intersection(cm.imports, Sets.newHashSet("SWGChildren")).size(), 1);
} }
@Test(description = "test udid")
public void udidAndPasswordDataModelTest() {
final Swagger model = new SwaggerParser().read("src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml");
final DefaultCodegen codegen = new ObjcClientCodegen();
final Model definition = model.getDefinitions().get("format_test");
Property property = definition.getProperties().get("uuid");
CodegenProperty prope = codegen.fromProperty("uuid", property);
Assert.assertEquals(prope.baseType, "NSString");
prope = codegen.fromProperty("password", property);
Assert.assertEquals(prope.baseType, "NSString");
}
@Test(description = "test mixedProperties")
public void mixedPropertiesDataModelTest() {
final Swagger model = new SwaggerParser().read("src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml");
final DefaultCodegen codegen = new ObjcClientCodegen();
final Model definition = model.getDefinitions().get("MixedPropertiesAndAdditionalPropertiesClass");
Property property = definition.getProperties().get("map");
CodegenProperty prope = codegen.fromProperty("map", property);
Assert.assertEquals(prope.baseType, "NSDictionary");
}
@Test(description = "test isArrayModel")
public void isArrayModelModelTest() {
final Swagger model = new SwaggerParser().read("src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml");
final DefaultCodegen codegen = new ObjcClientCodegen();
final Model definition = model.getDefinitions().get("AnimalFarm");
final CodegenModel codegenModel = codegen.fromModel("AnimalFarm",definition);
Assert.assertEquals(codegenModel.isArrayModel,Boolean.TRUE);
Assert.assertEquals(codegenModel.arrayModelType,"SWGAnimal");
}
@Test(description = "test binary data") @Test(description = "test binary data")
public void binaryDataModelTest() { public void binaryDataModelTest() {
final Swagger model = new SwaggerParser().read("src/test/resources/2_0/binaryDataTest.json"); final Swagger model = new SwaggerParser().read("src/test/resources/2_0/binaryDataTest.json");

View File

@ -6,7 +6,7 @@ This ObjC package is automatically generated by the [Swagger Codegen](https://gi
- API version: 1.0.0 - API version: 1.0.0
- Package version: - Package version:
- Build date: 2016-06-06T12:11:50.444+02:00 - Build date: 2016-06-13T18:11:50.695+02:00
- Build package: class io.swagger.codegen.languages.ObjcClientCodegen - Build package: class io.swagger.codegen.languages.ObjcClientCodegen
## Requirements ## Requirements

View File

@ -35,12 +35,11 @@ NS_ASSUME_NONNULL_BEGIN
@property (nullable, nonatomic, retain) NSNumber* _id; @property (nullable, nonatomic, retain) NSNumber* _id;
@property (nullable, nonatomic, retain) NSString* name; @property (nullable, nonatomic, retain) NSString* name;
@end @end
@interface SWGCategoryManagedObject (GeneratedAccessors) @interface SWGCategoryManagedObject (GeneratedAccessors)
@end @end
NS_ASSUME_NONNULL_END NS_ASSUME_NONNULL_END

View File

@ -9,5 +9,4 @@
@dynamic _id; @dynamic _id;
@dynamic name; @dynamic name;
@end @end

View File

@ -35,12 +35,12 @@
-(SWGCategoryManagedObject*)createNewSWGCategoryManagedObjectInContext:(NSManagedObjectContext*)context; -(SWGCategoryManagedObject*)createNewSWGCategoryManagedObjectInContext:(NSManagedObjectContext*)context;
-(SWGCategoryManagedObject*)SWGCategoryManagedObjectFromSWGCategory:(SWGCategory*)Category context:(NSManagedObjectContext*)context; -(SWGCategoryManagedObject*)SWGCategoryManagedObjectFromSWGCategory:(SWGCategory*)object context:(NSManagedObjectContext*)context;
-(void)updateSWGCategoryManagedObject:(SWGCategoryManagedObject*)Category withSWGCategory:(SWGCategory*)Category2; -(void)updateSWGCategoryManagedObject:(SWGCategoryManagedObject*)object withSWGCategory:(SWGCategory*)object2;
-(SWGCategory*)SWGCategoryFromSWGCategoryManagedObject:(SWGCategoryManagedObject*)obj; -(SWGCategory*)SWGCategoryFromSWGCategoryManagedObject:(SWGCategoryManagedObject*)obj;
-(void)updateSWGCategory:(SWGCategory*)Category withSWGCategoryManagedObject:(SWGCategoryManagedObject*)Category2; -(void)updateSWGCategory:(SWGCategory*)object withSWGCategoryManagedObject:(SWGCategoryManagedObject*)object2;
@end @end

View File

@ -22,9 +22,9 @@
return managedObject; return managedObject;
} }
-(SWGCategoryManagedObject*)SWGCategoryManagedObjectFromSWGCategory:(SWGCategory*)Category context:(NSManagedObjectContext*)context { -(SWGCategoryManagedObject*)SWGCategoryManagedObjectFromSWGCategory:(SWGCategory*)object context:(NSManagedObjectContext*)context {
SWGCategoryManagedObject* newSWGCategory = [self createNewSWGCategoryManagedObjectInContext:context]; SWGCategoryManagedObject* newSWGCategory = [self createNewSWGCategoryManagedObjectInContext:context];
[self updateSWGCategoryManagedObject:newSWGCategory withSWGCategory:Category]; [self updateSWGCategoryManagedObject:newSWGCategory withSWGCategory:object];
return newSWGCategory; return newSWGCategory;
} }
@ -34,6 +34,7 @@
} }
managedObject._id = [object._id copy]; managedObject._id = [object._id copy];
managedObject.name = [object.name copy]; managedObject.name = [object.name copy];
} }
-(SWGCategory*)SWGCategoryFromSWGCategoryManagedObject:(SWGCategoryManagedObject*)obj { -(SWGCategory*)SWGCategoryFromSWGCategoryManagedObject:(SWGCategoryManagedObject*)obj {

View File

@ -4,7 +4,6 @@
<entity name="SWGCategoryManagedObject" representedClassName="SWGCategoryManagedObject" syncable="YES"> <entity name="SWGCategoryManagedObject" representedClassName="SWGCategoryManagedObject" syncable="YES">
<attribute name="_id" optional="YES" attributeType="Double" syncable="YES"/> <attribute name="_id" optional="YES" attributeType="Double" syncable="YES"/>
<attribute name="name" optional="YES" attributeType="String" syncable="YES"/> <attribute name="name" optional="YES" attributeType="String" syncable="YES"/>
</entity> </entity>
<entity name="SWGOrderManagedObject" representedClassName="SWGOrderManagedObject" syncable="YES"> <entity name="SWGOrderManagedObject" representedClassName="SWGOrderManagedObject" syncable="YES">
<attribute name="_id" optional="YES" attributeType="Double" syncable="YES"/> <attribute name="_id" optional="YES" attributeType="Double" syncable="YES"/>
@ -13,7 +12,6 @@
<attribute name="shipDate" optional="YES" attributeType="Date" syncable="YES"/> <attribute name="shipDate" optional="YES" attributeType="Date" syncable="YES"/>
<attribute name="status" optional="YES" attributeType="String" syncable="YES"/> <attribute name="status" optional="YES" attributeType="String" syncable="YES"/>
<attribute name="complete" optional="YES" attributeType="Boolean" syncable="YES"/> <attribute name="complete" optional="YES" attributeType="Boolean" syncable="YES"/>
</entity> </entity>
<entity name="SWGPetManagedObject" representedClassName="SWGPetManagedObject" syncable="YES"> <entity name="SWGPetManagedObject" representedClassName="SWGPetManagedObject" syncable="YES">
<attribute name="_id" optional="YES" attributeType="Double" syncable="YES"/> <attribute name="_id" optional="YES" attributeType="Double" syncable="YES"/>
@ -22,12 +20,10 @@
<attribute name="photoUrls" attributeType="Transformable" syncable="YES"/> <attribute name="photoUrls" attributeType="Transformable" syncable="YES"/>
<relationship name="tags" optional="YES" toMany="YES" deletionRule="Cascade" destinationEntity="SWGTagManagedObject" syncable="YES"/> <relationship name="tags" optional="YES" toMany="YES" deletionRule="Cascade" destinationEntity="SWGTagManagedObject" syncable="YES"/>
<attribute name="status" optional="YES" attributeType="String" syncable="YES"/> <attribute name="status" optional="YES" attributeType="String" syncable="YES"/>
</entity> </entity>
<entity name="SWGTagManagedObject" representedClassName="SWGTagManagedObject" syncable="YES"> <entity name="SWGTagManagedObject" representedClassName="SWGTagManagedObject" syncable="YES">
<attribute name="_id" optional="YES" attributeType="Double" syncable="YES"/> <attribute name="_id" optional="YES" attributeType="Double" syncable="YES"/>
<attribute name="name" optional="YES" attributeType="String" syncable="YES"/> <attribute name="name" optional="YES" attributeType="String" syncable="YES"/>
</entity> </entity>
<entity name="SWGUserManagedObject" representedClassName="SWGUserManagedObject" syncable="YES"> <entity name="SWGUserManagedObject" representedClassName="SWGUserManagedObject" syncable="YES">
<attribute name="_id" optional="YES" attributeType="Double" syncable="YES"/> <attribute name="_id" optional="YES" attributeType="Double" syncable="YES"/>
@ -38,7 +34,6 @@
<attribute name="password" optional="YES" attributeType="String" syncable="YES"/> <attribute name="password" optional="YES" attributeType="String" syncable="YES"/>
<attribute name="phone" optional="YES" attributeType="String" syncable="YES"/> <attribute name="phone" optional="YES" attributeType="String" syncable="YES"/>
<attribute name="userStatus" optional="YES" attributeType="Integer 16" syncable="YES"/> <attribute name="userStatus" optional="YES" attributeType="Integer 16" syncable="YES"/>
</entity> </entity>
</model> </model>

View File

@ -44,12 +44,11 @@ NS_ASSUME_NONNULL_BEGIN
@property (nullable, nonatomic, retain) NSString* status; @property (nullable, nonatomic, retain) NSString* status;
@property (nullable, nonatomic, retain) NSNumber* complete; @property (nullable, nonatomic, retain) NSNumber* complete;
@end @end
@interface SWGOrderManagedObject (GeneratedAccessors) @interface SWGOrderManagedObject (GeneratedAccessors)
@end @end
NS_ASSUME_NONNULL_END NS_ASSUME_NONNULL_END

View File

@ -13,5 +13,4 @@
@dynamic shipDate; @dynamic shipDate;
@dynamic status; @dynamic status;
@dynamic complete; @dynamic complete;
@end @end

View File

@ -35,12 +35,12 @@
-(SWGOrderManagedObject*)createNewSWGOrderManagedObjectInContext:(NSManagedObjectContext*)context; -(SWGOrderManagedObject*)createNewSWGOrderManagedObjectInContext:(NSManagedObjectContext*)context;
-(SWGOrderManagedObject*)SWGOrderManagedObjectFromSWGOrder:(SWGOrder*)Order context:(NSManagedObjectContext*)context; -(SWGOrderManagedObject*)SWGOrderManagedObjectFromSWGOrder:(SWGOrder*)object context:(NSManagedObjectContext*)context;
-(void)updateSWGOrderManagedObject:(SWGOrderManagedObject*)Order withSWGOrder:(SWGOrder*)Order2; -(void)updateSWGOrderManagedObject:(SWGOrderManagedObject*)object withSWGOrder:(SWGOrder*)object2;
-(SWGOrder*)SWGOrderFromSWGOrderManagedObject:(SWGOrderManagedObject*)obj; -(SWGOrder*)SWGOrderFromSWGOrderManagedObject:(SWGOrderManagedObject*)obj;
-(void)updateSWGOrder:(SWGOrder*)Order withSWGOrderManagedObject:(SWGOrderManagedObject*)Order2; -(void)updateSWGOrder:(SWGOrder*)object withSWGOrderManagedObject:(SWGOrderManagedObject*)object2;
@end @end

View File

@ -22,9 +22,9 @@
return managedObject; return managedObject;
} }
-(SWGOrderManagedObject*)SWGOrderManagedObjectFromSWGOrder:(SWGOrder*)Order context:(NSManagedObjectContext*)context { -(SWGOrderManagedObject*)SWGOrderManagedObjectFromSWGOrder:(SWGOrder*)object context:(NSManagedObjectContext*)context {
SWGOrderManagedObject* newSWGOrder = [self createNewSWGOrderManagedObjectInContext:context]; SWGOrderManagedObject* newSWGOrder = [self createNewSWGOrderManagedObjectInContext:context];
[self updateSWGOrderManagedObject:newSWGOrder withSWGOrder:Order]; [self updateSWGOrderManagedObject:newSWGOrder withSWGOrder:object];
return newSWGOrder; return newSWGOrder;
} }
@ -38,6 +38,7 @@
managedObject.shipDate = [object.shipDate copy]; managedObject.shipDate = [object.shipDate copy];
managedObject.status = [object.status copy]; managedObject.status = [object.status copy];
managedObject.complete = [object.complete copy]; managedObject.complete = [object.complete copy];
} }
-(SWGOrder*)SWGOrderFromSWGOrderManagedObject:(SWGOrderManagedObject*)obj { -(SWGOrder*)SWGOrderFromSWGOrderManagedObject:(SWGOrderManagedObject*)obj {

View File

@ -46,11 +46,9 @@ NS_ASSUME_NONNULL_BEGIN
/* pet status in the store [optional] /* pet status in the store [optional]
*/ */
@property (nullable, nonatomic, retain) NSString* status; @property (nullable, nonatomic, retain) NSString* status;
@end @end
@interface SWGPetManagedObject (GeneratedAccessors) @interface SWGPetManagedObject (GeneratedAccessors)
- (void)addTagsObject:(SWGTagManagedObject *)value; - (void)addTagsObject:(SWGTagManagedObject *)value;
- (void)removeTagsObject:(SWGTagManagedObject *)value; - (void)removeTagsObject:(SWGTagManagedObject *)value;
- (void)addTags:(NSSet<SWGTagManagedObject*> *)values; - (void)addTags:(NSSet<SWGTagManagedObject*> *)values;
@ -58,4 +56,5 @@ NS_ASSUME_NONNULL_BEGIN
@end @end
NS_ASSUME_NONNULL_END NS_ASSUME_NONNULL_END

View File

@ -13,5 +13,4 @@
@dynamic photoUrls; @dynamic photoUrls;
@dynamic tags; @dynamic tags;
@dynamic status; @dynamic status;
@end @end

View File

@ -39,12 +39,12 @@
-(SWGPetManagedObject*)createNewSWGPetManagedObjectInContext:(NSManagedObjectContext*)context; -(SWGPetManagedObject*)createNewSWGPetManagedObjectInContext:(NSManagedObjectContext*)context;
-(SWGPetManagedObject*)SWGPetManagedObjectFromSWGPet:(SWGPet*)Pet context:(NSManagedObjectContext*)context; -(SWGPetManagedObject*)SWGPetManagedObjectFromSWGPet:(SWGPet*)object context:(NSManagedObjectContext*)context;
-(void)updateSWGPetManagedObject:(SWGPetManagedObject*)Pet withSWGPet:(SWGPet*)Pet2; -(void)updateSWGPetManagedObject:(SWGPetManagedObject*)object withSWGPet:(SWGPet*)object2;
-(SWGPet*)SWGPetFromSWGPetManagedObject:(SWGPetManagedObject*)obj; -(SWGPet*)SWGPetFromSWGPetManagedObject:(SWGPetManagedObject*)obj;
-(void)updateSWGPet:(SWGPet*)Pet withSWGPetManagedObject:(SWGPetManagedObject*)Pet2; -(void)updateSWGPet:(SWGPet*)object withSWGPetManagedObject:(SWGPetManagedObject*)object2;
@end @end

View File

@ -24,9 +24,9 @@
return managedObject; return managedObject;
} }
-(SWGPetManagedObject*)SWGPetManagedObjectFromSWGPet:(SWGPet*)Pet context:(NSManagedObjectContext*)context { -(SWGPetManagedObject*)SWGPetManagedObjectFromSWGPet:(SWGPet*)object context:(NSManagedObjectContext*)context {
SWGPetManagedObject* newSWGPet = [self createNewSWGPetManagedObjectInContext:context]; SWGPetManagedObject* newSWGPet = [self createNewSWGPetManagedObjectInContext:context];
[self updateSWGPetManagedObject:newSWGPet withSWGPet:Pet]; [self updateSWGPetManagedObject:newSWGPet withSWGPet:object];
return newSWGPet; return newSWGPet;
} }
@ -52,6 +52,7 @@
managedObject.tags = convertedObjs; managedObject.tags = convertedObjs;
} }
managedObject.status = [object.status copy]; managedObject.status = [object.status copy];
} }
-(SWGPet*)SWGPetFromSWGPetManagedObject:(SWGPetManagedObject*)obj { -(SWGPet*)SWGPetFromSWGPetManagedObject:(SWGPetManagedObject*)obj {

View File

@ -35,12 +35,11 @@ NS_ASSUME_NONNULL_BEGIN
@property (nullable, nonatomic, retain) NSNumber* _id; @property (nullable, nonatomic, retain) NSNumber* _id;
@property (nullable, nonatomic, retain) NSString* name; @property (nullable, nonatomic, retain) NSString* name;
@end @end
@interface SWGTagManagedObject (GeneratedAccessors) @interface SWGTagManagedObject (GeneratedAccessors)
@end @end
NS_ASSUME_NONNULL_END NS_ASSUME_NONNULL_END

View File

@ -9,5 +9,4 @@
@dynamic _id; @dynamic _id;
@dynamic name; @dynamic name;
@end @end

View File

@ -35,12 +35,12 @@
-(SWGTagManagedObject*)createNewSWGTagManagedObjectInContext:(NSManagedObjectContext*)context; -(SWGTagManagedObject*)createNewSWGTagManagedObjectInContext:(NSManagedObjectContext*)context;
-(SWGTagManagedObject*)SWGTagManagedObjectFromSWGTag:(SWGTag*)Tag context:(NSManagedObjectContext*)context; -(SWGTagManagedObject*)SWGTagManagedObjectFromSWGTag:(SWGTag*)object context:(NSManagedObjectContext*)context;
-(void)updateSWGTagManagedObject:(SWGTagManagedObject*)Tag withSWGTag:(SWGTag*)Tag2; -(void)updateSWGTagManagedObject:(SWGTagManagedObject*)object withSWGTag:(SWGTag*)object2;
-(SWGTag*)SWGTagFromSWGTagManagedObject:(SWGTagManagedObject*)obj; -(SWGTag*)SWGTagFromSWGTagManagedObject:(SWGTagManagedObject*)obj;
-(void)updateSWGTag:(SWGTag*)Tag withSWGTagManagedObject:(SWGTagManagedObject*)Tag2; -(void)updateSWGTag:(SWGTag*)object withSWGTagManagedObject:(SWGTagManagedObject*)object2;
@end @end

View File

@ -22,9 +22,9 @@
return managedObject; return managedObject;
} }
-(SWGTagManagedObject*)SWGTagManagedObjectFromSWGTag:(SWGTag*)Tag context:(NSManagedObjectContext*)context { -(SWGTagManagedObject*)SWGTagManagedObjectFromSWGTag:(SWGTag*)object context:(NSManagedObjectContext*)context {
SWGTagManagedObject* newSWGTag = [self createNewSWGTagManagedObjectInContext:context]; SWGTagManagedObject* newSWGTag = [self createNewSWGTagManagedObjectInContext:context];
[self updateSWGTagManagedObject:newSWGTag withSWGTag:Tag]; [self updateSWGTagManagedObject:newSWGTag withSWGTag:object];
return newSWGTag; return newSWGTag;
} }
@ -34,6 +34,7 @@
} }
managedObject._id = [object._id copy]; managedObject._id = [object._id copy];
managedObject.name = [object.name copy]; managedObject.name = [object.name copy];
} }
-(SWGTag*)SWGTagFromSWGTagManagedObject:(SWGTagManagedObject*)obj { -(SWGTag*)SWGTagFromSWGTagManagedObject:(SWGTagManagedObject*)obj {

View File

@ -48,12 +48,11 @@ NS_ASSUME_NONNULL_BEGIN
/* User Status [optional] /* User Status [optional]
*/ */
@property (nullable, nonatomic, retain) NSNumber* userStatus; @property (nullable, nonatomic, retain) NSNumber* userStatus;
@end @end
@interface SWGUserManagedObject (GeneratedAccessors) @interface SWGUserManagedObject (GeneratedAccessors)
@end @end
NS_ASSUME_NONNULL_END NS_ASSUME_NONNULL_END

View File

@ -15,5 +15,4 @@
@dynamic password; @dynamic password;
@dynamic phone; @dynamic phone;
@dynamic userStatus; @dynamic userStatus;
@end @end

View File

@ -35,12 +35,12 @@
-(SWGUserManagedObject*)createNewSWGUserManagedObjectInContext:(NSManagedObjectContext*)context; -(SWGUserManagedObject*)createNewSWGUserManagedObjectInContext:(NSManagedObjectContext*)context;
-(SWGUserManagedObject*)SWGUserManagedObjectFromSWGUser:(SWGUser*)User context:(NSManagedObjectContext*)context; -(SWGUserManagedObject*)SWGUserManagedObjectFromSWGUser:(SWGUser*)object context:(NSManagedObjectContext*)context;
-(void)updateSWGUserManagedObject:(SWGUserManagedObject*)User withSWGUser:(SWGUser*)User2; -(void)updateSWGUserManagedObject:(SWGUserManagedObject*)object withSWGUser:(SWGUser*)object2;
-(SWGUser*)SWGUserFromSWGUserManagedObject:(SWGUserManagedObject*)obj; -(SWGUser*)SWGUserFromSWGUserManagedObject:(SWGUserManagedObject*)obj;
-(void)updateSWGUser:(SWGUser*)User withSWGUserManagedObject:(SWGUserManagedObject*)User2; -(void)updateSWGUser:(SWGUser*)object withSWGUserManagedObject:(SWGUserManagedObject*)object2;
@end @end

View File

@ -22,9 +22,9 @@
return managedObject; return managedObject;
} }
-(SWGUserManagedObject*)SWGUserManagedObjectFromSWGUser:(SWGUser*)User context:(NSManagedObjectContext*)context { -(SWGUserManagedObject*)SWGUserManagedObjectFromSWGUser:(SWGUser*)object context:(NSManagedObjectContext*)context {
SWGUserManagedObject* newSWGUser = [self createNewSWGUserManagedObjectInContext:context]; SWGUserManagedObject* newSWGUser = [self createNewSWGUserManagedObjectInContext:context];
[self updateSWGUserManagedObject:newSWGUser withSWGUser:User]; [self updateSWGUserManagedObject:newSWGUser withSWGUser:object];
return newSWGUser; return newSWGUser;
} }
@ -40,6 +40,7 @@
managedObject.password = [object.password copy]; managedObject.password = [object.password copy];
managedObject.phone = [object.phone copy]; managedObject.phone = [object.phone copy];
managedObject.userStatus = [object.userStatus copy]; managedObject.userStatus = [object.userStatus copy];
} }
-(SWGUser*)SWGUserFromSWGUserManagedObject:(SWGUserManagedObject*)obj { -(SWGUser*)SWGUserFromSWGUserManagedObject:(SWGUserManagedObject*)obj {

View File

@ -0,0 +1,10 @@
# SWG200Response
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**name** | **NSNumber*** | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -0,0 +1,11 @@
# SWGAdditionalPropertiesClass
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**mapProperty** | **NSDictionary&lt;NSString*, NSString*&gt;*** | | [optional]
**mapOfMapProperty** | [**NSDictionary&lt;NSString*, NSDictionary&lt;NSString*, NSString*&gt;*&gt;***](NSDictionary.md) | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -0,0 +1,11 @@
# SWGAnimal
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**className** | **NSString*** | |
**color** | **NSString*** | | [optional] [default to @"red"]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -0,0 +1,9 @@
# SWGAnimalFarm
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -0,0 +1,12 @@
# SWGApiResponse
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**code** | **NSNumber*** | | [optional]
**type** | **NSString*** | | [optional]
**message** | **NSString*** | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -0,0 +1,12 @@
# SWGArrayTest
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**arrayOfString** | **NSArray&lt;NSString*&gt;*** | | [optional]
**arrayArrayOfInteger** | [**NSArray&lt;NSArray&lt;NSNumber*&gt;*&gt;***](NSArray.md) | | [optional]
**arrayArrayOfModel** | [**NSArray&lt;NSArray&lt;SWGReadOnlyFirst&gt;*&gt;***](NSArray.md) | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -0,0 +1,12 @@
# SWGCat
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**className** | **NSString*** | |
**color** | **NSString*** | | [optional] [default to @"red"]
**declawed** | **NSNumber*** | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -0,0 +1,12 @@
# SWGDog
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**className** | **NSString*** | |
**color** | **NSString*** | | [optional] [default to @"red"]
**breed** | **NSString*** | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -0,0 +1,9 @@
# SWGEnumClass
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -0,0 +1,12 @@
# SWGEnumTest
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**enumString** | **NSString*** | | [optional]
**enumInteger** | **NSNumber*** | | [optional]
**enumNumber** | **NSNumber*** | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -0,0 +1,100 @@
# SWGFakeApi
All URIs are relative to *http://petstore.swagger.io/v2*
Method | HTTP request | Description
------------- | ------------- | -------------
[**testEndpointParameters**](SWGFakeApi.md#testendpointparameters) | **POST** /fake | Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트
# **testEndpointParameters**
```objc
-(NSNumber*) testEndpointParametersWithNumber: (NSNumber*) number
_double: (NSNumber*) _double
string: (NSString*) string
byte: (NSData*) byte
integer: (NSNumber*) integer
int32: (NSNumber*) int32
int64: (NSNumber*) int64
_float: (NSNumber*) _float
binary: (NSData*) binary
date: (NSDate*) date
dateTime: (NSDate*) dateTime
password: (NSString*) password
completionHandler: (void (^)(NSError* error)) handler;
```
Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트
Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트
### Example
```objc
NSNumber* number = @3.4; // None
NSNumber* _double = @1.2; // None
NSString* string = @"string_example"; // None
NSData* byte = [[NSData alloc] init]; // None
NSNumber* integer = @56; // None (optional)
NSNumber* int32 = @56; // None (optional)
NSNumber* int64 = @789; // None (optional)
NSNumber* _float = @3.4; // None (optional)
NSData* binary = [[NSData alloc] init]; // None (optional)
NSDate* date = @"2013-10-20"; // None (optional)
NSDate* dateTime = @"2013-10-20T19:20:30+01:00"; // None (optional)
NSString* password = @"password_example"; // None (optional)
SWGFakeApi*apiInstance = [[SWGFakeApi alloc] init];
// Fake endpoint for testing various parameters 假端點 偽のエンドポイント 가짜 엔드 포인트
[apiInstance testEndpointParametersWithNumber:number
_double:_double
string:string
byte:byte
integer:integer
int32:int32
int64:int64
_float:_float
binary:binary
date:date
dateTime:dateTime
password:password
completionHandler: ^(NSError* error) {
if (error) {
NSLog(@"Error calling SWGFakeApi->testEndpointParameters: %@", error);
}
}];
```
### Parameters
Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**number** | **NSNumber***| None |
**_double** | **NSNumber***| None |
**string** | **NSString***| None |
**byte** | **NSData***| None |
**integer** | **NSNumber***| None | [optional]
**int32** | **NSNumber***| None | [optional]
**int64** | **NSNumber***| None | [optional]
**_float** | **NSNumber***| None | [optional]
**binary** | **NSData***| None | [optional]
**date** | **NSDate***| None | [optional]
**dateTime** | **NSDate***| None | [optional]
**password** | **NSString***| None | [optional]
### Return type
void (empty response body)
### Authorization
No authorization required
### HTTP request headers
- **Content-Type**: application/xml; charset=utf-8, application/json; charset=utf-8
- **Accept**: application/xml; charset=utf-8, application/json; charset=utf-8
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)

View File

@ -0,0 +1,22 @@
# SWGFormatTest
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**integer** | **NSNumber*** | | [optional]
**int32** | **NSNumber*** | | [optional]
**int64** | **NSNumber*** | | [optional]
**number** | **NSNumber*** | |
**_float** | **NSNumber*** | | [optional]
**_double** | **NSNumber*** | | [optional]
**string** | **NSString*** | | [optional]
**byte** | **NSData*** | |
**binary** | **NSData*** | | [optional]
**date** | **NSDate*** | |
**dateTime** | **NSDate*** | | [optional]
**uuid** | **NSString*** | | [optional]
**password** | **NSString*** | |
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -0,0 +1,12 @@
# SWGMixedPropertiesAndAdditionalPropertiesClass
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**uuid** | **NSString*** | | [optional]
**dateTime** | **NSDate*** | | [optional]
**map** | [**NSDictionary&lt;NSString*, SWGAnimal&gt;***](SWGAnimal.md) | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -0,0 +1,13 @@
# SWGName
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**name** | **NSNumber*** | |
**snakeCase** | **NSNumber*** | | [optional]
**_property** | **NSString*** | | [optional]
**_123Number** | **NSNumber*** | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -0,0 +1,11 @@
# SWGReadOnlyFirst
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**bar** | **NSString*** | | [optional]
**baz** | **NSString*** | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -0,0 +1,10 @@
# SWGReturn
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**_return** | **NSNumber*** | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

View File

@ -0,0 +1,10 @@
# SWGSpecialModelName_
## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**specialPropertyName** | **NSNumber*** | | [optional]
[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)