Search in sources :

Example 11 with NotificationCategoryEnum

use of com.blackducksoftware.integration.hub.notification.NotificationCategoryEnum in project hub-alert by blackducksoftware.

the class SlackChannelTestIT method createSlackProjectData.

private ProjectData createSlackProjectData() {
    final Map<NotificationCategoryEnum, CategoryData> categoryMap = new HashMap<>();
    categoryMap.put(NotificationCategoryEnum.HIGH_VULNERABILITY, createCategoryData());
    final ProjectData projectData = new ProjectData(DigestTypeEnum.DAILY, "Slack", "1", null, categoryMap);
    return projectData;
}
Also used : CategoryData(com.blackducksoftware.integration.hub.alert.digest.model.CategoryData) HashMap(java.util.HashMap) NotificationCategoryEnum(com.blackducksoftware.integration.hub.notification.NotificationCategoryEnum) ProjectData(com.blackducksoftware.integration.hub.alert.digest.model.ProjectData)

Example 12 with NotificationCategoryEnum

use of com.blackducksoftware.integration.hub.notification.NotificationCategoryEnum in project hub-alert by blackducksoftware.

the class ChannelTest method createProjectData.

public ProjectData createProjectData(final String testName) {
    final HashMap<NotificationCategoryEnum, CategoryData> categoryMap = new HashMap<>();
    categoryMap.put(NotificationCategoryEnum.POLICY_VIOLATION, createMockPolicyViolation());
    categoryMap.put(NotificationCategoryEnum.MEDIUM_VULNERABILITY, createMockVulnerability());
    final ProjectData projectData = new ProjectData(DigestTypeEnum.REAL_TIME, testName, testName + " Version", Collections.emptyList(), categoryMap);
    return projectData;
}
Also used : CategoryData(com.blackducksoftware.integration.hub.alert.digest.model.CategoryData) HashMap(java.util.HashMap) NotificationCategoryEnum(com.blackducksoftware.integration.hub.notification.NotificationCategoryEnum) ProjectData(com.blackducksoftware.integration.hub.alert.digest.model.ProjectData)

Example 13 with NotificationCategoryEnum

use of com.blackducksoftware.integration.hub.notification.NotificationCategoryEnum in project hub-alert by blackducksoftware.

the class NotificationModelTest method createNotificationEntity.

private NotificationEntity createNotificationEntity() {
    final String eventKey = "event_key_for_notification";
    final Date createdAt = Date.from(LocalDateTime.now().toInstant(ZoneOffset.UTC));
    final NotificationCategoryEnum notificationType = NotificationCategoryEnum.VULNERABILITY;
    final String projectName = "projectName";
    final String projectVersion = "projectVersion";
    final String componentName = "componentName";
    final String componentVersion = "componentVersion";
    final String policyRuleName = "policyRuleName";
    final String person = "person";
    final String projectUrl = "projectURL";
    final String projectVersionUrl = "projectVersionUrl";
    final NotificationEntity entity = new NotificationEntity(eventKey, createdAt, notificationType, projectName, projectUrl, projectVersion, projectVersionUrl, componentName, componentVersion, policyRuleName, person);
    return entity;
}
Also used : NotificationCategoryEnum(com.blackducksoftware.integration.hub.notification.NotificationCategoryEnum) NotificationEntity(com.blackducksoftware.integration.hub.alert.datasource.entity.NotificationEntity) Date(java.util.Date)

Example 14 with NotificationCategoryEnum

use of com.blackducksoftware.integration.hub.notification.NotificationCategoryEnum in project hub-alert by blackducksoftware.

the class PurgeJobIT method testWriterWithData.

@Test
public void testWriterWithData() throws Exception {
    final List<NotificationModel> entityList = new ArrayList<>();
    final String eventKey = "eventKey";
    final NotificationCategoryEnum notificationType = NotificationCategoryEnum.VULNERABILITY;
    final String projectName = "ProjectName";
    final String projectUrl = "ProjectUrl";
    final String projectVersion = "ProjectVersion";
    final String projectVersionUrl = "ProjectVersionUrl";
    final String componentName = "ComponentName";
    final String componentVersion = "ComponentVersion";
    final String policyRuleName = "PolicyRuleName";
    final String person = "PolicyPerson";
    final Collection<VulnerabilityEntity> vulnerabilityList = null;
    ZonedDateTime zonedDateTime = ZonedDateTime.now().withZoneSameInstant(ZoneOffset.UTC);
    zonedDateTime = zonedDateTime.minusDays(1);
    Date createdAt = Date.from(zonedDateTime.toInstant());
    NotificationEntity notification = new NotificationEntity(eventKey, createdAt, notificationType, projectName, projectUrl, projectVersion, projectVersionUrl, componentName, componentVersion, policyRuleName, person);
    notificationRepository.save(notification);
    entityList.add(new NotificationModel(notification, vulnerabilityList));
    zonedDateTime = ZonedDateTime.now().withZoneSameInstant(ZoneOffset.UTC);
    zonedDateTime = zonedDateTime.minusDays(3);
    createdAt = Date.from(zonedDateTime.toInstant());
    notification = new NotificationEntity(eventKey, createdAt, notificationType, projectName, projectUrl, projectVersion, projectVersionUrl, componentName, componentVersion, policyRuleName, person);
    notificationRepository.save(notification);
    entityList.add(new NotificationModel(notification, vulnerabilityList));
    zonedDateTime = ZonedDateTime.now().withZoneSameInstant(ZoneOffset.UTC);
    zonedDateTime = zonedDateTime.plusDays(1);
    createdAt = Date.from(zonedDateTime.toInstant());
    notification = new NotificationEntity(eventKey, createdAt, notificationType, projectName, projectUrl, projectVersion, projectVersionUrl, componentName, componentVersion, policyRuleName, person);
    notificationRepository.save(notification);
    entityList.add(new NotificationModel(notification, vulnerabilityList));
    assertEquals(3, notificationRepository.count());
    final List<List<NotificationModel>> itemList = new ArrayList<>();
    itemList.add(entityList);
    final PurgeWriter writer = purgeConfig.writer();
    writer.write(itemList);
    assertEquals(0, notificationRepository.count());
}
Also used : ArrayList(java.util.ArrayList) NotificationModel(com.blackducksoftware.integration.hub.alert.hub.model.NotificationModel) VulnerabilityEntity(com.blackducksoftware.integration.hub.alert.datasource.entity.VulnerabilityEntity) Date(java.util.Date) ZonedDateTime(java.time.ZonedDateTime) NotificationCategoryEnum(com.blackducksoftware.integration.hub.notification.NotificationCategoryEnum) ArrayList(java.util.ArrayList) List(java.util.List) NotificationEntity(com.blackducksoftware.integration.hub.alert.datasource.entity.NotificationEntity) DatabaseConnectionTest(com.blackducksoftware.integration.test.annotation.DatabaseConnectionTest) Test(org.junit.Test)

