Skip to content

Commit

Permalink
Merge branch 'payara6'
Browse files Browse the repository at this point in the history
  • Loading branch information
RKrahl committed Aug 14, 2023
2 parents 189062e + 382d1d7 commit 414f8f0
Show file tree
Hide file tree
Showing 23 changed files with 145 additions and 147 deletions.
18 changes: 7 additions & 11 deletions .github/workflows/ci-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,25 +8,18 @@ on:

jobs:
build_and_tests:
runs-on: ubuntu-20.04
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
include:
- version: 8
java_version: [11, 17]

steps:
# Setup Java & Python
- name: Setup Java
uses: actions/setup-java@3f07048e3d294f56e9b90ac5ea2c6f74e9ad0f98 # v3.10.0
with:
distribution: 'temurin'
java-version: ${{ matrix.version }}
- name: Setup Python
uses: actions/setup-python@d27e3f3d7c64b4bbf8e4abfb9b63b83e846e0435 # v4.5.0
with:
python-version: "3.9.7"
architecture: x64
java-version: ${{ matrix.java_version }}

- name: Cache local Maven repository
uses: actions/cache@69d9d449aced6a2ede0bc19182fadc3a0a42d2b0 # v3.2.6
Expand All @@ -36,13 +29,16 @@ jobs:
restore-keys: |
${{ runner.os }}-maven-
- name: Run apt-get update
run: sudo apt-get update

# ICAT Ansible clone and install dependencies
- name: Checkout icat-ansible
uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0
with:
repository: icatproject-contrib/icat-ansible
path: icat-ansible
ref: master
ref: payara6
- name: Install Ansible
run: pip install -r icat-ansible/requirements.txt

Expand Down
31 changes: 16 additions & 15 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@
<dependency>
<groupId>org.icatproject</groupId>
<artifactId>icat.client</artifactId>
<version>4.10.0</version>
<version>6.0.0</version>
</dependency>

<dependency>
Expand Down Expand Up @@ -102,9 +102,10 @@
</dependency>

<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>7.0</version>
<groupId>jakarta.platform</groupId>
<artifactId>jakarta.jakartaee-api</artifactId>
<version>10.0.0</version>
<scope>provided</scope>
</dependency>

<dependency>
Expand All @@ -114,15 +115,16 @@
</dependency>

<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.5</version>
<groupId>com.sun.xml.ws</groupId>
<artifactId>jaxws-rt</artifactId>
<version>4.0.0</version>
<scope>test</scope>
</dependency>

<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.json</artifactId>
<version>1.0.4</version>
<groupId>org.eclipse.parsson</groupId>
<artifactId>parsson</artifactId>
<version>1.1.0</version>
<scope>test</scope>
</dependency>

Expand Down Expand Up @@ -157,7 +159,7 @@
<plugin>
<groupId>com.qmino</groupId>
<artifactId>miredot-plugin</artifactId>
<version>1.6.2</version>
<version>2.4.1-Java11</version>
<executions>
<execution>
<id>miredot</id>
Expand Down Expand Up @@ -253,10 +255,9 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<version>3.10.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<release>11</release>
</configuration>
</plugin>

Expand Down Expand Up @@ -308,7 +309,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.0.0</version>
<version>3.4.0</version>
</plugin>

<plugin>
Expand Down
10 changes: 5 additions & 5 deletions src/main/java/org/icatproject/ids/CORSResponseFilter.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@

import java.io.IOException;

import javax.ws.rs.container.ContainerRequestContext;
import javax.ws.rs.container.ContainerResponseContext;
import javax.ws.rs.container.ContainerResponseFilter;
import javax.ws.rs.core.MultivaluedMap;
import javax.ws.rs.ext.Provider;
import jakarta.ws.rs.container.ContainerRequestContext;
import jakarta.ws.rs.container.ContainerResponseContext;
import jakarta.ws.rs.container.ContainerResponseFilter;
import jakarta.ws.rs.core.MultivaluedMap;
import jakarta.ws.rs.ext.Provider;

