
com.liferay.headless.delivery.internal.resource.v1_0.OpenAPIResourceImpl Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of com.liferay.headless.delivery.impl
Show all versions of com.liferay.headless.delivery.impl
Liferay Headless Delivery Implementation
The newest version!
/**
* SPDX-FileCopyrightText: (c) 2000 Liferay, Inc. https://liferay.com
* SPDX-License-Identifier: LGPL-2.1-or-later OR LicenseRef-Liferay-DXP-EULA-2.0.0-2023-06
*/
package com.liferay.headless.delivery.internal.resource.v1_0;
import com.liferay.portal.vulcan.resource.OpenAPIResource;
import io.swagger.v3.oas.annotations.OpenAPIDefinition;
import io.swagger.v3.oas.annotations.info.Info;
import io.swagger.v3.oas.annotations.info.License;
import jakarta.annotation.Generated;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.ws.rs.GET;
import jakarta.ws.rs.Path;
import jakarta.ws.rs.PathParam;
import jakarta.ws.rs.Produces;
import jakarta.ws.rs.core.Context;
import jakarta.ws.rs.core.MediaType;
import jakarta.ws.rs.core.Response;
import jakarta.ws.rs.core.UriInfo;
import java.lang.reflect.Method;
import java.util.HashSet;
import java.util.Set;
import org.osgi.service.component.annotations.Component;
import org.osgi.service.component.annotations.Reference;
/**
* @author Javier Gamarra
* @generated
*/
@Component(
properties = "OSGI-INF/liferay/rest/v1_0/openapi.properties",
service = OpenAPIResourceImpl.class
)
@Generated("")
@OpenAPIDefinition(
info = @Info(description = "A Java client JAR is available for use with the group ID 'com.liferay', artifact ID 'com.liferay.headless.delivery.client', and version '4.0.97'.", license = @License(name = "Apache 2.0", url = "http://www.apache.org/licenses/LICENSE-2.0.html"), title = "Headless Delivery", version = "v1.0")
)
@Path("/v1.0")
public class OpenAPIResourceImpl {
@GET
@Path("/openapi.{type:json|yaml}")
@Produces({MediaType.APPLICATION_JSON, "application/yaml"})
public Response getOpenAPI(
@Context HttpServletRequest httpServletRequest,
@PathParam("type") String type, @Context UriInfo uriInfo)
throws Exception {
Class extends OpenAPIResource> clazz = _openAPIResource.getClass();
try {
Method method = clazz.getMethod(
"getOpenAPI", HttpServletRequest.class, Set.class, String.class,
UriInfo.class);
return (Response)method.invoke(
_openAPIResource, httpServletRequest, _resourceClasses, type,
uriInfo);
}
catch (NoSuchMethodException noSuchMethodException1) {
try {
Method method = clazz.getMethod(
"getOpenAPI", Set.class, String.class, UriInfo.class);
return (Response)method.invoke(
_openAPIResource, _resourceClasses, type, uriInfo);
}
catch (NoSuchMethodException noSuchMethodException2) {
return _openAPIResource.getOpenAPI(_resourceClasses, type);
}
}
}
@Reference
private OpenAPIResource _openAPIResource;
private final Set> _resourceClasses = new HashSet>() {
{
add(BlogPostingResourceImpl.class);
add(BlogPostingImageResourceImpl.class);
add(CommentResourceImpl.class);
add(ContentElementResourceImpl.class);
add(ContentSetElementResourceImpl.class);
add(ContentStructureResourceImpl.class);
add(ContentTemplateResourceImpl.class);
add(DocumentResourceImpl.class);
add(DocumentDataDefinitionTypeResourceImpl.class);
add(DocumentFolderResourceImpl.class);
add(DocumentMetadataSetResourceImpl.class);
add(DocumentShortcutResourceImpl.class);
add(KnowledgeBaseArticleResourceImpl.class);
add(KnowledgeBaseAttachmentResourceImpl.class);
add(KnowledgeBaseFolderResourceImpl.class);
add(LanguageResourceImpl.class);
add(MessageBoardAttachmentResourceImpl.class);
add(MessageBoardMessageResourceImpl.class);
add(MessageBoardSectionResourceImpl.class);
add(MessageBoardThreadResourceImpl.class);
add(NavigationMenuResourceImpl.class);
add(SitePageResourceImpl.class);
add(StructuredContentResourceImpl.class);
add(StructuredContentFolderResourceImpl.class);
add(WikiNodeResourceImpl.class);
add(WikiPageResourceImpl.class);
add(WikiPageAttachmentResourceImpl.class);
add(OpenAPIResourceImpl.class);
}
};
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy