Skip to content

Commit 21eb406

Browse files
committed
Fix default long value in java client code generation
The generated java code for a Long was "Long id=1;" which is not compilable by javac because "1" is a primitive integer that cannot be cast to a Long object. This fix generates now "Long id=1l;".
1 parent 860b551 commit 21eb406

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/JavaClientCodegen.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import io.swagger.codegen.SupportingFile;
1313
import io.swagger.models.Model;
1414
import io.swagger.models.properties.ArrayProperty;
15+
import io.swagger.models.properties.LongProperty;
1516
import io.swagger.models.properties.MapProperty;
1617
import io.swagger.models.properties.Property;
1718

@@ -340,6 +341,12 @@ public String toDefaultValue(Property p) {
340341
pattern = "new HashMap<String, %s>()";
341342
}
342343
return String.format(pattern, getTypeDeclaration(ap.getAdditionalProperties()));
344+
} else if (p instanceof LongProperty) {
345+
LongProperty dp = (LongProperty) p;
346+
if (dp.getDefault() != null) {
347+
return dp.getDefault().toString()+"l";
348+
}
349+
return "null";
343350
}
344351
return super.toDefaultValue(p);
345352
}

0 commit comments

Comments
 (0)