Browse Source

added the fix for the post request so works as intended and added a link for the working google docs

exception_work
Nicholas Caughey 3 years ago
parent
commit
7fd4c54b30
  1. 3
      Google Docs link.txt
  2. 51
      README copy.md
  3. 5
      pom.xml
  4. 34
      src/main/java/dto/ScanObjPayload.java
  5. 6
      src/main/java/rest/CreateScanResource.java

3
Google Docs link.txt

@ -0,0 +1,3 @@
https://docs.google.com/document/d/15yod6K_ZbNkJ_ern7gwpxjBkdJIlHXORfYZ3CGQhnEM/edit?usp=sharing
This is the Document link for the working design Docs for the API

51
README copy.md

@ -1,51 +0,0 @@
# rest-json-quickstart
This project uses Quarkus, the Supersonic Subatomic Java Framework.
If you want to learn more about Quarkus, please visit its website: https://quarkus.io/ .
## Running the application in dev mode
You can run your application in dev mode that enables live coding using:
```shell script
./mvnw compile quarkus:dev
```
> **_NOTE:_** Quarkus now ships with a Dev UI, which is available in dev mode only at http://localhost:8080/q/dev/.
## Packaging and running the application
The application can be packaged using:
```shell script
./mvnw package
```
It produces the `quarkus-run.jar` file in the `target/quarkus-app/` directory.
Be aware that it’s not an _über-jar_ as the dependencies are copied into the `target/quarkus-app/lib/` directory.
The application is now runnable using `java -jar target/quarkus-app/quarkus-run.jar`.
If you want to build an _über-jar_, execute the following command:
```shell script
./mvnw package -Dquarkus.package.type=uber-jar
```
The application, packaged as an _über-jar_, is now runnable using `java -jar target/*-runner.jar`.
## Creating a native executable
You can create a native executable using:
```shell script
./mvnw package -Pnative
```
Or, if you don't have GraalVM installed, you can run the native executable build in a container using:
```shell script
./mvnw package -Pnative -Dquarkus.native.container-build=true
```
You can then execute your native executable with: `./target/rest-json-quickstart-1.0.0-SNAPSHOT-runner`
If you want to learn more about building native executables, please consult https://quarkus.io/guides/maven-tooling.
## Related Guides

5
pom.xml

@ -33,6 +33,7 @@
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.json/json -->
<!-- https://mvnrepository.com/artifact/org.json/json -->
@ -49,6 +50,10 @@
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-openshift</artifactId>
</dependency>
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>

34
src/main/java/dto/ScanObjPayload.java

@ -1,23 +1,23 @@
// package dto;
package dto;
// import org.eclipse.microprofile.config.ConfigProvider;
// // import org.jboss.pnc.api.deliverablesanalyzer.dto.AnalyzePayload;
import org.eclipse.microprofile.config.ConfigProvider;
// import org.jboss.pnc.api.deliverablesanalyzer.dto.AnalyzePayload;
// import org.jboss.pnc.api.dto.HeartbeatConfig;
// import org.jboss.pnc.api.dto.Request;
// import java.net.URI;
// import java.net.URISyntaxException;
// import java.nio.charset.StandardCharsets;
// import java.sql.Struct;
// import java.util.*;
import java.net.URI;
import java.net.URISyntaxException;
import java.nio.charset.StandardCharsets;
import java.sql.Struct;
import java.util.*;
// import static constants.HttpHeaders.AUTHORIZATION_STRING;
import org.json.JSONObject;
import org.json.JSONArray;
// public class ScanObjPayload () {
// private static ScanObj constructScanPayload(List<String> urls) throws URISyntaxException {
// String operationId = UUID.randomUUID().toString();
// List<Request.Header> headers = new ArrayList<>(Arrays.asList(new Request.Header(AUTHORIZATION_STRING, getEncodedCredentials())));
// Request callbackRequest = new Request(Request.Method.PUT, new URI(COUCHDB_DATABASE_URL + "/" + COUCHDB_DATABASE_NAME + "/" + operationId), headers);
// return new AnalyzePayload(operationId, urls, null, callbackRequest, null);
// }
// }
import static constants.HttpHeaders.AUTHORIZATION_STRING;
public class ScanObjPayload {
public static ScanObj constructScanPayload(JSONObject scanObj) throws URISyntaxException {
return new ScanObj(scanObj.getString("hub"),scanObj.getString("source"),scanObj.getString("username"),scanObj.getString("password"),scanObj.getString("scanUrl"),scanObj.getString("scanId"),scanObj.getString("advisoryId"),scanObj.getString("owner"),scanObj.getString("release"),scanObj.getString("base"));
}
}

6
src/main/java/rest/CreateScanResource.java

@ -17,6 +17,8 @@ import java.util.UUID;
import org.json.JSONObject;
import org.json.JSONArray;
import dto.ScanObjPayload;
import static constants.HttpHeaders.AUTHORIZATION_STRING;
@Path("/createScan")
@ -25,6 +27,7 @@ public class CreateScanResource {
// @Inject
@RestClient
CreateScanService createScanService;
// ScanObjPayload scanObjPayload;
@POST
@Consumes({ "application/json" })
@ -34,9 +37,8 @@ public class CreateScanResource {
//weird work around is currently being fixed
JSONObject jsonData = new JSONObject(scanInvocation);
System.out.println(jsonData);
String [] workAround = scanInvocation.split("\n");
//ignore all of this, temporary for testing purposes, "parser" will be in ScanObjPayload
ScanObj scanObj = new ScanObj(jsonData.getString("hub"),jsonData.getString("source"),jsonData.getString("username"),jsonData.getString("password"),jsonData.getString("scanUrl"),jsonData.getString("scanId"),jsonData.getString("advisoryId"),jsonData.getString("owner"),jsonData.getString("release"),jsonData.getString("base"));
ScanObj scanObj = ScanObjPayload.constructScanPayload(jsonData);
return scanObj;
}
}

Loading…
Cancel
Save