return result;
}
private void pushOntoStack(OperationResourceInfo ori, Class<?> realClass, Message msg) {
OperationResourceInfoStack stack = msg.get(OperationResourceInfoStack.class);
if (stack == null) {
stack = new OperationResourceInfoStack();
msg.put(OperationResourceInfoStack.class, stack);
}
@SuppressWarnings("unchecked")
MultivaluedMap<String, String> params =
(MultivaluedMap<String, String>)msg.get(URITemplate.TEMPLATE_PARAMETERS);
List<String> values = null;
if (params == null || params.size() == 1) {
values = Collections.emptyList();
} else {
values = new ArrayList<String>(params.size() - 1);
for (Parameter pm : ori.getParameters()) {
if (pm.getType() == ParameterType.PATH) {
List<String> paramValues = params.get(pm.getName());
if (paramValues != null) {
values.addAll(paramValues);
}
}
}
}
stack.push(new MethodInvocationInfo(ori, realClass, values));
}