public CollectionOptions(RequestItem request) { this.sortBy = request.getSortBy(); this.sortOrder = request.getSortOrder(); this.setFilter(request.getFilterBy()); this.setFilterOperation(request.getFilterOperation()); this.setFilterValue(request.getFilterValue()); this.setFirst(request.getStartIndex()); this.setMax(request.getCount()); this.setUpdatedSince(request.getUpdatedSince()); } /**
public Future<?> call(Object handler, RequestItem item) { try { Object result; if (inputClass == null) { result = method.invoke(handler); } else if (RequestItem.class.isAssignableFrom(inputClass)) { result = method.invoke(handler, item); } else { result = method.invoke(handler, item.getTypedRequest(inputClass)); } if (result instanceof Future<?>) { return (Future<?>) result; } return Futures.immediateFuture(result); } catch (IllegalAccessException e) { return Futures.immediateFailedFuture(e); } catch (InvocationTargetException e) { // Unwrap the internal exception return Futures.immediateFailedFuture(e.getTargetException()); } } }
@Operation(httpMethods = "GET") public Set<String> listMethods(RequestItem request) { if ("protocol".equalsIgnoreCase(request.getFilterBy()) && FilterOperation.equals == request.getFilterOperation() && "REST".equalsIgnoreCase(request.getFilterValue())) { return registry.getSupportedRestServices(); } return registry.getSupportedRpcServices(); } }
@Override public Object get(RequestItem req) { FormDataItem item = req.getFormMimePart(IMAGE_FIELDNAME); return ImmutableMap.of("image-data", item.get(), "image-type", item.getContentType(), "image-ref", req.getParameter("image-ref")); } });
@Operation(httpMethods = "GET", path="/@supportedFields") public List<Object> supportedFields(RequestItem request) { // TODO: Would be nice if name in config matched name of service. String container = Objects.firstNonNull(request.getToken().getContainer(), "default"); return config.getList(container, "${Cur['gadgets.features'].opensocial.supportedFields.person}"); } }
/** * Handles /samplecontainer/setstate and /samplecontainer/setevilness/{doevil}. TODO(doll): These * urls aren't very resty. Consider changing the samplecontainer.html calls post. */ @Operation(httpMethods = "POST", bodyParam = "data") public Future<?> create(RequestItem request) throws ProtocolException { String type = request.getParameter("type"); if ("setstate".equals(type)) { try { @SuppressWarnings("unchecked") Map<String, String> bodyparams = request.getTypedParameter("data", Map.class); String stateFile = bodyparams.get("fileurl"); service.setDb(new JSONObject(fetchStateDocument(stateFile))); } catch (JSONException e) { throw new ProtocolException(HttpServletResponse.SC_BAD_REQUEST, "The json state file was not valid json", e); } } else if ("setevilness".equals(type)) { throw new ProtocolException(HttpServletResponse.SC_NOT_IMPLEMENTED, "evil data has not been implemented yet"); } return Futures.immediateFuture(null); }
@Override public Object get(RequestItem req) { FormDataItem item = req.getFormMimePart(IMAGE_FIELDNAME); return ImmutableMap.of("image-data", new String(item.get()), "image-type", item.getContentType(), "image-ref", req.getParameter("image-ref")); } });
@Operation(httpMethods = "GET") public Set<String> listMethods(RequestItem request) { if ("protocol".equalsIgnoreCase(request.getFilterBy()) && FilterOperation.equals == request.getFilterOperation() && "REST".equalsIgnoreCase(request.getFilterValue())) { return registry.getSupportedRestServices(); } return registry.getSupportedRpcServices(); } }
@Operation(httpMethods = "GET", path="/@supportedFields") public List<Object> supportedFields(RequestItem request) { // TODO: Would be nice if name in config matched name of service. String container = Objects.firstNonNull(request.getToken().getContainer(), ContainerConfig.DEFAULT_CONTAINER); return config.getList(container, "${Cur['gadgets.features'].opensocial.supportedFields.activity}"); } }
@VisibleForTesting public CollectionOptions(RequestItem request) { this.sortBy = request.getSortBy(); this.sortOrder = request.getSortOrder(); this.setFilter(request.getFilterBy()); this.setFilterOperation(request.getFilterOperation()); this.setFilterValue(request.getFilterValue()); this.setFirst(request.getStartIndex()); this.setMax(request.getCount()); this.setUpdatedSince(request.getUpdatedSince()); Set<String> parameterNames = Sets.newHashSet(request.getParameterNames()); parameterNames.removeAll(Arrays.asList(predefinedParameters)); Map<String, String> optionalParameters = Maps.newHashMap(); for (String parameter : parameterNames) { optionalParameters.put(parameter, request.getParameter(parameter)); } this.setOptionalParameters(optionalParameters); } /**
@Override public Object get(RequestItem req) { FormDataItem item = req.getFormMimePart(IMAGE_FIELDNAME); return ImmutableMap.of("image-data", new String(item.get()), "image-type", item.getContentType(), "image-ref", req.getParameter("image-ref")); } });
@Operation(httpMethods = "GET") public Set<String> listMethods(RequestItem request) { if ("protocol".equalsIgnoreCase(request.getFilterBy()) && FilterOperation.equals == request.getFilterOperation() && "REST".equalsIgnoreCase(request.getFilterValue())) { return registry.getSupportedRestServices(); } return registry.getSupportedRpcServices(); } }
@Operation(httpMethods = "GET", path="/@supportedFields") public List<Object> supportedFields(RequestItem request) { // TODO: Would be nice if name in config matched name of service. String container = Objects.firstNonNull(request.getToken().getContainer(), ContainerConfig.DEFAULT_CONTAINER); return config.getList(container, "${Cur['gadgets.features'].opensocial.supportedFields.activity}"); } }
public Future<?> call(Object handler, RequestItem item) { try { Object result; if (inputClass == null) { result = method.invoke(handler); } else if (RequestItem.class.isAssignableFrom(inputClass)) { result = method.invoke(handler, item); } else { result = method.invoke(handler, item.getTypedRequest(inputClass)); } if (result instanceof Future<?>) { return (Future<?>) result; } return Futures.immediateFuture(result); } catch (IllegalAccessException e) { return Futures.immediateFailedFuture(e); } catch (InvocationTargetException e) { // Unwrap the internal exception return Futures.immediateFailedFuture(e.getTargetException()); } } }
@VisibleForTesting public CollectionOptions(RequestItem request) { this.sortBy = request.getSortBy(); this.sortOrder = request.getSortOrder(); this.setFilter(request.getFilterBy()); this.setFilterOperation(request.getFilterOperation()); this.setFilterValue(request.getFilterValue()); this.setFirst(request.getStartIndex()); this.setMax(request.getCount()); this.setUpdatedSince(request.getUpdatedSince()); Set<String> parameterNames = Sets.newHashSet(request.getParameterNames()); parameterNames.removeAll(Arrays.asList(predefinedParameters)); Map<String, String> optionalParameters = Maps.newHashMap(); for (String parameter : parameterNames) { optionalParameters.put(parameter, request.getParameter(parameter)); } this.setOptionalParameters(optionalParameters); } /**
@Override public Object get(RequestItem req) { FormDataItem item = req.getFormMimePart(IMAGE_FIELDNAME); return ImmutableMap.of("image-data", item.get(), "image-type", item.getContentType(), "image-ref", req.getParameter("image-ref")); } });
@Operation(httpMethods = "GET") public Set<String> listMethods(RequestItem request) { if ("protocol".equalsIgnoreCase(request.getFilterBy()) && FilterOperation.equals == request.getFilterOperation() && "REST".equalsIgnoreCase(request.getFilterValue())) { return registry.getSupportedRestServices(); } return registry.getSupportedRpcServices(); } }
@Operation(httpMethods = "GET", path="/@supportedFields") public List<Object> supportedFields(RequestItem request) { // TODO: Would be nice if name in config matched name of service. String container = Objects.firstNonNull(request.getToken().getContainer(), ContainerConfig.DEFAULT_CONTAINER); return config.getList(container, "${Cur['gadgets.features'].opensocial.supportedFields.activity}"); } }
public Future<?> call(Object handler, RequestItem item) { try { Object result; if (inputClass == null) { result = method.invoke(handler); } else if (RequestItem.class.isAssignableFrom(inputClass)) { result = method.invoke(handler, item); } else { result = method.invoke(handler, item.getTypedRequest(inputClass)); } if (result instanceof Future<?>) { return (Future<?>) result; } return Futures.immediateFuture(result); } catch (IllegalAccessException e) { return Futures.immediateFailedFuture(e); } catch (InvocationTargetException e) { // Unwrap the internal exception return Futures.immediateFailedFuture(e.getTargetException()); } } }
@Override public Object get(RequestItem req) { FormDataItem item = req.getFormMimePart(IMAGE_FIELDNAME); return ImmutableMap.of("image-data", new String(item.get()), "image-type", item.getContentType(), "image-ref", req.getParameter("image-ref")); } });