removed the builder method that took String parameter name for better enforcement of type safety.

This commit is contained in:
Inderjeet Singh 2010-07-13 17:16:47 +00:00
parent 16c2832588
commit 58704f9aad

View File

@ -15,7 +15,6 @@
*/ */
package com.google.gson.webservice.definition; package com.google.gson.webservice.definition;
import java.lang.reflect.Type;
import java.util.Arrays; import java.util.Arrays;
import java.util.LinkedHashSet; import java.util.LinkedHashSet;
import java.util.Set; import java.util.Set;
@ -56,40 +55,25 @@ public final class WebServiceCallSpec {
} }
public <T> Builder addRequestParam(TypedKey<T> param) { public <T> Builder addRequestParam(TypedKey<T> param) {
return addRequestParam(param.getName(), param.getClassOfT()); reqParamsSpecBuilder.put(param.getName(), param.getClassOfT());
}
public Builder addRequestParam(String paramName, Type type) {
reqParamsSpecBuilder.put(paramName, type);
return this; return this;
} }
public <T> Builder addRequestBodyParam(TypedKey<T> param) { public <T> Builder addRequestBodyParam(TypedKey<T> param) {
return addRequestBodyParam(param.getName(), param.getClassOfT()); reqBodySpecBuilder.add(param.getName(), param.getClassOfT());
}
public Builder addRequestBodyParam(String paramName, Type type) {
reqBodySpecBuilder.add(paramName, type);
return this; return this;
} }
public <T> Builder addResponseParam(TypedKey<T> param) { public <T> Builder addResponseParam(TypedKey<T> param) {
return addResponseParam(param.getName(), param.getClassOfT()); resParamsSpecBuilder.put(param.getName(), param.getClassOfT());
}
public Builder addResponseParam(String paramName, Type type) {
resParamsSpecBuilder.put(paramName, type);
return this; return this;
} }
public <T> Builder addResponseBodyParam(TypedKey<T> param) { public <T> Builder addResponseBodyParam(TypedKey<T> param) {
return addResponseBodyParam(param.getName(), param.getClassOfT()); resBodySpecBuilder.add(param.getName(), param.getClassOfT());
}
public Builder addResponseBodyParam(String paramName, Type type) {
resBodySpecBuilder.add(paramName, type);
return this; return this;
} }
public WebServiceCallSpec build() { public WebServiceCallSpec build() {
if (supportedHttpMethods.isEmpty()) { if (supportedHttpMethods.isEmpty()) {
supportedHttpMethods.addAll(Arrays.asList(HttpMethod.values())); supportedHttpMethods.addAll(Arrays.asList(HttpMethod.values()));