fix for #444, paths on windows

This commit is contained in:
Tony Tam 2015-02-22 08:56:03 -08:00
parent 784afee7b7
commit 4ce0a65ad5
5 changed files with 18 additions and 7 deletions

View File

@ -18,6 +18,7 @@ public interface CodegenConfig {
String modelFileFolder(); String modelFileFolder();
String modelPackage(); String modelPackage();
String toApiName(String name); String toApiName(String name);
String toApiVarName(String name);
String toModelName(String name); String toModelName(String name);
String toParamName(String name); String toParamName(String name);
String escapeReservedWord(String name); String escapeReservedWord(String name);

View File

@ -11,6 +11,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import java.util.*; import java.util.*;
import java.io.File;
public class DefaultCodegen { public class DefaultCodegen {
Logger LOGGER = LoggerFactory.getLogger(DefaultCodegen.class); Logger LOGGER = LoggerFactory.getLogger(DefaultCodegen.class);
@ -101,11 +102,11 @@ public class DefaultCodegen {
} }
public String apiFileFolder() { public String apiFileFolder() {
return outputFolder + "/" + apiPackage().replaceAll("\\.", "/"); return outputFolder + "/" + apiPackage().replace('.', File.separatorChar);
} }
public String modelFileFolder() { public String modelFileFolder() {
return outputFolder + "/" + modelPackage().replaceAll("\\.", "/"); return outputFolder + "/" + modelPackage().replace('.', File.separatorChar);
} }
public Map<String, Object> additionalProperties() { public Map<String, Object> additionalProperties() {
@ -133,6 +134,10 @@ public class DefaultCodegen {
return initialCaps(name) + "Api"; return initialCaps(name) + "Api";
} }
public String toApiVarName(String name) {
return snakeCase(name);
}
public String toModelFilename(String name) { public String toModelFilename(String name) {
return name; return name;
} }
@ -306,6 +311,10 @@ public class DefaultCodegen {
return datatype; return datatype;
} }
public String snakeCase(String name) {
return Character.toLowerCase(name.charAt(0)) + name.substring(1);
}
public String initialCaps(String name) { public String initialCaps(String name) {
return Character.toUpperCase(name.charAt(0)) + name.substring(1); return Character.toUpperCase(name.charAt(0)) + name.substring(1);
} }

View File

@ -114,6 +114,7 @@ public class DefaultGenerator implements Generator {
operation.put("modelPackage", config.modelPackage()); operation.put("modelPackage", config.modelPackage());
operation.putAll(config.additionalProperties()); operation.putAll(config.additionalProperties());
operation.put("classname", config.toApiName(tag)); operation.put("classname", config.toApiName(tag));
operation.put("classVarName", config.toApiVarName(tag));
allOperations.add(operation); allOperations.add(operation);
for(String templateName : config.apiTemplateFiles().keySet()) { for(String templateName : config.apiTemplateFiles().keySet()) {
String suffix = config.apiTemplateFiles().get(templateName); String suffix = config.apiTemplateFiles().get(templateName);
@ -153,7 +154,7 @@ public class DefaultGenerator implements Generator {
} }
bundle.put("apiInfo", apis); bundle.put("apiInfo", apis);
bundle.put("models", allModels); bundle.put("models", allModels);
bundle.put("apiFolder", config.apiPackage().replaceAll("\\.", "/")); bundle.put("apiFolder", config.apiPackage().replace('.', File.separatorChar));
bundle.put("modelPackage", config.modelPackage()); bundle.put("modelPackage", config.modelPackage());
if (swagger.getExternalDocs() != null) { if (swagger.getExternalDocs() != null) {
bundle.put("externalDocs", swagger.getExternalDocs()); bundle.put("externalDocs", swagger.getExternalDocs());

View File

@ -89,11 +89,11 @@ public class NodeJSServerCodegen extends DefaultCodegen implements CodegenConfig
@Override @Override
public String apiFileFolder() { public String apiFileFolder() {
return outputFolder + File.separator + apiPackage().replaceAll("\\.", File.separator); return outputFolder + File.separator + apiPackage().replace('.', File.separatorChar);
} }
public String modelFileFolder() { public String modelFileFolder() {
return outputFolder + File.separator + modelPackage().replaceAll("\\.", File.separator); return outputFolder + File.separator + modelPackage().replace('.', File.separatorChar);
} }
@Override @Override

View File

@ -64,11 +64,11 @@ public class PythonClientCodegen extends DefaultCodegen implements CodegenConfig
@Override @Override
public String apiFileFolder() { public String apiFileFolder() {
return outputFolder + "/" + apiPackage().replaceAll("\\.", "/"); return outputFolder + "/" + apiPackage().replace('.', File.separatorChar);
} }
public String modelFileFolder() { public String modelFileFolder() {
return outputFolder + "/" + modelPackage().replaceAll("\\.", "/"); return outputFolder + "/" + modelPackage().replace('.', File.separatorChar);
} }
@Override @Override