Moving OA Soap Wrapper into current trunk version
git-svn-id: https://brutex.net/svn/xservices/trunk@192 e7e49efb-446e-492e-b9ec-fcafc1997a86master
parent
d24bd44218
commit
f0c1dce235
|
@ -0,0 +1,216 @@
|
|||
/*
|
||||
* Copyright 2017 Brian Rosenberger (Brutex Network)
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package net.brutex.xservices.ws;
|
||||
|
||||
import java.util.GregorianCalendar;
|
||||
import java.util.List;
|
||||
|
||||
import javax.jws.WebMethod;
|
||||
import javax.jws.WebParam;
|
||||
import javax.jws.WebService;
|
||||
import javax.jws.soap.SOAPBinding;
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
|
||||
import net.brutex.mgmt.api.xml.AnyEntity;
|
||||
import net.brutex.mgmt.api.xml.Customer;
|
||||
import net.brutex.mgmt.api.xml.Project;
|
||||
import net.brutex.mgmt.api.xml.TimesheetEntry;
|
||||
import net.brutex.mgmt.api.xml.TimesheetFilter;
|
||||
import net.brutex.mgmt.api.xml.User;
|
||||
import net.brutex.xservices.types.ant.AttachmentType;
|
||||
import net.brutex.xservices.util.BrutexNamespaces;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* OpenAir proxy services
|
||||
* @author Brian Rosenberger
|
||||
* @since 20160531
|
||||
*
|
||||
*/
|
||||
@WebService(targetNamespace = BrutexNamespaces.WS_XSERVICES)
|
||||
public interface OpenAirProxyService {
|
||||
|
||||
public static final String SERVICE_NAME = "OpenAirProxyService";
|
||||
final String OPERATION_GETTIMEENTRIES = "getTimeentries";
|
||||
final String OPERATION_GETEXCELTIMESHEET = "getExcelTimesheet";
|
||||
final String OPERATION_GETEXCELTIMESHEET2 = "getExcelTimesheet2";
|
||||
final String OPERATION_GETPROJECTBYEXTERNALID = "getProjectsByExternalId";
|
||||
final String OPERATION_GETPROJECTBYOPPID = "getProjectsByOppId";
|
||||
final String OPERATION_GETCUSTOMERBYID = "getCustomerById";
|
||||
final String OPERATION_GETUSERBYID = "getUserById";
|
||||
final String OPERATION_GETUSERBYUSERNAME = "getUserByUsername";
|
||||
final String OPERATION_GETANYOBJECT = "getAnyObject";
|
||||
final String OPERATION_GETUPDATEDCOMPANIES = "getUpdatedCustomer";
|
||||
final String OPERATION_GETUPDATEDPROJECTS = "getUpdatedProject";
|
||||
|
||||
|
||||
final String PARAM_PROJECTID = "oa_projectid";
|
||||
final String PARAM_CUSTOMERID = "oa_customerid";
|
||||
final String PARAM_USERID = "oa_userid";
|
||||
final String PARAM_USERNAME = "oa_username";
|
||||
final String PARAM_TEMPLATE ="template";
|
||||
final String PARAM_STARTDATE = "startdate";
|
||||
final String PARAM_ENDDATE = "enddate";
|
||||
final String PARAM_ENTRYLIST = "timeentries";
|
||||
final String PARAM_EXTERNALID = "externalid";
|
||||
final String PARAM_OPPID = "oppid";
|
||||
final String PARAM_INCLUDENONBILLABLE = "includeNonBillable";
|
||||
final String PARAM_OBJECTTYPE = "objecttype";
|
||||
final String PARAM_QUERIES = "queries";
|
||||
final String PARAM_DATE = "datetime";
|
||||
final String PARAM_OFFSET = "offset_minutes";
|
||||
final String PARAM_TIMESHEETSTATUS = "timesheetstatus";
|
||||
|
||||
/**
|
||||
* Get a list of time entries.
|
||||
*
|
||||
* @return List of time entries
|
||||
* @throws XServicesFault
|
||||
*/
|
||||
@WebMethod(operationName=OPERATION_GETTIMEENTRIES)
|
||||
@WSDLDocumentation(value="Get list of time entries")
|
||||
public abstract List<TimesheetEntry> getTimeEntryList(
|
||||
@WebParam(name=PARAM_PROJECTID) int oa_projectid,
|
||||
@WebParam(name=PARAM_CUSTOMERID) int oa_customerid,
|
||||
@WebParam(name=PARAM_USERID) int oa_userid,
|
||||
@WebParam(name=PARAM_STARTDATE) GregorianCalendar startdate,
|
||||
@WebParam(name=PARAM_ENDDATE) GregorianCalendar enddate,
|
||||
@WebParam(name=PARAM_INCLUDENONBILLABLE) boolean includeNonBillable,
|
||||
@WebParam(name=PARAM_TIMESHEETSTATUS) java.util.List<TimesheetFilter.TimesheetFilterType> filter)
|
||||
throws XServicesFault;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Get an excel time sheet file.
|
||||
*
|
||||
* @return List of time entries
|
||||
* @throws XServicesFault
|
||||
*/
|
||||
@WebMethod(operationName=OPERATION_GETEXCELTIMESHEET)
|
||||
@WSDLDocumentation(value="Get an excel time sheet file.")
|
||||
public abstract AttachmentType getExcelTimesheet(
|
||||
@WebParam(name=PARAM_PROJECTID) int oa_projectid,
|
||||
@WebParam(name=PARAM_CUSTOMERID) int oa_customerid,
|
||||
@WebParam(name=PARAM_USERID) int oa_userid,
|
||||
@WebParam(name=PARAM_STARTDATE) GregorianCalendar startdate,
|
||||
@WebParam(name=PARAM_ENDDATE) GregorianCalendar enddate,
|
||||
@WebParam(name=PARAM_INCLUDENONBILLABLE) boolean includeNonBillable,
|
||||
@WebParam(name=PARAM_TIMESHEETSTATUS) java.util.List<TimesheetFilter.TimesheetFilterType> filter,
|
||||
@WebParam(name=PARAM_TEMPLATE) AttachmentType templatefile) throws XServicesFault;
|
||||
|
||||
/**
|
||||
* Get an excel time sheet file.
|
||||
*
|
||||
* @return List of time entries
|
||||
* @throws XServicesFault
|
||||
*/
|
||||
@WebMethod(operationName=OPERATION_GETEXCELTIMESHEET2)
|
||||
@WSDLDocumentation(value="Get an excel time sheet file.")
|
||||
public abstract AttachmentType getExcelTimesheet2(
|
||||
@WebParam(name=PARAM_ENTRYLIST) List<TimesheetEntry> entries,
|
||||
@WebParam(name=PARAM_INCLUDENONBILLABLE) boolean includeNonBillable,
|
||||
@WebParam(name=PARAM_TEMPLATE) AttachmentType templatefile) throws XServicesFault;
|
||||
|
||||
|
||||
/**
|
||||
* Get a project from External Id
|
||||
*
|
||||
* @return List of projects with this ExternalId
|
||||
* @throws XServicesFault
|
||||
*/
|
||||
@WebMethod(operationName=OPERATION_GETPROJECTBYEXTERNALID)
|
||||
@WSDLDocumentation(value="Get a project from External Id")
|
||||
public abstract List<Project> getProjectsByExternalId(
|
||||
@WebParam(name=PARAM_EXTERNALID) String externalid) throws XServicesFault;
|
||||
|
||||
/**
|
||||
* Get a project from Opportunity
|
||||
*
|
||||
* @return List of projects with this Opportunity
|
||||
* @throws XServicesFault
|
||||
*/
|
||||
@WebMethod(operationName=OPERATION_GETPROJECTBYOPPID)
|
||||
@WSDLDocumentation(value="Get a project from Opportunity Id")
|
||||
public abstract List<Project> getProjectsByOppId(
|
||||
@WebParam(name=PARAM_OPPID) String oppid) throws XServicesFault;
|
||||
|
||||
/**
|
||||
* Get a customer by its ID
|
||||
*
|
||||
* @return Customer object
|
||||
* @throws XServicesFault
|
||||
*/
|
||||
@WebMethod(operationName=OPERATION_GETCUSTOMERBYID)
|
||||
@WSDLDocumentation(value="Get a customer by its Id")
|
||||
public abstract Customer getCustomerById(
|
||||
@WebParam(name=PARAM_CUSTOMERID) int customerid) throws XServicesFault;
|
||||
|
||||
/**
|
||||
* Get a user record by its ID
|
||||
*
|
||||
* @return user object
|
||||
* @throws XServicesFault
|
||||
*/
|
||||
@WebMethod(operationName=OPERATION_GETUSERBYID)
|
||||
@WSDLDocumentation(value="Get a user by its Id")
|
||||
public abstract User getUserById(
|
||||
@WebParam(name=PARAM_USERID) int userid) throws XServicesFault;
|
||||
|
||||
|
||||
/**
|
||||
* Get a user record by its username
|
||||
*
|
||||
* @return user object
|
||||
* @throws XServicesFault
|
||||
*/
|
||||
@WebMethod(operationName=OPERATION_GETUSERBYUSERNAME)
|
||||
@WSDLDocumentation(value="Get a user by its username")
|
||||
public abstract User getUserByUsername(
|
||||
@WebParam(name=PARAM_USERNAME) String username) throws XServicesFault;
|
||||
|
||||
@WebMethod(operationName=OPERATION_GETANYOBJECT)
|
||||
@WSDLDocumentation(value="Get any Object by Query")
|
||||
public abstract List<AnyEntity> getAnyObject(
|
||||
@WebParam(name=PARAM_OBJECTTYPE) @XmlElement(required=true) String objecttype,
|
||||
@WebParam(name=PARAM_QUERIES) List<QueryParameter> queries) throws XServicesFault;
|
||||
|
||||
|
||||
@WebMethod(operationName=OPERATION_GETUPDATEDCOMPANIES)
|
||||
@WSDLDocumentation(value="Get updated customers")
|
||||
public abstract List<Customer> getUpdatedCustomer(
|
||||
@WebParam(name=PARAM_DATE) @XmlElement(required=true) GregorianCalendar date,
|
||||
@WebParam(name=PARAM_OFFSET) @XmlElement(required=true) int offset)
|
||||
throws XServicesFault;
|
||||
|
||||
@WebMethod(operationName=OPERATION_GETUPDATEDPROJECTS)
|
||||
@WSDLDocumentation(value="Get updated projects")
|
||||
|
||||
public abstract List<Project> getUpdatedProjects(
|
||||
@WebParam(name=PARAM_DATE) @XmlElement(required=true) GregorianCalendar date,
|
||||
@WebParam(name=PARAM_OFFSET) @XmlElement(required=true) int offset)
|
||||
throws XServicesFault;
|
||||
|
||||
|
||||
public class QueryParameter {
|
||||
@XmlElement(required=true)
|
||||
public String field;
|
||||
@XmlElement(required=true)
|
||||
public String value;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue