use of io.grafeas.v1.Occurrence in project java-containeranalysis by googleapis.
the class GrafeasV1Beta1ClientTest method batchCreateOccurrencesExceptionTest.
@Test
@SuppressWarnings("all")
public void batchCreateOccurrencesExceptionTest() throws Exception {
StatusRuntimeException exception = new StatusRuntimeException(Status.INVALID_ARGUMENT);
mockGrafeasV1Beta1.addException(exception);
try {
ProjectName parent = ProjectName.of("[PROJECT]");
List<Occurrence> occurrences = new ArrayList<>();
client.batchCreateOccurrences(parent, occurrences);
Assert.fail("No exception raised");
} catch (InvalidArgumentException e) {
// Expected exception
}
}
use of io.grafeas.v1.Occurrence in project java-containeranalysis by googleapis.
the class GrafeasV1Beta1ClientTest method listOccurrencesTest.
@Test
@SuppressWarnings("all")
public void listOccurrencesTest() {
String nextPageToken = "";
Occurrence occurrencesElement = Occurrence.newBuilder().build();
List<Occurrence> occurrences = Arrays.asList(occurrencesElement);
ListOccurrencesResponse expectedResponse = ListOccurrencesResponse.newBuilder().setNextPageToken(nextPageToken).addAllOccurrences(occurrences).build();
mockGrafeasV1Beta1.addResponse(expectedResponse);
ProjectName parent = ProjectName.of("[PROJECT]");
String filter = "filter-1274492040";
ListOccurrencesPagedResponse pagedListResponse = client.listOccurrences(parent, filter);
List<Occurrence> resources = Lists.newArrayList(pagedListResponse.iterateAll());
Assert.assertEquals(1, resources.size());
Assert.assertEquals(expectedResponse.getOccurrencesList().get(0), resources.get(0));
List<AbstractMessage> actualRequests = mockGrafeasV1Beta1.getRequests();
Assert.assertEquals(1, actualRequests.size());
ListOccurrencesRequest actualRequest = (ListOccurrencesRequest) actualRequests.get(0);
Assert.assertEquals(parent, ProjectName.parse(actualRequest.getParent()));
Assert.assertEquals(filter, actualRequest.getFilter());
Assert.assertTrue(channelProvider.isHeaderSent(ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
}
use of io.grafeas.v1.Occurrence in project java-containeranalysis by googleapis.
the class GrafeasV1Beta1ClientTest method createOccurrenceTest.
@Test
@SuppressWarnings("all")
public void createOccurrenceTest() {
String name = "name3373707";
String noteName = "noteName1780787896";
String remediation = "remediation779381797";
Occurrence expectedResponse = Occurrence.newBuilder().setName(name).setNoteName(noteName).setRemediation(remediation).build();
mockGrafeasV1Beta1.addResponse(expectedResponse);
ProjectName parent = ProjectName.of("[PROJECT]");
Occurrence occurrence = Occurrence.newBuilder().build();
Occurrence actualResponse = client.createOccurrence(parent, occurrence);
Assert.assertEquals(expectedResponse, actualResponse);
List<AbstractMessage> actualRequests = mockGrafeasV1Beta1.getRequests();
Assert.assertEquals(1, actualRequests.size());
CreateOccurrenceRequest actualRequest = (CreateOccurrenceRequest) actualRequests.get(0);
Assert.assertEquals(parent, ProjectName.parse(actualRequest.getParent()));
Assert.assertEquals(occurrence, actualRequest.getOccurrence());
Assert.assertTrue(channelProvider.isHeaderSent(ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
}
use of io.grafeas.v1.Occurrence in project java-docs-samples by GoogleCloudPlatform.
the class Samples method createOccurrence.
// [END create_note]
// [START create_occurrence]
/**
* Creates and returns a new occurrence
*
* @param imageUrl the Container Registry URL associated with the image
* example: "https://gcr.io/project/image@sha256:foo"
* @param parentNoteId the identifier of the note associated with this occurrence
* @param projectId the GCP project the occurrence will be created under
* @return an Occurrence object representing the new occurrence
* @throws Exception on errors while closing the client
*/
public static Occurrence createOccurrence(String imageUrl, String parentNoteId, String projectId) throws Exception {
try (ContainerAnalysisClient client = ContainerAnalysisClient.create()) {
final String parentNoteName = client.formatNoteName(projectId, parentNoteId);
final String projectName = client.formatProjectName(projectId);
Occurrence.Builder occBuilder = Occurrence.newBuilder();
occBuilder.setNoteName(parentNoteName);
occBuilder.setResourceUrl(imageUrl);
VulnerabilityDetails vd = VulnerabilityType.VulnerabilityDetails.newBuilder().build();
occBuilder.setVulnerabilityDetails(vd);
Occurrence newOcc = occBuilder.build();
return client.createOccurrence(projectName, newOcc);
}
}
use of io.grafeas.v1.Occurrence in project java-docs-samples by GoogleCloudPlatform.
the class Samples method getDiscoveryInfo.
// [END get_note]
// [START discovery_info]
/**
* Retrieves the Discovery occurrence created for a specified image
* This occurrence contains information about the initial scan on the image
*
* @param imageUrl the Container Registry URL associated with the image
* example: "https://gcr.io/project/image@sha256:foo"
* @param projectId the GCP project the occurrence will be created under
* @throws Exception on errors while closing the client
*/
public static void getDiscoveryInfo(String imageUrl, String projectId) throws Exception {
String filterStr = "kind=\"DISCOVERY\" AND resourceUrl=\"" + imageUrl + "\"";
try (ContainerAnalysisClient client = ContainerAnalysisClient.create()) {
final String projectName = client.formatProjectName(projectId);
ListOccurrencesRequest.Builder req = ListOccurrencesRequest.newBuilder();
req.setFilter(filterStr).setParent(projectName);
ListOccurrencesPagedResponse response = client.listOccurrences(req.build());
for (Occurrence o : response.iterateAll()) {
System.out.println(o);
}
}
}
Aggregations