Commit b8d23408 authored by Brian Long's avatar Brian Long
Browse files

split client to acs-public-rest-client

parent 938ac213
Loading
Loading
Loading
Loading
+26 −201
Original line number Diff line number Diff line
@@ -4,35 +4,28 @@
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.inteligr8.alfresco</groupId>
	<artifactId>acs-public-rest-api</artifactId>
	<version>1.1-SNAPSHOT</version>
	<name>Alfresco Content Services ReST API Client for Java</name>
	<version>2.0-SNAPSHOT</version>
	<name>Alfresco Content Services ReST API for Java</name>

	<properties>
		<project.build.sourceEncoding>utf-8</project.build.sourceEncoding>
		<maven.compiler.source>8</maven.compiler.source>
		<maven.compiler.target>8</maven.compiler.target>
		<maven.compiler.debuglevel>lines,vars,source</maven.compiler.debuglevel>

		<!-- If you want to build for your specific version, point to your own 
			installation -->
		<acs.baseUrl>https://api-explorer.alfresco.com/api-explorer</acs.baseUrl>
		<acs.baseUrl>http://localhost:8080/alfresco</acs.baseUrl>
		<acs.platform.tag>acs7</acs.platform.tag>
		<swagger.basePackage>com.inteligr8.alfresco.acs</swagger.basePackage>
		<it.directory>src/test/none</it.directory>

		<junit.version>5.7.2</junit.version>
		<spring.version>5.2.14.RELEASE</spring.version>
		<jersey.version>2.34</jersey.version>
		<cxf.version>3.3.2</cxf.version>
		<jersey.version>2.35</jersey.version>
		<cxf.version>3.4.7</cxf.version>
		
		<api.model.disabled>false</api.model.disabled>
	</properties>

	<dependencies>
		<dependency>
			<groupId>com.inteligr8</groupId>
			<artifactId>common-rest-api</artifactId>
			<version>1.1-SNAPSHOT</version>
		</dependency>
		<dependency>
			<groupId>io.swagger</groupId>
			<artifactId>swagger-jaxrs</artifactId>
