RoleValidatorByOwningEntity permits by PermissionPropertiesOwningEntity
[vid.git] / vid-app-common / src / main / java / org / onap / vid / roles / PermissionProperties.kt
1 package org.onap.vid.roles
2
3 import org.onap.vid.aai.ServiceSubscription
4
5
6 interface WithPermissionProperties
7
8 interface WithPermissionPropertiesSubscriberAndServiceType: WithPermissionProperties {
9     val subscriberId: String?
10     val serviceType: String?
11 }
12
13 interface WithPermissionPropertiesOwningEntity: WithPermissionProperties {
14     val owningEntityId: String?
15 }
16
17
18 data class AllPermissionProperties(
19         override val subscriberId: String?,
20         override val serviceType: String?,
21         override val owningEntityId: String?
22 ): WithPermissionPropertiesOwningEntity, WithPermissionPropertiesSubscriberAndServiceType
23
24 data class PermissionPropertiesOwningEntity(
25         override val owningEntityId: String?
26 ): WithPermissionPropertiesOwningEntity
27
28 data class PermissionPropertiesSubscriberAndServiceType(
29         override val subscriberId: String?,
30         override val serviceType: String?
31 ) : WithPermissionPropertiesSubscriberAndServiceType {
32     constructor(serviceSubscription: ServiceSubscription, subscriberId: String?) : this(subscriberId, serviceSubscription.serviceType)
33 }
34