Example 15 with NotificationCategoryEnum

use of com.blackducksoftware.integration.hub.notification.NotificationCategoryEnum in project hub-alert by blackducksoftware.

the class ProjectDataFactoryTest method createPolicyNotification.

private NotificationModel createPolicyNotification(final String projectName, final String projectVersion) {
    final String eventKey = "key";
    final Date createdAt = new Date();
    final NotificationCategoryEnum notificationType = NotificationCategoryEnum.POLICY_VIOLATION;
    final String projectUrl = "http://localhost:8080";
    final String projectVersionUrl = "http://localhost:8080";
    final String componentName = "Other Component";
    final String componentVersion = "Other Component Version";
    final String policyRuleName = "Policy Rule Name";
    final String person = "Person";
    final String vulnerabilityId = NotificationCategoryEnum.VULNERABILITY.name();
    final VulnerabilityOperationEnum vulnerabilityOperation = VulnerabilityOperationEnum.ADD;
    final NotificationEntity notification = new NotificationEntity(eventKey, createdAt, notificationType, projectName, projectUrl, projectVersion, projectVersionUrl, componentName, componentVersion, policyRuleName, person);
    notification.setId(1L);
    final Collection<VulnerabilityEntity> vulnerabilityList = Arrays.asList(new VulnerabilityEntity(vulnerabilityId, vulnerabilityOperation, notification.getId()));
    return new NotificationModel(notification, vulnerabilityList);
}
Also used : NotificationCategoryEnum(com.blackducksoftware.integration.hub.notification.NotificationCategoryEnum) VulnerabilityOperationEnum(com.blackducksoftware.integration.hub.alert.enumeration.VulnerabilityOperationEnum) VulnerabilityEntity(com.blackducksoftware.integration.hub.alert.datasource.entity.VulnerabilityEntity) NotificationModel(com.blackducksoftware.integration.hub.alert.hub.model.NotificationModel) NotificationEntity(com.blackducksoftware.integration.hub.alert.datasource.entity.NotificationEntity) Date(java.util.Date)

Aggregations

NotificationCategoryEnum (com.blackducksoftware.integration.hub.notification.NotificationCategoryEnum)19 NotificationEntity (com.blackducksoftware.integration.hub.alert.datasource.entity.NotificationEntity)8 Date (java.util.Date)6 HashMap (java.util.HashMap)6 VulnerabilityEntity (com.blackducksoftware.integration.hub.alert.datasource.entity.VulnerabilityEntity)5 NotificationModel (com.blackducksoftware.integration.hub.alert.hub.model.NotificationModel)5 CategoryData (com.blackducksoftware.integration.hub.alert.digest.model.CategoryData)4 NotificationEvent (com.blackducksoftware.integration.hub.notification.NotificationEvent)4 ArrayList (java.util.ArrayList)4 Test (org.junit.Test)4 ProjectData (com.blackducksoftware.integration.hub.alert.digest.model.ProjectData)3 VulnerabilityOperationEnum (com.blackducksoftware.integration.hub.alert.enumeration.VulnerabilityOperationEnum)3 DatabaseConnectionTest (com.blackducksoftware.integration.test.annotation.DatabaseConnectionTest)3 HashSet (java.util.HashSet)3 Set (java.util.Set)3 NotificationTypeEntity (com.blackducksoftware.integration.hub.alert.datasource.entity.NotificationTypeEntity)2 DistributionNotificationTypeRelation (com.blackducksoftware.integration.hub.alert.datasource.relation.DistributionNotificationTypeRelation)2 NotificationContentItem (com.blackducksoftware.integration.hub.notification.NotificationContentItem)2 ZonedDateTime (java.time.ZonedDateTime)2 NotificationManager (com.blackducksoftware.integration.hub.alert.NotificationManager)1