1313import com .google .api .client .http .HttpTransport ;
1414import com .xero .api .ApiClient ;
1515import com .xero .api .XeroApiExceptionHandler ;
16+ import com .xero .models .project .ChargeType ;
1617import com .xero .models .project .Project ;
1718import com .xero .models .project .ProjectCreateOrUpdate ;
1819import com .xero .models .project .ProjectPatch ;
@@ -41,7 +42,7 @@ public class ProjectApi {
4142 private ApiClient apiClient ;
4243 private static ProjectApi instance = null ;
4344 private String userAgent = "Default" ;
44- private String version = "4.3.3 " ;
45+ private String version = "4.3.4 " ;
4546 static final Logger logger = LoggerFactory .getLogger (ProjectApi .class );
4647
4748 public ProjectApi () {
@@ -752,6 +753,7 @@ public HttpResponse getTaskForHttpResponse(
752753 * a paged response - Must be a number between 1 and 500.
753754 * @param taskIds taskIdsSearch for all tasks that match a comma separated list of taskIds, i.e.
754755 * GET https://.../tasks?taskIds={taskId},{taskId}
756+ * @param chargeType The chargeType parameter
755757 * @param accessToken Authorization token for user set in header of each request
756758 * @return Tasks
757759 * @throws IOException if an error occurs while attempting to invoke the API
@@ -762,12 +764,14 @@ public Tasks getTasks(
762764 UUID projectId ,
763765 Integer page ,
764766 Integer pageSize ,
765- String taskIds )
767+ String taskIds ,
768+ ChargeType chargeType )
766769 throws IOException {
767770 try {
768771 TypeReference <Tasks > typeRef = new TypeReference <Tasks >() {};
769772 HttpResponse response =
770- getTasksForHttpResponse (accessToken , xeroTenantId , projectId , page , pageSize , taskIds );
773+ getTasksForHttpResponse (
774+ accessToken , xeroTenantId , projectId , page , pageSize , taskIds , chargeType );
771775 return apiClient .getObjectMapper ().readValue (response .getContent (), typeRef );
772776 } catch (HttpResponseException e ) {
773777 if (logger .isDebugEnabled ()) {
@@ -791,7 +795,8 @@ public HttpResponse getTasksForHttpResponse(
791795 UUID projectId ,
792796 Integer page ,
793797 Integer pageSize ,
794- String taskIds )
798+ String taskIds ,
799+ ChargeType chargeType )
795800 throws IOException {
796801 // verify the required parameter 'xeroTenantId' is set
797802 if (xeroTenantId == null ) {
@@ -849,6 +854,17 @@ public HttpResponse getTasksForHttpResponse(
849854 uriBuilder = uriBuilder .queryParam (key , value );
850855 }
851856 }
857+ if (chargeType != null ) {
858+ String key = "chargeType" ;
859+ Object value = chargeType ;
860+ if (value instanceof Collection ) {
861+ uriBuilder = uriBuilder .queryParam (key , ((Collection ) value ).toArray ());
862+ } else if (value instanceof Object []) {
863+ uriBuilder = uriBuilder .queryParam (key , (Object []) value );
864+ } else {
865+ uriBuilder = uriBuilder .queryParam (key , value );
866+ }
867+ }
852868 String url = uriBuilder .buildFromMap (uriVariables ).toString ();
853869 GenericUrl genericUrl = new GenericUrl (url );
854870 if (logger .isDebugEnabled ()) {
0 commit comments