public class UpdateMethodBinding extends BaseMethodBinding<MethodOutcome>
BaseMethodBinding.ActiveRequestReader, BaseMethodBinding.InactiveRequestReader, BaseMethodBinding.IRequestReader| Constructor and Description |
|---|
UpdateMethodBinding(Method theMethod,
FhirContext theContext,
Object theProvider) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
addParametersForServerRequest(RequestDetails theRequest,
Object[] theParams) |
protected boolean |
allowVoidReturnType()
Subclasses may override to allow a void method return type, which is allowable for some methods (e.g.
|
protected BaseHttpClientInvocation |
createClientInvocation(Object[] theArgs,
IResource theResource) |
protected String |
getMatchingOperation()
For servers, this method will match only incoming requests that match the given operation, or which have no
operation in the URL if this method returns null.
|
String |
getResourceName()
Returns the name of the resource this method handles, or
null if this method is not resource specific |
RestOperationTypeEnum |
getRestOperationType() |
boolean |
incomingServerRequestMatchesMethod(RequestDetails theRequest) |
BaseHttpClientInvocation |
invokeClient(Object[] theArgs) |
MethodOutcome |
invokeClient(String theResponseMimeType,
Reader theResponseReader,
int theResponseStatusCode,
Map<String,List<String>> theHeaders) |
Object |
invokeServer(IRestfulServer<?> theServer,
RequestDetails theRequest) |
boolean |
isReturnVoid() |
protected static void |
parseContentLocation(FhirContext theContext,
MethodOutcome theOutcomeToPopulate,
String theResourceName,
String theLocationHeader) |
protected void |
populateActionRequestDetailsForInterceptor(RequestDetails theRequestDetails,
IServerInterceptor.ActionRequestDetails theDetails,
Object[] theMethodParams)
Subclasses may override this method (but should also call super.
#populateActionRequestDetailsForInterceptor(RequestDetails, ActionRequestDetails, Object[]) to provide method specifics to the
interceptors. |
protected Set<RequestTypeEnum> |
provideAllowableRequestTypes() |
protected void |
streamOperationOutcome(BaseServerResponseException theE,
RestfulServer theServer,
EncodingEnum theEncodingNotNull,
javax.servlet.http.HttpServletResponse theResponse,
RequestDetails theRequest) |
bindMethod, createAppropriateParserForParsingResponse, createAppropriateParserForParsingServerRequest, createParametersForServerRequest, getAllowableParamAnnotations, getContext, getIncludes, getMethod, getParameters, getProvider, getRequestIncludesFromParams, getRestOperationType, invokeServerMethod, isSupportsConditional, isSupportsConditionalMultiple, processNon2xxResponseAndReturnExceptionToThrow, setParameters, toResourceList, verifyMethodHasZeroOrOneOperationAnnotationpublic UpdateMethodBinding(Method theMethod, FhirContext theContext, Object theProvider)
public RestOperationTypeEnum getRestOperationType()
getRestOperationType in class BaseMethodBinding<MethodOutcome>protected void addParametersForServerRequest(RequestDetails theRequest, Object[] theParams)
protected BaseHttpClientInvocation createClientInvocation(Object[] theArgs, IResource theResource)
protected Set<RequestTypeEnum> provideAllowableRequestTypes()
protected String getMatchingOperation()
protected void populateActionRequestDetailsForInterceptor(RequestDetails theRequestDetails, IServerInterceptor.ActionRequestDetails theDetails, Object[] theMethodParams)
BaseMethodBinding#populateActionRequestDetailsForInterceptor(RequestDetails, ActionRequestDetails, Object[]) to provide method specifics to the
interceptors.populateActionRequestDetailsForInterceptor in class BaseMethodBinding<MethodOutcome>theRequestDetails - The server request detailstheDetails - The details object to populatetheMethodParams - The method params as generated by the specific method bindingpublic String getResourceName()
BaseMethodBindingnull if this method is not resource specificgetResourceName in class BaseMethodBinding<MethodOutcome>public BaseHttpClientInvocation invokeClient(Object[] theArgs) throws InternalErrorException
invokeClient in class BaseMethodBinding<MethodOutcome>InternalErrorExceptionprotected boolean allowVoidReturnType()
public boolean incomingServerRequestMatchesMethod(RequestDetails theRequest)
incomingServerRequestMatchesMethod in class BaseMethodBinding<MethodOutcome>public MethodOutcome invokeClient(String theResponseMimeType, Reader theResponseReader, int theResponseStatusCode, Map<String,List<String>> theHeaders) throws BaseServerResponseException
BaseServerResponseExceptionpublic Object invokeServer(IRestfulServer<?> theServer, RequestDetails theRequest) throws BaseServerResponseException, IOException
invokeServer in class BaseMethodBinding<MethodOutcome>BaseServerResponseExceptionIOExceptionpublic boolean isReturnVoid()
protected void streamOperationOutcome(BaseServerResponseException theE, RestfulServer theServer, EncodingEnum theEncodingNotNull, javax.servlet.http.HttpServletResponse theResponse, RequestDetails theRequest) throws IOException
IOExceptionprotected static void parseContentLocation(FhirContext theContext, MethodOutcome theOutcomeToPopulate, String theResourceName, String theLocationHeader)
Copyright © 2014–2016 University Health Network. All rights reserved.