Commit 7d432d74 authored by Brian Long's avatar Brian Long
Browse files

removed raml for cleaner narrower impl

parent 10b7db3b
Loading
Loading
Loading
Loading
+57 −14
Original line number Diff line number Diff line
@@ -95,7 +95,7 @@
		<profile>
			<id>openapi-codegen</id>
		</profile>
		<!-- RAML seems legacy, but works -->
		<!-- RAML seems legacy, but sometimes works -->
		<profile>
			<id>raml-codegen</id>
			<properties>
@@ -116,6 +116,24 @@
								</fileset>
							</filesets>
						</configuration>
						<executions>
							<execution>
								<id>delete-extras</id>
								<phase>process-sources</phase>
								<goals><goal>clean</goal></goals>
								<configuration>
									<excludeDefaultDirectories>true</excludeDefaultDirectories>
									<filesets>
										<fileset>
											<directory>${project.build.directory}/ramlgen/java</directory>
											<includes>
												<include>com/inteligr8/alfresco/activiti/raml/**/*__*.java</include>
											</includes>
										</fileset>
									</filesets>
								</configuration>
							</execution>
						</executions>
					</plugin>
					<plugin>
						<groupId>com.googlecode.maven-download-plugin</groupId>
@@ -168,6 +186,30 @@
									</regexes>
								</configuration>
							</execution>
							<execution>
								<id>fix-dupclasses</id>
								<phase>process-sources</phase>
								<goals>
									<goal>replace-file</goal>
								</goals>
								<configuration>
									<filesets>
										<fileset>
											<directory>${project.build.directory}/ramlgen/java</directory>
											<includes>
												<include>**/*.java</include>
											</includes>
											<outputDirectory>src/main/java</outputDirectory>
										</fileset>
									</filesets>
									<regexes>
										<regex>
											<pattern>([A-Z][A-Za-z0-9]*)__[0-9]+</pattern>
											<replacement>$1</replacement>
										</regex>
									</regexes>
								</configuration>
							</execution>
						</executions>
					</plugin>
					<plugin>
@@ -185,7 +227,7 @@
									<basePackage>com.inteligr8.alfresco.activiti.raml</basePackage>
									<ramlFile>${project.build.directory}/regexed/activiti.raml</ramlFile>
									<includeAdditionalProperties>false</includeAdditionalProperties>
									<outputDir>${basedir}/src/main/java</outputDir>
									<outputDir>${project.build.directory}/ramlgen/java</outputDir>
									<outputVersion>v2</outputVersion>
								</configuration>
							</execution>
@@ -193,16 +235,17 @@
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>
	
	<pluginRepositories>
		<pluginRepository>
			<id>mulesoft-releases</id>
			<url>https://repository.mulesoft.org/releases</url>
		</pluginRepository>
		<pluginRepository>
					<id>inteligr8-public</id>
			<id>inteligr8-releases</id>
			<url>http://repos.inteligr8.com/nexus/repository/inteligr8-public</url>
		</pluginRepository>
	</pluginRepositories>
		</profile>
	</profiles>
</project>
 No newline at end of file
+8 −8
Original line number Diff line number Diff line
@@ -6,26 +6,26 @@ import javax.ws.rs.core.Feature;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import com.inteligr8.alfresco.activiti.raml.resource.enterprise.Enterprise;
import com.inteligr8.alfresco.activiti.api.EnterpriseAPI;

/**
 * Afresco Process Services Spring Client
 */
@Component
public class Client {
public class ApsClient {
	
	private static final Client INSTANCE = new Client();
	private static final ApsClient INSTANCE = new ApsClient();
	
	public static Client getInstance() {
		return Client.INSTANCE;
	public static ApsClient getInstance() {
		return ApsClient.INSTANCE;
	}
	

	
	@Autowired
	private ClientConfiguration config;
	private ApsClientConfiguration config;
	
	public Enterprise getEnterpriseApi() {
	public EnterpriseAPI getEnterpriseAPI() {
		javax.ws.rs.client.Client client = ClientBuilder
				.newClient();
		
@@ -33,7 +33,7 @@ public class Client {
		if (feature != null)
			client.register(feature);
		
		return new Enterprise(this.config.getBaseUrl() + "/api", client);
		return new EnterpriseAPI(this.config.getBaseUrl() + "/api", client);
	}

}
+1 −1
Original line number Diff line number Diff line
@@ -10,7 +10,7 @@ import org.springframework.context.annotation.Configuration;

@Configuration
@ComponentScan
public class ClientConfiguration {
public class ApsClientConfiguration {

	@Value("${process.service.baseUrl}")
	private String baseUrl;
+32 −0
Original line number Diff line number Diff line
package com.inteligr8.alfresco.activiti;

import java.io.IOException;
import java.util.List;

import javax.ws.rs.WebApplicationException;
import javax.ws.rs.core.Response;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.node.ArrayNode;

public class ExtendedResponse {
	
	private final Response response;
	
	public ExtendedResponse(Response response) {
		this.response = response;
	}
	
	@SuppressWarnings("unchecked")
	public <T> List<T> readArrayEntity(Class<T> genericType) {
		ArrayNode nodes = this.response.readEntity(ArrayNode.class);
		
		ObjectMapper om = new ObjectMapper();
		try {
			return (List<T>)om.readerForListOf(genericType).readValue(nodes);
		} catch (IOException ie) {
			throw new WebApplicationException(ie);
		}
	}

}
+32 −0
Original line number Diff line number Diff line

package com.inteligr8.alfresco.activiti.api;

import java.util.List;

import javax.ws.rs.WebApplicationException;
import javax.ws.rs.client.Client;
import javax.ws.rs.core.Response;
import javax.ws.rs.core.Response.Status.Family;

import com.inteligr8.alfresco.activiti.ExtendedResponse;
import com.inteligr8.alfresco.activiti.model.Tenant;

public class AdminAPI extends PathElement {

	private final Client client;
	
    public AdminAPI(EnterpriseAPI api) {
    	super(api, "admin");
    	this.client = api.getClient();
    }
    
    public List<Tenant> getTenants() {
    	Response response = this.client.target(this.getBaseUrl() + "/tenants")
	    		.request()
	    		.get();
    	if (!Family.SUCCESSFUL.equals(response.getStatusInfo().getFamily()))
    		throw new WebApplicationException(response);
    	return new ExtendedResponse(response).readArrayEntity(Tenant.class);
    }

}
Loading