@@ -45,64 +38,26 @@
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.glassfish.jersey.ext</groupId>
			<artifactId>jersey-proxy-client</artifactId>
			<version>${jersey.version}</version>
			<scope>provided</scope>
			<groupId>jakarta.ws.rs</groupId>
			<artifactId>jakarta.ws.rs-api</artifactId>
			<version>2.1.6</version>
		</dependency>
		<dependency>
			<groupId>org.glassfish.jersey.media</groupId>
			<artifactId>jersey-media-multipart</artifactId>
			<version>${jersey.version}</version>
			<scope>provided</scope>
			<groupId>com.fasterxml.jackson.module</groupId>
			<artifactId>jackson-module-jaxb-annotations</artifactId>
			<version>2.12.2</version>
		</dependency>
		<dependency>
			<groupId>org.apache.cxf</groupId>
			<artifactId>cxf-rt-rs-client</artifactId>
			<artifactId>cxf-rt-frontend-jaxrs</artifactId>
			<version>${cxf.version}</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>org.glassfish.jersey.core</groupId>
			<artifactId>jersey-client</artifactId>
			<version>${jersey.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.glassfish.jersey.inject</groupId>
			<artifactId>jersey-hk2</artifactId>
			<version>${jersey.version}</version>
			<scope>test</scope>
			<optional>true</optional>
		</dependency>
		<dependency>
			<groupId>org.glassfish.jersey.media</groupId>
			<artifactId>jersey-media-json-jackson</artifactId>
			<artifactId>jersey-media-multipart</artifactId>
			<version>${jersey.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.junit.jupiter</groupId>
			<artifactId>junit-jupiter-api</artifactId>
			<version>${junit.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-test</artifactId>
			<version>${spring.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.httpcomponents</groupId>
			<artifactId>httpclient</artifactId>
			<version>4.5.9</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-slf4j-impl</artifactId>
			<version>2.16.0</version>
			<scope>test</scope>
			<optional>true</optional>
		</dependency>
	</dependencies>
	
@@ -125,21 +80,6 @@
							</sources>
						</configuration>
					</execution>
					<execution>
						<id>add-services</id>
						<phase>process-test-resources</phase>
						<goals>
							<goal>add-test-resource</goal>
						</goals>
						<configuration>
							<resources>
								<resource>
									<directory>${it.directory}</directory>
									<filtering>false</filtering>
								</resource>
							</resources>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
@@ -148,42 +88,9 @@
					<classifier>${acs.platform.tag}</classifier>
				</configuration>
			</plugin>
			<plugin>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>3.0.0-M5</version>
				<dependencies>
					<dependency>
						<groupId>org.junit.jupiter</groupId>
						<artifactId>junit-jupiter-engine</artifactId>
						<version>${junit.version}</version>
					</dependency>
				</dependencies>
				<configuration>
					<excludes>
						<exclude>**/*Jersey*</exclude>
						<exclude>**/*Cxf*</exclude>
					</excludes>
				</configuration>
			</plugin>
			<plugin>
				<artifactId>maven-failsafe-plugin</artifactId>
				<version>3.0.0-M5</version>
				<dependencies>
					<dependency>
						<groupId>org.junit.jupiter</groupId>
						<artifactId>junit-jupiter-engine</artifactId>
						<version>${junit.version}</version>
					</dependency>
				</dependencies>
				<configuration>
					<excludes>
						<exclude>**/*Jersey*</exclude>
						<exclude>**/*Cxf*</exclude>
					</excludes>
				</configuration>
			</plugin>
			<plugin>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>3.3.2</version>
				<executions>
					<execution>
						<id>javadoc</id>
@@ -199,96 +106,6 @@
	</build>

	<profiles>
		<profile>
			<id>it-jersey</id>
			<properties>
				<it.directory>src/test/jersey</it.directory>
			</properties>
			<build>
				<plugins>
					<plugin>
						<artifactId>maven-surefire-plugin</artifactId>
						<version>3.0.0-M5</version>
						<dependencies>
							<dependency>
								<groupId>org.junit.jupiter</groupId>
								<artifactId>junit-jupiter-engine</artifactId>
								<version>${junit.version}</version>
							</dependency>
						</dependencies>
						<configuration>
							<includes>
								<include>**/*Jersey*</include>
							</includes>
							<excludes>
								<exclude>**/*IT.java</exclude>
							</excludes>
						</configuration>
					</plugin>
					<plugin>
						<artifactId>maven-failsafe-plugin</artifactId>
						<version>3.0.0-M5</version>
						<dependencies>
							<dependency>
								<groupId>org.junit.jupiter</groupId>
								<artifactId>junit-jupiter-engine</artifactId>
								<version>${junit.version}</version>
							</dependency>
						</dependencies>
						<configuration>
							<includes>
								<include>**/*Jersey*IT.java</include>
							</includes>
						</configuration>
					</plugin>
				</plugins>
			</build>
		</profile>
		<profile>
			<id>it-cxf</id>
			<properties>
				<it.directory>src/test/cxf</it.directory>
			</properties>
			<build>
				<plugins>
					<plugin>
						<artifactId>maven-surefire-plugin</artifactId>
						<version>3.0.0-M5</version>
						<dependencies>
							<dependency>
								<groupId>org.junit.jupiter</groupId>
								<artifactId>junit-jupiter-engine</artifactId>
								<version>${junit.version}</version>
							</dependency>
						</dependencies>
						<configuration>
							<includes>
								<include>**/*Cxf*</include>
							</includes>
							<excludes>
								<exclude>**/*IT.java</exclude>
							</excludes>
						</configuration>
					</plugin>
					<plugin>
						<artifactId>maven-failsafe-plugin</artifactId>
						<version>3.0.0-M5</version>
						<dependencies>
							<dependency>
								<groupId>org.junit.jupiter</groupId>
								<artifactId>junit-jupiter-engine</artifactId>
								<version>${junit.version}</version>
							</dependency>
						</dependencies>
						<configuration>
							<includes>
								<include>**/*Cxf*IT.java</include>
							</includes>
						</configuration>
					</plugin>
				</plugins>
			</build>
		</profile>
		<!-- Implement when descriptor is available -->
		<profile>
			<id>swagger-codegen</id>
@@ -541,8 +358,16 @@
	
	<repositories>
		<repository>
			<id>inteligr8-public</id>
			<id>inteligr8-releases</id>
			<url>https://repos.inteligr8.com/nexus/repository/inteligr8-public</url>
			<releases><enabled>true</enabled></releases>
			<snapshots><enabled>false</enabled></snapshots>
		</repository>
		<repository>
			<id>inteligr8-snapshots</id>
			<url>https://repos.inteligr8.com/nexus/repository/inteligr8-snapshots</url>
			<releases><enabled>false</enabled></releases>
			<snapshots><enabled>true</enabled></snapshots>
		</repository>
	</repositories>
	
+0 −165
Original line number Diff line number Diff line
package com.inteligr8.alfresco.acs;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;

import com.inteligr8.rs.ClientCxfConfiguration;
import com.inteligr8.rs.ClientJerseyConfiguration;

/**
 * This class provides a POJO &amp; Spring-based implementation of the
 * ClientConfiguration interface.  You can use it outside of the Spring
 * context, but you will need the spring-context and spring-beans libraries in
 * your non-Spring application.
 * 
 * @author brian@inteligr8.com
 */
@Configuration
@ComponentScan
public class AcsClientConfiguration implements ClientCxfConfiguration, ClientJerseyConfiguration {

	@Value("${content.service.baseUrl:http://localhost:8080/alfresco}")
	private String baseUrl;

	@Value("${content.service.security.basicAuth.username:admin}")
	private String basicAuthUsername;

	@Value("${content.service.security.basicAuth.password:admin}")
	private String basicAuthPassword;

	@Value("${content.service.security.bearerToken:#{null}}")
	private String bearerToken;

	@Value("${content.service.security.oauth.tokenUrl:#{null}}")
	private String oAuthTokenUrl;

	@Value("${content.service.security.oauth.clientId:#{null}}")
	private String oAuthClientId;

	@Value("${content.service.security.oauth.clientSecret:#{null}}")
	private String oAuthClientSecret;

	@Value("${content.service.security.oauth.authCode:#{null}}")
	private String oAuthAuthCode;

	@Value("${content.service.security.oauth.authRedirectUri:#{null}}")
	private String oAuthAuthRedirectUri;

	@Value("${content.service.security.oauth.grantUsername:#{null}}")
	private String oAuthUsername;

	@Value("${content.service.security.oauth.grantPassword:#{null}}")
	private String oAuthPassword;
	
	@Value("${content.service.cxf.defaultBusEnabled:true}")
	private boolean defaultBusEnabled;
	
	@Value("${content.service.jersey.putBodyRequired:true}")
	private boolean putBodyRequired;

	public String getBaseUrl() {
		return this.baseUrl;
	}
	
	public void setBaseUrl(String baseUrl) {
		this.baseUrl = baseUrl;
	}
	
	public String getBasicAuthUsername() {
		return this.basicAuthUsername;
	}

	public void setBasicAuthUsername(String basicAuthUsername) {
		this.basicAuthUsername = basicAuthUsername;
	}
	
	public String getBasicAuthPassword() {
		return this.basicAuthPassword;
	}

	public void setBasicAuthPassword(String basicAuthPassword) {
		this.basicAuthPassword = basicAuthPassword;
	}
	
	public String getBearerToken() {
		return this.bearerToken;
	}

	public void setBearerToken(String bearerToken) {
		this.bearerToken = bearerToken;
	}
	
	public String getOAuthTokenUrl() {
		return this.oAuthTokenUrl;
	}

	public void setOAuthTokenUrl(String oAuthTokenUrl) {
		this.oAuthTokenUrl = oAuthTokenUrl;
	}
	
	public String getOAuthClientId() {
		return this.oAuthClientId;
	}

	public void setOAuthClientId(String oAuthClientId) {
		this.oAuthClientId = oAuthClientId;
	}
	
	public String getOAuthClientSecret() {
		return this.oAuthClientSecret;
	}

	public void setOAuthClientSecret(String oAuthClientSecret) {
		this.oAuthClientSecret = oAuthClientSecret;
	}
	
	public String getOAuthAuthCode() {
		return this.oAuthAuthCode;
	}

	public void setOAuthAuthCode(String oAuthAuthCode) {
		this.oAuthAuthCode = oAuthAuthCode;
	}
	
	public String getOAuthAuthRedirectUri() {
		return this.oAuthAuthRedirectUri;
	}

	public void setOAuthAuthRedirectUri(String oAuthAuthRedirectUri) {
		this.oAuthAuthRedirectUri = oAuthAuthRedirectUri;
	}
	
	public String getOAuthUsername() {
		return this.oAuthUsername;
	}

	public void setOAuthUsername(String oAuthUsername) {
		this.oAuthUsername = oAuthUsername;
	}
	
	public String getOAuthPassword() {
		return this.oAuthPassword;
	}

	public void setOAuthPassword(String oAuthPassword) {
		this.oAuthPassword = oAuthPassword;
	}
	
	public boolean isDefaultBusEnabled() {
		return this.defaultBusEnabled;
	}

	public void setDefaultBusEnabled(boolean defaultBusEnabled) {
		this.defaultBusEnabled = defaultBusEnabled;
	}
	
	public boolean isPutBodyRequired() {
		return this.putBodyRequired;
	}

	public void setPutBodyRequired(boolean putBodyRequired) {
		this.putBodyRequired = putBodyRequired;
	}

}
+0 −44
Original line number Diff line number Diff line
package com.inteligr8.alfresco.acs;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Component;

import com.inteligr8.rs.ClientCxfConfiguration;
import com.inteligr8.rs.ClientCxfImpl;

/**
 * This class provides a POJO &amp; Spring-based implementation of the Apache
 * CXF client.  You can use it outside of the Spring context, but you will need
 * the spring-context and spring-beans libraries in your non-Spring
 * application.
 * 
 * @author brian@inteligr8.com
 */
@Component("acs.client.cxf")
@Lazy
public class AcsClientCxfImpl extends ClientCxfImpl {
	
	@Autowired
	private AcsClientConfiguration config;
	
	/**
	 * This constructor is for Spring use.
	 */
	protected AcsClientCxfImpl() {
	}
	
	/**
	 * This constructor is for POJO use.
	 * @param config
	 */
	public AcsClientCxfImpl(AcsClientConfiguration config) {
		this.config = config;
	}
	
	@Override
	protected ClientCxfConfiguration getConfig() {
		return this.config;
	}

}
+0 −44
Original line number Diff line number Diff line
package com.inteligr8.alfresco.acs;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Component;

import com.inteligr8.rs.ClientJerseyConfiguration;
import com.inteligr8.rs.ClientJerseyImpl;

/**
 * This class provides a POJO &amp; Spring-based implementation of the Apache
 * CXF client.  You can use it outside of the Spring context, but you will need
 * the spring-context and spring-beans libraries in your non-Spring
 * application.
 * 
 * @author brian@inteligr8.com
 */
@Component("acs.client.jersey")
@Lazy
public class AcsClientJerseyImpl extends ClientJerseyImpl {
	
	@Autowired
	private AcsClientConfiguration config;
	
	/**
	 * This constructor is for Spring use.
	 */
	protected AcsClientJerseyImpl() {
	}
	
	/**
	 * This constructor is for POJO use.
	 * @param config
	 */
	public AcsClientJerseyImpl(AcsClientConfiguration config) {
		this.config = config;
	}
	
	@Override
	protected ClientJerseyConfiguration getConfig() {
		return this.config;
	}

}
+32 −145
Original line number Diff line number Diff line
@@ -26,236 +26,123 @@ import com.inteligr8.alfresco.acs.api.TrashcanApi;
import com.inteligr8.alfresco.acs.api.TypesApi;
import com.inteligr8.alfresco.acs.api.V0Api;
import com.inteligr8.alfresco.acs.api.VersionsApi;
import com.inteligr8.rs.AuthorizationFilter;
import com.inteligr8.rs.Client;
import com.inteligr8.rs.ClientConfiguration;

/**
 * This class serves as the base implementation for the JAX-RS API for the ACS
 * Public ReST API.
 * This interface consolidates the JAX-RS APIs available in the ACS Public
 * ReST API.
 * 
 * @author brian@inteligr8.com
 */
public abstract class AcsPublicRestApi {
public interface AcsPublicRestApi {
	
	abstract ClientConfiguration getConfig();
	<T> T getApi(Class<T> apiClass);
	
	abstract Client getClient();
	
	protected final <T> T getApi(Class<T> apiClass) {
		return this.getApi(null, apiClass);
	}

	protected <T> T getApi(AuthorizationFilter authFilter, Class<T> apiClass) {
		return this.getClient().getApi(authFilter, apiClass);
	}
	
	public ActionsApi getActionsApi() {
	default ActionsApi getActionsApi() {
		return this.getApi(ActionsApi.class);
	}
	
	public ActionsApi getActionsApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, ActionsApi.class);
	}
	
	public ActivitiesApi getActivitiesApi() {
	default ActivitiesApi getActivitiesApi() {
		return this.getApi(ActivitiesApi.class);
	}
	
	public ActivitiesApi getActivitiesApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, ActivitiesApi.class);
	}
	
	public AspectsApi getAspectsApi() {
	default AspectsApi getAspectsApi() {
		return this.getApi(AspectsApi.class);
	}

	public AspectsApi getAspectsApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, AspectsApi.class);
	}

	public AuditApi getAuditApi() {
	default AuditApi getAuditApi() {
		return this.getApi(AuditApi.class);
	}
	
	public AuditApi getAuditApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, AuditApi.class);
	}
	
	public AuthenticationApi getAuthenticationApi() {
	default AuthenticationApi getAuthenticationApi() {
		return this.getApi(AuthenticationApi.class);
	}
	
	public AuthenticationApi getAuthenticationApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, AuthenticationApi.class);
	}
	
	public CommentsApi getCommentsApi() {
	default CommentsApi getCommentsApi() {
		return this.getApi(CommentsApi.class);
	}
	
	public CommentsApi getCommentsApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, CommentsApi.class);
	}
	
	public DiscoveryApi getDiscoveryApi() {
	default DiscoveryApi getDiscoveryApi() {
		return this.getApi(DiscoveryApi.class);
	}
	
	public DiscoveryApi getDiscoveryApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, DiscoveryApi.class);
	}
	
	public DownloadsApi getDownloadsApi() {
	default DownloadsApi getDownloadsApi() {
		return this.getApi(DownloadsApi.class);
	}
	
	public DownloadsApi getDownloadsApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, DownloadsApi.class);
	}
	
	public FavoritesApi getFavoritesApi() {
	default FavoritesApi getFavoritesApi() {
		return this.getApi(FavoritesApi.class);
	}
	
	public FavoritesApi getFavoritesApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, FavoritesApi.class);
	}
	
	public GroupsApi getGroupsApi() {
	default GroupsApi getGroupsApi() {
		return this.getApi(GroupsApi.class);
	}
	
	public GroupsApi getGroupsApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, GroupsApi.class);
	}
	
	public NetworksApi getNetworksApi() {
	default NetworksApi getNetworksApi() {
		return this.getApi(NetworksApi.class);
	}
	
	public NetworksApi getNetworksApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, NetworksApi.class);
	}
	
	public NodesApi getNodesApi() {
	default NodesApi getNodesApi() {
		return this.getApi(NodesApi.class);
	}
	
	public NodesApi getNodesApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, NodesApi.class);
	}
	
	public PeopleApi getPeopleApi() {
	default PeopleApi getPeopleApi() {
		return this.getApi(PeopleApi.class);
	}
	
	public PeopleApi getPeopleApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, PeopleApi.class);
	}
	
	public PreferencesApi getPreferencesApi() {
	default PreferencesApi getPreferencesApi() {
		return this.getApi(PreferencesApi.class);
	}
	
	public PreferencesApi getPreferencesApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, PreferencesApi.class);
	}
	
	public ProbesApi getProbesApi() {
	default ProbesApi getProbesApi() {
		return this.getApi(ProbesApi.class);
	}
	
	public ProbesApi getProbesApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, ProbesApi.class);
	}
	
	public QueriesApi getQueriesApi() {
	default QueriesApi getQueriesApi() {
		return this.getApi(QueriesApi.class);
	}
	
	public QueriesApi getQueriesApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, QueriesApi.class);
	}
	
	public RatingsApi getRatingsApi() {
	default RatingsApi getRatingsApi() {
		return this.getApi(RatingsApi.class);
	}
	
	public RatingsApi getRatingsApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, RatingsApi.class);
	}
	
	public RenditionsApi getRenditionsApi() {
	default RenditionsApi getRenditionsApi() {
		return this.getApi(RenditionsApi.class);
	}
	
	public RenditionsApi getRenditionsApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, RenditionsApi.class);
	}
	
	public SearchApi getSearchApi() {
	default SearchApi getSearchApi() {
		return this.getApi(SearchApi.class);
	}
	
	public SearchApi getSearchApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, SearchApi.class);
	}
	
	public SharedLinksApi getSharedLinksApi() {
	default SharedLinksApi getSharedLinksApi() {
		return this.getApi(SharedLinksApi.class);
	}
	
	public SharedLinksApi getSharedLinksApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, SharedLinksApi.class);
	}
	
	public SitesApi getSitesApi() {
	default SitesApi getSitesApi() {
		return this.getApi(SitesApi.class);
	}
	
	public SitesApi getSitesApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, SitesApi.class);
	}
	
	public TagsApi getTagsApi() {
	default TagsApi getTagsApi() {
		return this.getApi(TagsApi.class);
	}
	
	public TagsApi getTagsApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, TagsApi.class);
	}
	
	public TrashcanApi getTrashcanApi() {
	default TrashcanApi getTrashcanApi() {
		return this.getApi(TrashcanApi.class);
	}
	
	public TrashcanApi getTrashcanApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, TrashcanApi.class);
	}
	
	public TypesApi getTypesApi() {
	default TypesApi getTypesApi() {
		return this.getApi(TypesApi.class);
	}
	
	public TypesApi getTypesApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, TypesApi.class);
	}
	
	public VersionsApi getVersionsApi() {
	default VersionsApi getVersionsApi() {
		return this.getApi(VersionsApi.class);
	}
	
	public VersionsApi getVersionsApi(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, VersionsApi.class);
	}
	
	public V0Api getV0Api() {
	default V0Api getV0Api() {
		return this.getApi(V0Api.class);
	}
	
	public V0Api getV0Api(AuthorizationFilter authFilter) {
		return this.getApi(authFilter, V0Api.class);
	default V0Api getLegacyApi() {
		return this.getV0Api();
	}

}
Loading