Class OrderServiceResourceLockEndpoint
java.lang.Object
com.broadleafcommerce.order.web.endpoint.messaging.OrderServiceResourceLockEndpoint
@FrameworkRestController
@FrameworkMapping("/order-resource-locks")
@DataRouteByExample(com.broadleafcommerce.order.client.domain.Order.class)
public class OrderServiceResourceLockEndpoint
extends Object
This endpoint is used to expose resource locks to services which don't have their own data
sources to lock with (order operations).
- Author:
- Jacob Mitash
-
Constructor Summary
ConstructorsConstructorDescriptionOrderServiceResourceLockEndpoint
(com.broadleafcommerce.common.messaging.repository.ResourceLockRepository<?, ?> repository) -
Method Summary
Modifier and TypeMethodDescriptionvoid
finishLock
(String token) protected String
getConceptKey
(Map<String, String> body) protected String
getContextId
(Map<String, String> body) protected OrderWebProperties
protected String
getSandboxId
(com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) void
handleResourceLockException
(com.broadleafcommerce.common.messaging.exception.ResourceLockException ex, org.springframework.web.context.request.WebRequest request) protected void
obtainLock
(Map<String, String> body, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) void
releaseLock
(String token) void
setProperties
(OrderWebProperties properties)
-
Constructor Details
-
OrderServiceResourceLockEndpoint
public OrderServiceResourceLockEndpoint(com.broadleafcommerce.common.messaging.repository.ResourceLockRepository<?, ?> repository)
-
-
Method Details
-
obtainLock
-
finishLock
@Policy(permissionRoots="ORDER", operationTypes=UPDATE) @FrameworkPatchMapping public void finishLock(@RequestParam String token) -
releaseLock
@Policy(permissionRoots="ORDER", operationTypes=UPDATE) @FrameworkDeleteMapping public void releaseLock(@RequestParam String token) -
handleResourceLockException
@ExceptionHandler(com.broadleafcommerce.common.messaging.exception.ResourceLockException.class) @ResponseStatus(LOCKED) public void handleResourceLockException(com.broadleafcommerce.common.messaging.exception.ResourceLockException ex, org.springframework.web.context.request.WebRequest request) -
getSandboxId
@Nullable protected String getSandboxId(@Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) -
getContextId
-
getConceptKey
-
logDebug
-
setProperties
-
getProperties
-