@Provider
public class CORSResponseFilter implements ContainerResponseFilter {
Expand Down
6 changes: 3 additions & 3 deletions src/main/java/org/icatproject/ids/DataSelection.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@
import java.util.Map;
import java.util.Set;

import javax.json.Json;
import javax.json.JsonArray;
import javax.json.JsonValue;
import jakarta.json.Json;
import jakarta.json.JsonArray;
import jakarta.json.JsonValue;

import org.icatproject.Datafile;
import org.icatproject.Dataset;
Expand Down
10 changes: 5 additions & 5 deletions src/main/java/org/icatproject/ids/FileChecker.java
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,11 @@
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.ejb.EJB;
import javax.ejb.Singleton;
import javax.ejb.Startup;
import jakarta.annotation.PostConstruct;
import jakarta.annotation.PreDestroy;
import jakarta.ejb.EJB;
import jakarta.ejb.Singleton;
import jakarta.ejb.Startup;

import org.icatproject.Datafile;
import org.icatproject.Dataset;
Expand Down
14 changes: 7 additions & 7 deletions src/main/java/org/icatproject/ids/FiniteStateMachine.java
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,13 @@
import java.util.UUID;
import java.util.concurrent.ConcurrentHashMap;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.ejb.DependsOn;
import javax.ejb.EJB;
import javax.ejb.Singleton;
import javax.json.Json;
import javax.json.stream.JsonGenerator;
import jakarta.annotation.PostConstruct;
import jakarta.annotation.PreDestroy;
import jakarta.ejb.DependsOn;
import jakarta.ejb.EJB;
import jakarta.ejb.Singleton;
import jakarta.json.Json;
import jakarta.json.stream.JsonGenerator;

import org.icatproject.Dataset;
import org.icatproject.ids.LockManager.Lock;
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/org/icatproject/ids/ICATGetter.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import java.net.MalformedURLException;
import java.net.URL;

import javax.xml.ws.WebServiceException;
import jakarta.xml.ws.WebServiceException;

import org.icatproject.ICAT;
import org.icatproject.ICATService;
Expand Down
4 changes: 2 additions & 2 deletions src/main/java/org/icatproject/ids/IcatReader.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@

import java.util.List;

import javax.annotation.PostConstruct;
import javax.ejb.Singleton;
import jakarta.annotation.PostConstruct;
import jakarta.ejb.Singleton;

import org.icatproject.EntityBaseBean;
import org.icatproject.ICAT;
Expand Down
22 changes: 11 additions & 11 deletions src/main/java/org/icatproject/ids/IdsBean.java
Original file line number Diff line number Diff line change
Expand Up @@ -40,17 +40,17 @@
import java.util.zip.ZipException;
import java.util.zip.ZipOutputStream;

import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.ejb.Stateless;
import javax.json.Json;
import javax.json.JsonNumber;
import javax.json.JsonObject;
import javax.json.JsonReader;
import javax.json.JsonValue;
import javax.json.stream.JsonGenerator;
import javax.ws.rs.core.Response;
import javax.ws.rs.core.StreamingOutput;
import jakarta.annotation.PostConstruct;
import jakarta.ejb.EJB;
import jakarta.ejb.Stateless;
import jakarta.json.Json;
import jakarta.json.JsonNumber;
import jakarta.json.JsonObject;
import jakarta.json.JsonReader;
import jakarta.json.JsonValue;
import jakarta.json.stream.JsonGenerator;
import jakarta.ws.rs.core.Response;
import jakarta.ws.rs.core.StreamingOutput;
import javax.xml.datatype.DatatypeFactory;

import org.icatproject.Datafile;
Expand Down
72 changes: 33 additions & 39 deletions src/main/java/org/icatproject/ids/IdsService.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,35 +3,33 @@
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.nio.charset.StandardCharsets;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.ejb.EJB;
import javax.ejb.Stateless;
import javax.json.Json;
import javax.json.stream.JsonGenerator;
import javax.servlet.http.HttpServletRequest;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.FormParam;
import javax.ws.rs.GET;
import javax.ws.rs.HeaderParam;
import javax.ws.rs.POST;
import javax.ws.rs.PUT;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;

import org.apache.commons.fileupload.FileItemIterator;
import org.apache.commons.fileupload.FileItemStream;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import org.apache.commons.fileupload.util.Streams;
import jakarta.annotation.PostConstruct;
import jakarta.annotation.PreDestroy;
import jakarta.ejb.EJB;
import jakarta.ejb.Stateless;
import jakarta.json.Json;
import jakarta.json.stream.JsonGenerator;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.Part;
import jakarta.ws.rs.Consumes;
import jakarta.ws.rs.DELETE;
import jakarta.ws.rs.FormParam;
import jakarta.ws.rs.GET;
import jakarta.ws.rs.HeaderParam;
import jakarta.ws.rs.POST;
import jakarta.ws.rs.PUT;
import jakarta.ws.rs.Path;
import jakarta.ws.rs.Produces;
import jakarta.ws.rs.QueryParam;
import jakarta.ws.rs.core.Context;
import jakarta.ws.rs.core.MediaType;
import jakarta.ws.rs.core.Response;

import org.icatproject.ids.exceptions.BadRequestException;
import org.icatproject.ids.exceptions.DataNotOnlineException;
import org.icatproject.ids.exceptions.InsufficientPrivilegesException;
Expand Down Expand Up @@ -652,11 +650,7 @@ public Response put(@Context HttpServletRequest request, InputStream body,
@Produces(MediaType.APPLICATION_JSON)
public Response putAsPost(@Context HttpServletRequest request) throws BadRequestException, NotFoundException,
InternalException, InsufficientPrivilegesException, NotImplementedException, DataNotOnlineException {
if (!ServletFileUpload.isMultipartContent(request)) {
throw new BadRequestException("Multipart content expected");
}
try {
ServletFileUpload upload = new ServletFileUpload();
String sessionId = null;
String name = null;
String datafileFormatId = null;
Expand All @@ -670,13 +664,11 @@ public Response putAsPost(@Context HttpServletRequest request) throws BadRequest
boolean padding = false;

// Parse the request
FileItemIterator iter = upload.getItemIterator(request);
while (iter.hasNext()) {
FileItemStream item = iter.next();
String fieldName = item.getFieldName();
InputStream stream = item.openStream();
if (item.isFormField()) {
String value = Streams.asString(stream);
for (Part part : request.getParts()) {
String fieldName = part.getName();
InputStream stream = part.getInputStream();
if (part.getSubmittedFileName() == null) {
String value = new String(stream.readAllBytes(), StandardCharsets.UTF_8);
if (fieldName.equals("sessionId")) {
sessionId = value;
} else if (fieldName.equals("name")) {
Expand All @@ -702,15 +694,17 @@ public Response putAsPost(@Context HttpServletRequest request) throws BadRequest
}
} else {
if (name == null) {
name = item.getName();
name = part.getSubmittedFileName();
}
result = idsBean.put(stream, sessionId, name, datafileFormatId, datasetId, description, doi,
datafileCreateTime, datafileModTime, wrap, padding, request.getRemoteAddr());
}
}
return result;
} catch (IOException | FileUploadException e) {
} catch (IOException e) {
throw new InternalException(e.getClass() + " " + e.getMessage());
} catch (ServletException e) {
throw new BadRequestException("Multipart content expected");
}
}

Expand Down
4 changes: 2 additions & 2 deletions src/main/java/org/icatproject/ids/LockManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import javax.annotation.PostConstruct;
import javax.ejb.Singleton;
import jakarta.annotation.PostConstruct;
import jakarta.ejb.Singleton;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
Expand Down
4 changes: 2 additions & 2 deletions src/main/java/org/icatproject/ids/PropertyHandler.java
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@
import java.util.Properties;
import java.util.Set;

import javax.json.Json;
import javax.json.JsonReader;
import jakarta.json.Json;
import jakarta.json.JsonReader;

import org.icatproject.ICAT;
import org.icatproject.IcatException_Exception;
Expand Down
10 changes: 5 additions & 5 deletions src/main/java/org/icatproject/ids/Tidier.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@
import java.util.Timer;
import java.util.TimerTask;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.ejb.EJB;
import javax.ejb.Singleton;
import javax.ejb.Startup;
import jakarta.annotation.PostConstruct;
import jakarta.annotation.PreDestroy;
import jakarta.ejb.EJB;
import jakarta.ejb.Singleton;
import jakarta.ejb.Startup;

import org.icatproject.Datafile;
import org.icatproject.Dataset;
Expand Down
Loading

0 comments on commit 414f8f0

Please sign in to comment.