/modules/dxp/apps/segments/segments-asah-rest-impl/src/main/java/com/liferay/segments/asah/rest/internal/resource/v1_0/BaseStatusResourceImpl.java
Java | 443 lines | 333 code | 83 blank | 27 comment | 7 complexity | 0bcccd4ea732f978817ed2e385dfe3b5 MD5 | raw file
- /**
- * Copyright (c) 2000-present Liferay, Inc. All rights reserved.
- *
- * The contents of this file are subject to the terms of the Liferay Enterprise
- * Subscription License ("License"). You may not use this file except in
- * compliance with the License. You can obtain a copy of the License by
- * contacting Liferay, Inc. See the License for the specific language governing
- * permissions and limitations under the License, including but not limited to
- * distribution rights of the Software.
- *
- *
- *
- */
- package com.liferay.segments.asah.rest.internal.resource.v1_0;
- import com.liferay.petra.function.UnsafeBiConsumer;
- import com.liferay.petra.function.UnsafeConsumer;
- import com.liferay.petra.function.UnsafeFunction;
- import com.liferay.portal.kernel.log.LogFactoryUtil;
- import com.liferay.portal.kernel.model.GroupedModel;
- import com.liferay.portal.kernel.search.Sort;
- import com.liferay.portal.kernel.search.filter.Filter;
- import com.liferay.portal.kernel.security.permission.resource.ModelResourcePermission;
- import com.liferay.portal.kernel.service.GroupLocalService;
- import com.liferay.portal.kernel.service.ResourceActionLocalService;
- import com.liferay.portal.kernel.service.ResourcePermissionLocalService;
- import com.liferay.portal.kernel.service.RoleLocalService;
- import com.liferay.portal.kernel.util.LocaleUtil;
- import com.liferay.portal.odata.entity.EntityModel;
- import com.liferay.portal.odata.filter.ExpressionConvert;
- import com.liferay.portal.odata.filter.FilterParser;
- import com.liferay.portal.odata.filter.FilterParserProvider;
- import com.liferay.portal.vulcan.accept.language.AcceptLanguage;
- import com.liferay.portal.vulcan.batch.engine.VulcanBatchEngineTaskItemDelegate;
- import com.liferay.portal.vulcan.batch.engine.resource.VulcanBatchEngineImportTaskResource;
- import com.liferay.portal.vulcan.pagination.Page;
- import com.liferay.portal.vulcan.pagination.Pagination;
- import com.liferay.portal.vulcan.resource.EntityModelResource;
- import com.liferay.portal.vulcan.util.ActionUtil;
- import com.liferay.portal.vulcan.util.TransformUtil;
- import com.liferay.segments.asah.rest.dto.v1_0.Experiment;
- import com.liferay.segments.asah.rest.dto.v1_0.Status;
- import com.liferay.segments.asah.rest.resource.v1_0.StatusResource;
- import java.io.Serializable;
- import java.util.List;
- import java.util.Locale;
- import java.util.Map;
- import javax.annotation.Generated;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import javax.ws.rs.NotSupportedException;
- import javax.ws.rs.core.MultivaluedHashMap;
- import javax.ws.rs.core.MultivaluedMap;
- import javax.ws.rs.core.Response;
- import javax.ws.rs.core.UriInfo;
- /**
- * @author Javier Gamarra
- * @generated
- */
- @Generated("")
- @javax.ws.rs.Path("/v1.0")
- public abstract class BaseStatusResourceImpl
- implements EntityModelResource, StatusResource,
- VulcanBatchEngineTaskItemDelegate<Status> {
- /**
- * Invoke this method with the command line:
- *
- * curl -X 'POST' 'http://localhost:8080/o/segments-asah/v1.0/experiments/{experimentId}/status' -d $'{"status": ___, "winnerVariantId": ___}' --header 'Content-Type: application/json' -u 'test@liferay.com:test'
- */
- @io.swagger.v3.oas.annotations.Parameters(
- value = {
- @io.swagger.v3.oas.annotations.Parameter(
- in = io.swagger.v3.oas.annotations.enums.ParameterIn.PATH,
- name = "experimentId"
- )
- }
- )
- @io.swagger.v3.oas.annotations.tags.Tags(
- value = {@io.swagger.v3.oas.annotations.tags.Tag(name = "Status")}
- )
- @javax.ws.rs.Consumes({"application/json", "application/xml"})
- @javax.ws.rs.Path("/experiments/{experimentId}/status")
- @javax.ws.rs.POST
- @javax.ws.rs.Produces({"application/json", "application/xml"})
- @Override
- public Experiment postExperimentStatus(
- @io.swagger.v3.oas.annotations.Parameter(hidden = true)
- @javax.validation.constraints.NotNull
- @javax.ws.rs.PathParam("experimentId")
- Long experimentId,
- Status status)
- throws Exception {
- return new Experiment();
- }
- /**
- * Invoke this method with the command line:
- *
- * curl -X 'POST' 'http://localhost:8080/o/segments-asah/v1.0/experiments/{experimentId}/status/batch' -u 'test@liferay.com:test'
- */
- @io.swagger.v3.oas.annotations.Parameters(
- value = {
- @io.swagger.v3.oas.annotations.Parameter(
- in = io.swagger.v3.oas.annotations.enums.ParameterIn.PATH,
- name = "experimentId"
- ),
- @io.swagger.v3.oas.annotations.Parameter(
- in = io.swagger.v3.oas.annotations.enums.ParameterIn.QUERY,
- name = "callbackURL"
- )
- }
- )
- @io.swagger.v3.oas.annotations.tags.Tags(
- value = {@io.swagger.v3.oas.annotations.tags.Tag(name = "Status")}
- )
- @javax.ws.rs.Consumes("application/json")
- @javax.ws.rs.Path("/experiments/{experimentId}/status/batch")
- @javax.ws.rs.POST
- @javax.ws.rs.Produces("application/json")
- @Override
- public Response postExperimentStatusBatch(
- @io.swagger.v3.oas.annotations.Parameter(hidden = true)
- @javax.validation.constraints.NotNull
- @javax.ws.rs.PathParam("experimentId")
- Long experimentId,
- @io.swagger.v3.oas.annotations.Parameter(hidden = true)
- @javax.ws.rs.QueryParam("callbackURL")
- String callbackURL,
- Object object)
- throws Exception {
- vulcanBatchEngineImportTaskResource.setContextAcceptLanguage(
- contextAcceptLanguage);
- vulcanBatchEngineImportTaskResource.setContextCompany(contextCompany);
- vulcanBatchEngineImportTaskResource.setContextHttpServletRequest(
- contextHttpServletRequest);
- vulcanBatchEngineImportTaskResource.setContextUriInfo(contextUriInfo);
- vulcanBatchEngineImportTaskResource.setContextUser(contextUser);
- Response.ResponseBuilder responseBuilder = Response.accepted();
- return responseBuilder.entity(
- vulcanBatchEngineImportTaskResource.postImportTask(
- Status.class.getName(), callbackURL, null, object)
- ).build();
- }
- @Override
- @SuppressWarnings("PMD.UnusedLocalVariable")
- public void create(
- java.util.Collection<Status> statuses,
- Map<String, Serializable> parameters)
- throws Exception {
- UnsafeConsumer<Status, Exception> statusUnsafeConsumer = null;
- String createStrategy = (String)parameters.getOrDefault(
- "createStrategy", "INSERT");
- if ("INSERT".equalsIgnoreCase(createStrategy)) {
- statusUnsafeConsumer = status -> postExperimentStatus(
- Long.parseLong((String)parameters.get("experimentId")), status);
- }
- if (statusUnsafeConsumer == null) {
- throw new NotSupportedException(
- "Create strategy \"" + createStrategy +
- "\" is not supported for Status");
- }
- if (contextBatchUnsafeConsumer != null) {
- contextBatchUnsafeConsumer.accept(statuses, statusUnsafeConsumer);
- }
- else {
- for (Status status : statuses) {
- statusUnsafeConsumer.accept(status);
- }
- }
- }
- @Override
- public void delete(
- java.util.Collection<Status> statuses,
- Map<String, Serializable> parameters)
- throws Exception {
- }
- @Override
- public EntityModel getEntityModel(Map<String, List<String>> multivaluedMap)
- throws Exception {
- return getEntityModel(
- new MultivaluedHashMap<String, Object>(multivaluedMap));
- }
- @Override
- public EntityModel getEntityModel(MultivaluedMap multivaluedMap)
- throws Exception {
- return null;
- }
- public String getVersion() {
- return "v1.0";
- }
- @Override
- public Page<Status> read(
- Filter filter, Pagination pagination, Sort[] sorts,
- Map<String, Serializable> parameters, String search)
- throws Exception {
- return null;
- }
- @Override
- public void setLanguageId(String languageId) {
- this.contextAcceptLanguage = new AcceptLanguage() {
- @Override
- public List<Locale> getLocales() {
- return null;
- }
- @Override
- public String getPreferredLanguageId() {
- return languageId;
- }
- @Override
- public Locale getPreferredLocale() {
- return LocaleUtil.fromLanguageId(languageId);
- }
- };
- }
- @Override
- public void update(
- java.util.Collection<Status> statuses,
- Map<String, Serializable> parameters)
- throws Exception {
- }
- public void setContextAcceptLanguage(AcceptLanguage contextAcceptLanguage) {
- this.contextAcceptLanguage = contextAcceptLanguage;
- }
- public void setContextBatchUnsafeConsumer(
- UnsafeBiConsumer
- <java.util.Collection<Status>, UnsafeConsumer<Status, Exception>,
- Exception> contextBatchUnsafeConsumer) {
- this.contextBatchUnsafeConsumer = contextBatchUnsafeConsumer;
- }
- public void setContextCompany(
- com.liferay.portal.kernel.model.Company contextCompany) {
- this.contextCompany = contextCompany;
- }
- public void setContextHttpServletRequest(
- HttpServletRequest contextHttpServletRequest) {
- this.contextHttpServletRequest = contextHttpServletRequest;
- }
- public void setContextHttpServletResponse(
- HttpServletResponse contextHttpServletResponse) {
- this.contextHttpServletResponse = contextHttpServletResponse;
- }
- public void setContextUriInfo(UriInfo contextUriInfo) {
- this.contextUriInfo = contextUriInfo;
- }
- public void setContextUser(
- com.liferay.portal.kernel.model.User contextUser) {
- this.contextUser = contextUser;
- }
- public void setExpressionConvert(
- ExpressionConvert<Filter> expressionConvert) {
- this.expressionConvert = expressionConvert;
- }
- public void setFilterParserProvider(
- FilterParserProvider filterParserProvider) {
- this.filterParserProvider = filterParserProvider;
- }
- public void setGroupLocalService(GroupLocalService groupLocalService) {
- this.groupLocalService = groupLocalService;
- }
- public void setResourceActionLocalService(
- ResourceActionLocalService resourceActionLocalService) {
- this.resourceActionLocalService = resourceActionLocalService;
- }
- public void setResourcePermissionLocalService(
- ResourcePermissionLocalService resourcePermissionLocalService) {
- this.resourcePermissionLocalService = resourcePermissionLocalService;
- }
- public void setRoleLocalService(RoleLocalService roleLocalService) {
- this.roleLocalService = roleLocalService;
- }
- public void setVulcanBatchEngineImportTaskResource(
- VulcanBatchEngineImportTaskResource
- vulcanBatchEngineImportTaskResource) {
- this.vulcanBatchEngineImportTaskResource =
- vulcanBatchEngineImportTaskResource;
- }
- @Override
- public Filter toFilter(
- String filterString, Map<String, List<String>> multivaluedMap) {
- try {
- EntityModel entityModel = getEntityModel(multivaluedMap);
- FilterParser filterParser = filterParserProvider.provide(
- entityModel);
- com.liferay.portal.odata.filter.Filter oDataFilter =
- new com.liferay.portal.odata.filter.Filter(
- filterParser.parse(filterString));
- return expressionConvert.convert(
- oDataFilter.getExpression(),
- contextAcceptLanguage.getPreferredLocale(), entityModel);
- }
- catch (Exception exception) {
- _log.error("Invalid filter " + filterString, exception);
- }
- return null;
- }
- protected Map<String, String> addAction(
- String actionName, GroupedModel groupedModel, String methodName) {
- return ActionUtil.addAction(
- actionName, getClass(), groupedModel, methodName,
- contextScopeChecker, contextUriInfo);
- }
- protected Map<String, String> addAction(
- String actionName, Long id, String methodName, Long ownerId,
- String permissionName, Long siteId) {
- return ActionUtil.addAction(
- actionName, getClass(), id, methodName, contextScopeChecker,
- ownerId, permissionName, siteId, contextUriInfo);
- }
- protected Map<String, String> addAction(
- String actionName, Long id, String methodName,
- ModelResourcePermission modelResourcePermission) {
- return ActionUtil.addAction(
- actionName, getClass(), id, methodName, contextScopeChecker,
- modelResourcePermission, contextUriInfo);
- }
- protected Map<String, String> addAction(
- String actionName, String methodName, String permissionName,
- Long siteId) {
- return addAction(
- actionName, siteId, methodName, null, permissionName, siteId);
- }
- protected <T, R> List<R> transform(
- java.util.Collection<T> collection,
- UnsafeFunction<T, R, Exception> unsafeFunction) {
- return TransformUtil.transform(collection, unsafeFunction);
- }
- protected <T, R> R[] transform(
- T[] array, UnsafeFunction<T, R, Exception> unsafeFunction,
- Class<?> clazz) {
- return TransformUtil.transform(array, unsafeFunction, clazz);
- }
- protected <T, R> R[] transformToArray(
- java.util.Collection<T> collection,
- UnsafeFunction<T, R, Exception> unsafeFunction, Class<?> clazz) {
- return TransformUtil.transformToArray(
- collection, unsafeFunction, clazz);
- }
- protected <T, R> List<R> transformToList(
- T[] array, UnsafeFunction<T, R, Exception> unsafeFunction) {
- return TransformUtil.transformToList(array, unsafeFunction);
- }
- protected AcceptLanguage contextAcceptLanguage;
- protected UnsafeBiConsumer
- <java.util.Collection<Status>, UnsafeConsumer<Status, Exception>,
- Exception> contextBatchUnsafeConsumer;
- protected com.liferay.portal.kernel.model.Company contextCompany;
- protected HttpServletRequest contextHttpServletRequest;
- protected HttpServletResponse contextHttpServletResponse;
- protected Object contextScopeChecker;
- protected UriInfo contextUriInfo;
- protected com.liferay.portal.kernel.model.User contextUser;
- protected ExpressionConvert<Filter> expressionConvert;
- protected FilterParserProvider filterParserProvider;
- protected GroupLocalService groupLocalService;
- protected ResourceActionLocalService resourceActionLocalService;
- protected ResourcePermissionLocalService resourcePermissionLocalService;
- protected RoleLocalService roleLocalService;
- protected VulcanBatchEngineImportTaskResource
- vulcanBatchEngineImportTaskResource;
- private static final com.liferay.portal.kernel.log.Log _log =
- LogFactoryUtil.getLog(BaseStatusResourceImpl.class);
- }