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> <type>pom</type>
<scope>import</scope> <scope>import</scope>
</dependency> </dependency>
<!-- https://mvnrepository.com/artifact/org.json/json --> <!-- https://mvnrepository.com/artifact/org.json/json -->
<!-- https://mvnrepository.com/artifact/org.json/json --> <!-- https://mvnrepository.com/artifact/org.json/json -->
@ -49,6 +50,10 @@
</dependencies> </dependencies>
</dependencyManagement> </dependencyManagement>
<dependencies> <dependencies>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-openshift</artifactId>
</dependency>
<dependency> <dependency>
<groupId>org.json</groupId> <groupId>org.json</groupId>
<artifactId>json</artifactId> <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.eclipse.microprofile.config.ConfigProvider;
// // import org.jboss.pnc.api.deliverablesanalyzer.dto.AnalyzePayload; // import org.jboss.pnc.api.deliverablesanalyzer.dto.AnalyzePayload;
// import org.jboss.pnc.api.dto.HeartbeatConfig; // import org.jboss.pnc.api.dto.HeartbeatConfig;
// import org.jboss.pnc.api.dto.Request; // import org.jboss.pnc.api.dto.Request;
// import java.net.URI; import java.net.URI;
// import java.net.URISyntaxException; import java.net.URISyntaxException;
// import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
// import java.sql.Struct; import java.sql.Struct;
// import java.util.*; import java.util.*;
// import static constants.HttpHeaders.AUTHORIZATION_STRING; import org.json.JSONObject;
import org.json.JSONArray;
// public class ScanObjPayload () { import static constants.HttpHeaders.AUTHORIZATION_STRING;
// private static ScanObj constructScanPayload(List<String> urls) throws URISyntaxException {
// String operationId = UUID.randomUUID().toString(); public class ScanObjPayload {
// List<Request.Header> headers = new ArrayList<>(Arrays.asList(new Request.Header(AUTHORIZATION_STRING, getEncodedCredentials()))); public static ScanObj constructScanPayload(JSONObject scanObj) throws URISyntaxException {
// Request callbackRequest = new Request(Request.Method.PUT, new URI(COUCHDB_DATABASE_URL + "/" + COUCHDB_DATABASE_NAME + "/" + operationId), headers); 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"));
// return new AnalyzePayload(operationId, urls, null, callbackRequest, null); }
// } }
// }

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

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

Loading…
Cancel
Save