public void doService() throws IOException {
StatusCode statusCode = StatusCode.fromValue(parseRequest());
switch (statusCode) {
case GET:
isContinued = false;
break;
case POST:
doGet();
break;
case CONT:
doPost();
break;
default:
doError(statusCode.getValue());
}
}
定义
enum StatusCode
{
GET(0,"Get"),POST(1,"Post"),CONT(2,"Continue");
private int value = 0;
public int getValue() {
return value;
}
public void setValue(int value) {
this.value = value;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
private String name = "";
StatusCode(int value, String Name)
{
this.value = value;
this.name = name;
}
static StatusCode fromValue(int value)
{
for( StatusCode statusCode: values())
{
if (statusCode.value == value)
return statusCode;
}
throw new IllegalArgumentException();
//return null;
}
}
使用