You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sc...@apache.org on 2016/10/07 16:31:22 UTC
[3/3] airavata git commit: changing Airavata Server Handler to use
new Sharing Module
changing Airavata Server Handler to use new Sharing Module
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/10f30a96
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/10f30a96
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/10f30a96
Branch: refs/heads/airavata-gov-registry
Commit: 10f30a96f6478fb045ae6e0cdb15b25614581856
Parents: 4ddfa10
Author: scnakandala <su...@gmail.com>
Authored: Fri Oct 7 12:31:14 2016 -0400
Committer: scnakandala <su...@gmail.com>
Committed: Fri Oct 7 12:31:14 2016 -0400
----------------------------------------------------------------------
airavata-api/airavata-api-server/pom.xml | 7 +-
.../server/handler/AiravataServerHandler.java | 357 +--
.../server/SharingRegistryServerHandler.java | 13 +-
.../sharing/registry/models/Domain.java | 2 +-
.../sharing/registry/models/Entity.java | 2 +-
.../sharing/registry/models/EntityType.java | 2 +-
.../registry/models/GovRegistryException.java | 2 +-
.../registry/models/GroupMembership.java | 2 +-
.../sharing/registry/models/PermissionType.java | 2 +-
.../sharing/registry/models/Sharing.java | 134 +-
.../airavata/sharing/registry/models/User.java | 2 +-
.../sharing/registry/models/UserGroup.java | 2 +-
.../service/cpi/GovRegistryService.java | 2950 +++++++++++++++---
.../thrift_models/sharing_cpi.thrift | 2 +
14 files changed, 2741 insertions(+), 738 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/10f30a96/airavata-api/airavata-api-server/pom.xml
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-server/pom.xml b/airavata-api/airavata-api-server/pom.xml
index e5b549c..e529a4d 100644
--- a/airavata-api/airavata-api-server/pom.xml
+++ b/airavata-api/airavata-api-server/pom.xml
@@ -73,9 +73,14 @@
</dependency>
<dependency>
<groupId>org.apache.airavata</groupId>
- <artifactId>group-manager</artifactId>
+ <artifactId>airavata-sharing-registry-core</artifactId>
<version>${project.version}</version>
</dependency>
+ <!--<dependency>-->
+ <!--<groupId>org.apache.airavata</groupId>-->
+ <!--<artifactId>group-manager</artifactId>-->
+ <!--<version>${project.version}</version>-->
+ <!--</dependency>-->
<dependency>
<groupId>org.apache.thrift</groupId>
<artifactId>libthrift</artifactId>
http://git-wip-us.apache.org/repos/asf/airavata/blob/10f30a96/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
index 5ccf874..01fcff7 100644
--- a/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
+++ b/airavata-api/airavata-api-server/src/main/java/org/apache/airavata/api/server/handler/AiravataServerHandler.java
@@ -27,19 +27,13 @@ import org.apache.airavata.api.server.security.interceptor.SecurityCheck;
import org.apache.airavata.common.exception.AiravataException;
import org.apache.airavata.common.exception.ApplicationSettingsException;
import org.apache.airavata.common.utils.AiravataUtils;
+import org.apache.airavata.common.utils.Constants;
import org.apache.airavata.common.utils.ServerSettings;
import org.apache.airavata.credential.store.client.CredentialStoreClientFactory;
import org.apache.airavata.credential.store.cpi.CredentialStoreService;
import org.apache.airavata.credential.store.datamodel.PasswordCredential;
import org.apache.airavata.credential.store.datamodel.SSHCredential;
import org.apache.airavata.credential.store.exception.CredentialStoreException;
-import org.apache.airavata.grouper.GroupManagerCPI;
-import org.apache.airavata.grouper.GroupManagerException;
-import org.apache.airavata.grouper.GroupManagerFactory;
-import org.apache.airavata.grouper.SubjectType;
-import org.apache.airavata.grouper.group.Group;
-import org.apache.airavata.grouper.permission.PermissionAction;
-import org.apache.airavata.grouper.resource.Resource;
import org.apache.airavata.messaging.core.MessageContext;
import org.apache.airavata.messaging.core.MessagingFactory;
import org.apache.airavata.messaging.core.Publisher;
@@ -80,6 +74,8 @@ import org.apache.airavata.model.workspace.Project;
import org.apache.airavata.registry.api.RegistryService;
import org.apache.airavata.registry.api.client.RegistryServiceClientFactory;
import org.apache.airavata.registry.api.exception.RegistryServiceException;
+import org.apache.airavata.sharing.registry.models.Entity;
+import org.apache.airavata.sharing.registry.server.SharingRegistryServerHandler;
import org.apache.thrift.TException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -92,10 +88,14 @@ public class AiravataServerHandler implements Airavata.Iface {
private Publisher experimentPublisher;
private CredentialStoreService.Client csClient;
+ private SharingRegistryServerHandler sharingRegistryServerHandler;
+
public AiravataServerHandler() {
try {
statusPublisher = MessagingFactory.getPublisher(Type.STATUS);
experimentPublisher = MessagingFactory.getPublisher(Type.EXPERIMENT_LAUNCH);
+
+ sharingRegistryServerHandler = new SharingRegistryServerHandler();
} catch (ApplicationSettingsException e) {
logger.error("Error occured while reading airavata-server properties..", e);
} catch (AiravataException e) {
@@ -499,14 +499,17 @@ public class AiravataServerHandler implements Airavata.Iface {
try {
String projectId = getRegistryServiceClient().createProject(gatewayId, project);
- Resource projResource = new Resource(projectId, org.apache.airavata.grouper.resource.ResourceType.PROJECT);
- projResource.setOwnerId(project.getOwner() + "@" + project.getGatewayId());
- projResource.setName(project.getName());
- projResource.setDescription(project.getDescription());
if(ServerSettings.isEnableSharing()){
- GroupManagerCPI groupManager = GroupManagerFactory.getGroupManager();
- groupManager.createResource(projResource);
+ Entity entity = new Entity();
+ entity.setEntityId(projectId);
+ entity.setDomainId(project.getGatewayId());
+ entity.setEntityTypeId(project.getGatewayId()+":"+"PROJECT");
+ entity.setOwnerId(project.getOwner() + "@" + project.getGatewayId());
+ entity.setName(project.getName());
+ entity.setDescription(project.getDescription());
+
+ sharingRegistryServerHandler.createEntity(entity);
}
logger.debug("Airavata created project with project Id : " + projectId + " for gateway Id : " + gatewayId);
@@ -530,9 +533,10 @@ public class AiravataServerHandler implements Airavata.Iface {
if(ServerSettings.isEnableSharing() && !authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.USER_NAME).equals(existingProject.getOwner())
|| !authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.GATEWAY_ID).equals(existingProject.getGatewayId())){
try {
- if(!hasPermission(authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.USER_NAME)
- +"@"+authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.GATEWAY_ID),
- existingProject.getProjectID(), ResourceType.PROJECT, ResourcePermissionType.WRITE)){
+ String gatewayId = authzToken.getClaimsMap().get(Constants.GATEWAY_ID);
+ String userId = authzToken.getClaimsMap().get(Constants.USER_NAME);
+ if(!sharingRegistryServerHandler.userHasAccess(gatewayId, userId + "@" + gatewayId,
+ projectId, gatewayId + ":WRITE")){
throw new AuthorizationException("User does not have permission to access this resource");
}
} catch (Exception e) {
@@ -560,9 +564,10 @@ public class AiravataServerHandler implements Airavata.Iface {
if(ServerSettings.isEnableSharing() && !authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.USER_NAME).equals(existingProject.getOwner())
|| !authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.GATEWAY_ID).equals(existingProject.getGatewayId())){
try {
- if(!hasPermission(authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.USER_NAME)
- +"@"+authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.GATEWAY_ID),
- existingProject.getProjectID(), ResourceType.PROJECT, ResourcePermissionType.WRITE)){
+ String gatewayId = authzToken.getClaimsMap().get(Constants.GATEWAY_ID);
+ String userId = authzToken.getClaimsMap().get(Constants.USER_NAME);
+ if(!sharingRegistryServerHandler.userHasAccess(gatewayId, userId + "@" + gatewayId,
+ projectId, gatewayId + ":WRITE")){
throw new AuthorizationException("User does not have permission to access this resource");
}
} catch (Exception e) {
@@ -604,13 +609,13 @@ public class AiravataServerHandler implements Airavata.Iface {
return project;
}else if (ServerSettings.isEnableSharing()){
try {
- if(hasPermission(authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.USER_NAME)
- +"@"+authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.GATEWAY_ID),
- project.getProjectID(), ResourceType.PROJECT, ResourcePermissionType.READ)){
- return project;
- }else {
+ String gatewayId = authzToken.getClaimsMap().get(Constants.GATEWAY_ID);
+ String userId = authzToken.getClaimsMap().get(Constants.USER_NAME);
+ if(!sharingRegistryServerHandler.userHasAccess(gatewayId, userId + "@" + gatewayId,
+ projectId, gatewayId + ":READ")){
throw new AuthorizationException("User does not have permission to access this resource");
}
+ return project;
} catch (Exception e) {
throw new AuthorizationException("User does not have permission to access this resource");
}
@@ -683,7 +688,8 @@ public class AiravataServerHandler implements Airavata.Iface {
List<String> accessibleProjIds = new ArrayList<>();
if(ServerSettings.isEnableSharing())
- accessibleProjIds.addAll(getAllAccessibleResourcesForUser(userName+"@"+gatewayId, ResourceType.PROJECT, ResourcePermissionType.READ));
+ sharingRegistryServerHandler.searchEntities(userName+"@"+gatewayId, gatewayId+":PROJECT",
+ new HashMap<>(), 0, -1).stream().forEach(e->accessibleProjIds.add(e.entityId));
return getRegistryServiceClient().searchProjects(gatewayId, userName, accessibleProjIds, filters, limit, offset);
}catch (Exception e) {
@@ -719,7 +725,8 @@ public class AiravataServerHandler implements Airavata.Iface {
try {
List<String> accessibleExpIds = new ArrayList<>();
if(ServerSettings.isEnableSharing())
- accessibleExpIds.addAll(getAllAccessibleResourcesForUser(userName + "@" + gatewayId, ResourceType.EXPERIMENT, ResourcePermissionType.READ));
+ sharingRegistryServerHandler.searchEntities(userName+"@"+gatewayId, gatewayId+":EXPERIMENT",
+ new HashMap<>(), 0, -1).forEach(e->accessibleExpIds.add(e.entityId));
return getRegistryServiceClient().searchExperiments(gatewayId, userName, accessibleExpIds, filters, limit, offset);
}catch (Exception e) {
logger.error("Error while retrieving experiments", e);
@@ -781,9 +788,10 @@ public class AiravataServerHandler implements Airavata.Iface {
if(ServerSettings.isEnableSharing() && !authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.USER_NAME).equals(project.getOwner())
|| !authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.GATEWAY_ID).equals(project.getGatewayId())){
try {
- if(!hasPermission(authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.USER_NAME)
- +"@"+authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.GATEWAY_ID),
- project.getProjectID(), ResourceType.PROJECT, ResourcePermissionType.READ)){
+ String gatewayId = authzToken.getClaimsMap().get(Constants.GATEWAY_ID);
+ String userId = authzToken.getClaimsMap().get(Constants.USER_NAME);
+ if(!sharingRegistryServerHandler.userHasAccess(gatewayId, userId + "@" + gatewayId,
+ projectId, gatewayId + ":READ")){
throw new AuthorizationException("User does not have permission to access this resource");
}
} catch (Exception e) {
@@ -857,15 +865,17 @@ public class AiravataServerHandler implements Airavata.Iface {
AiravataClientException, AiravataSystemException, AuthorizationException, TException {
try {
String experimentId = getRegistryServiceClient().createExperiment(gatewayId, experiment);
- Resource expResource = new Resource(experimentId, org.apache.airavata.grouper.resource.ResourceType.EXPERIMENT);
- expResource.setOwnerId(experiment.getUserName()+"@"+experiment.getGatewayId());
- expResource.setParentResourceId(experiment.getProjectId());
- expResource.setName(experiment.getExperimentName());
- expResource.setDescription(experiment.getDescription());
if(ServerSettings.isEnableSharing()) {
- GroupManagerCPI groupManager = GroupManagerFactory.getGroupManager();
- groupManager.createResource(expResource);
+ Entity entity = new Entity();
+ entity.setEntityId(experimentId);
+ entity.setDomainId(experiment.getGatewayId());
+ entity.setEntityTypeId(experiment.getGatewayId()+":"+"EXPERIMENT");
+ entity.setOwnerId(experiment.getUserName() + "@" + experiment.getGatewayId());
+ entity.setName(experiment.getExperimentName());
+ entity.setDescription(experiment.getDescription());
+
+ sharingRegistryServerHandler.createEntity(entity);
}
ExperimentStatusChangeEvent event = new ExperimentStatusChangeEvent(ExperimentState.CREATED,
@@ -909,9 +919,10 @@ public class AiravataServerHandler implements Airavata.Iface {
if(ServerSettings.isEnableSharing() && !authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.USER_NAME).equals(experimentModel.getUserName())
|| !authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.GATEWAY_ID).equals(experimentModel.getGatewayId())){
try {
- if(! hasPermission(authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.USER_NAME)
- +"@"+authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.GATEWAY_ID),
- experimentModel.getExperimentId(), ResourceType.EXPERIMENT, ResourcePermissionType.WRITE)){
+ String gatewayId = authzToken.getClaimsMap().get(Constants.GATEWAY_ID);
+ String userId = authzToken.getClaimsMap().get(Constants.USER_NAME);
+ if(!sharingRegistryServerHandler.userHasAccess(gatewayId, userId + "@" + gatewayId,
+ experimentId, gatewayId + ":WRITE")){
throw new AuthorizationException("User does not have permission to access this resource");
}
} catch (Exception e) {
@@ -967,13 +978,13 @@ public class AiravataServerHandler implements Airavata.Iface {
return experimentModel;
}else if(ServerSettings.isEnableSharing()){
try {
- if(hasPermission(authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.USER_NAME)
- +"@"+authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.GATEWAY_ID),
- experimentModel.getExperimentId(), ResourceType.EXPERIMENT, ResourcePermissionType.READ)){
- return experimentModel;
- }else {
+ String gatewayId = authzToken.getClaimsMap().get(Constants.GATEWAY_ID);
+ String userId = authzToken.getClaimsMap().get(Constants.USER_NAME);
+ if(!sharingRegistryServerHandler.userHasAccess(gatewayId, userId + "@" + gatewayId,
+ airavataExperimentId, gatewayId + ":READ")){
throw new AuthorizationException("User does not have permission to access this resource");
}
+ return experimentModel;
} catch (Exception e) {
throw new AuthorizationException("User does not have permission to access this resource");
}
@@ -1062,9 +1073,10 @@ public class AiravataServerHandler implements Airavata.Iface {
if(ServerSettings.isEnableSharing() && !authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.USER_NAME).equals(experimentModel.getUserName())
|| !authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.GATEWAY_ID).equals(experimentModel.getGatewayId())){
try {
- if(! hasPermission(authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.USER_NAME)
- +"@"+authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.GATEWAY_ID),
- experimentModel.getExperimentId(), ResourceType.EXPERIMENT, ResourcePermissionType.WRITE)){
+ String gatewayId = authzToken.getClaimsMap().get(Constants.GATEWAY_ID);
+ String userId = authzToken.getClaimsMap().get(Constants.USER_NAME);
+ if(!sharingRegistryServerHandler.userHasAccess(gatewayId, userId + "@" + gatewayId,
+ airavataExperimentId, gatewayId + ":WRITE")){
throw new AuthorizationException("User does not have permission to access this resource");
}
} catch (Exception e) {
@@ -1394,13 +1406,16 @@ public class AiravataServerHandler implements Airavata.Iface {
existingExperiment.setUserName(authzToken.getClaimsMap().get(org.apache.airavata.common.utils.Constants.USER_NAME));
String expId = regClient.createExperiment(gatewayId, existingExperiment);
- String projectId = existingExperiment.getProjectId();
-
if(ServerSettings.isEnableSharing()){
- if(!isResourceExistsInGrouper(projectId, ResourceType.PROJECT)){
- initializeResourceWithGrouper(projectId, ResourceType.PROJECT);
- }
- initializeResourceWithGrouper(expId, ResourceType.EXPERIMENT);
+ Entity entity = new Entity();
+ entity.setEntityId(expId);
+ entity.setDomainId(existingExperiment.getGatewayId());
+ entity.setEntityTypeId(existingExperiment.getGatewayId()+":"+"EXPERIMENT");
+ entity.setOwnerId(existingExperiment.getUserName() + "@" + existingExperiment.getGatewayId());
+ entity.setName(existingExperiment.getExperimentName());
+ entity.setDescription(existingExperiment.getDescription());
+
+ sharingRegistryServerHandler.createEntity(entity);
}
return expId;
@@ -3330,29 +3345,13 @@ public class AiravataServerHandler implements Airavata.Iface {
Map<String, ResourcePermissionType> userPermissionList) throws InvalidRequestException,
AiravataClientException, AiravataSystemException, AuthorizationException, TException {
try {
- if(!isResourceExistsInGrouper(resourceId, resourceType)){
- initializeResourceWithGrouper(resourceId, resourceType);
- }
- GroupManagerCPI groupManager = GroupManagerFactory.getGroupManager();
- for(Map.Entry<String, ResourcePermissionType> entry : userPermissionList.entrySet()){
- org.apache.airavata.grouper.resource.ResourceType gResouceType;
- if(resourceType.equals(ResourceType.EXPERIMENT)){
- gResouceType = org.apache.airavata.grouper.resource.ResourceType.EXPERIMENT;
- }else if(resourceType.equals(ResourceType.PROJECT)){
- gResouceType = org.apache.airavata.grouper.resource.ResourceType.PROJECT;
- }else{
- //Unsupported data type
- continue;
- }
-
- if(entry.getValue().equals(ResourcePermissionType.READ)){
- groupManager.grantPermission(entry.getKey(), SubjectType.PERSON, resourceId, gResouceType, PermissionAction.READ);
- }else if(entry.getValue().equals(ResourcePermissionType.WRITE)){
- groupManager.grantPermission(entry.getKey(), SubjectType.PERSON, resourceId, gResouceType, PermissionAction.WRITE);
- }else{
- //Unsupported permission type
- continue;
- }
+ for(Map.Entry<String, ResourcePermissionType> userPermission : userPermissionList.entrySet()){
+ if(userPermission.getValue().equals(ResourcePermissionType.WRITE))
+ sharingRegistryServerHandler.shareEntityWithUsers(resourceId,
+ Arrays.asList(userPermission.getKey()), authzToken.getClaimsMap().get(Constants.GATEWAY_ID) + ":" + "WRITE", true);
+ else
+ sharingRegistryServerHandler.shareEntityWithUsers(resourceId,
+ Arrays.asList(userPermission.getKey()), authzToken.getClaimsMap().get("GatewatId") + ":" + "READ", true);
}
return true;
} catch (Exception e) {
@@ -3369,29 +3368,13 @@ public class AiravataServerHandler implements Airavata.Iface {
public boolean revokeSharingOfResourceFromUsers(AuthzToken authzToken, String resourceId, ResourceType resourceType,
Map<String, ResourcePermissionType> userPermissionList) throws InvalidRequestException, AiravataClientException, AiravataSystemException, AuthorizationException, TException {
try {
- if(!isResourceExistsInGrouper(resourceId, resourceType)){
- initializeResourceWithGrouper(resourceId, resourceType);
- }
- GroupManagerCPI groupManager = GroupManagerFactory.getGroupManager();
- for(Map.Entry<String, ResourcePermissionType> entry : userPermissionList.entrySet()){
- org.apache.airavata.grouper.resource.ResourceType gResouceType;
- if(resourceType.equals(ResourceType.EXPERIMENT)){
- gResouceType = org.apache.airavata.grouper.resource.ResourceType.EXPERIMENT;
- }else if(resourceType.equals(ResourceType.PROJECT)){
- gResouceType = org.apache.airavata.grouper.resource.ResourceType.PROJECT;
- }else{
- //Unsupported data type
- continue;
- }
-
- if(entry.getValue().equals(ResourcePermissionType.READ)){
- groupManager.revokePermission(entry.getKey(), SubjectType.PERSON, resourceId, gResouceType, PermissionAction.READ);
- }else if(entry.getValue().equals(ResourcePermissionType.WRITE)){
- groupManager.revokePermission(entry.getKey(), SubjectType.PERSON, resourceId, gResouceType, PermissionAction.WRITE);
- }else{
- //Unsupported permission type
- continue;
- }
+ for(Map.Entry<String, ResourcePermissionType> userPermission : userPermissionList.entrySet()){
+ if(userPermission.getValue().equals(ResourcePermissionType.WRITE))
+ sharingRegistryServerHandler.revokeEntitySharingFromUsers(resourceId,
+ Arrays.asList(userPermission.getKey()), authzToken.getClaimsMap().get(Constants.GATEWAY_ID) + ":" + "WRITE");
+ else
+ sharingRegistryServerHandler.revokeEntitySharingFromUsers(resourceId,
+ Arrays.asList(userPermission.getKey()), authzToken.getClaimsMap().get(Constants.GATEWAY_ID) + ":" + "READ");
}
return true;
} catch (Exception e) {
@@ -3407,26 +3390,9 @@ public class AiravataServerHandler implements Airavata.Iface {
@SecurityCheck
public List<String> getAllAccessibleUsers(AuthzToken authzToken, String resourceId, ResourceType resourceType, ResourcePermissionType permissionType) throws InvalidRequestException, AiravataClientException, AiravataSystemException, AuthorizationException, TException {
try {
- GroupManagerCPI groupManager = GroupManagerFactory.getGroupManager();
- org.apache.airavata.grouper.resource.ResourceType gResourceType;
- if(resourceType.equals(ResourceType.PROJECT)){
- gResourceType = org.apache.airavata.grouper.resource.ResourceType.PROJECT;
- }else if(resourceType.equals(ResourceType.EXPERIMENT)){
- gResourceType = org.apache.airavata.grouper.resource.ResourceType.EXPERIMENT;
- }else{
- throw new GroupManagerException("Unsupported Resource Type");
- }
-
- org.apache.airavata.grouper.permission.PermissionAction gPermissionType;
- if(permissionType.equals(ResourcePermissionType.READ)){
- gPermissionType = PermissionAction.READ;
- } else if (permissionType.equals(ResourcePermissionType.WRITE)){
- gPermissionType = PermissionAction.WRITE;
- }else{
- throw new GroupManagerException("Unsupported Permission Type");
- }
List<String> accessibleUsers = new ArrayList<>();
- accessibleUsers.addAll(groupManager.getAllAccessibleUsers(resourceId, gResourceType, gPermissionType));
+ if(permissionType.equals(ResourcePermissionType.WRITE))
+ sharingRegistryServerHandler.getListOfSharedUsers(resourceId, authzToken.getClaimsMap().get(Constants.GATEWAY_ID) + ":WRITE").stream().forEach(u->accessibleUsers.add(u.userId));
return accessibleUsers;
} catch (Exception e) {
String msg = "Error in getting all accessible users for resource. Resource ID : " + resourceId + " Resource Type : " + resourceType.toString() ;
@@ -3441,12 +3407,7 @@ public class AiravataServerHandler implements Airavata.Iface {
@SecurityCheck
public boolean createGroup(AuthzToken authzToken, GroupModel groupModel) throws InvalidRequestException, AiravataClientException, AiravataSystemException, AuthorizationException, TException {
try {
- GroupManagerCPI groupManager = GroupManagerFactory.getGroupManager();
- Group group = new Group();
- group.setName(groupModel.getName());
- group.setDescription(groupModel.getDescription());
- group.setMembers(groupModel.getMembers());
- groupManager.createGroup(group);
+ throw new UnsupportedOperationException("Method not supported yet");
} catch (Exception e) {
String msg = "Error Creating Group" ;
logger.error(msg, e);
@@ -3454,20 +3415,14 @@ public class AiravataServerHandler implements Airavata.Iface {
exception.setMessage(msg + " More info : " + e.getMessage());
throw exception;
}
- return true;
}
@Override
@SecurityCheck
- public boolean updateGroup(AuthzToken authzToken, GroupModel groupModel) throws InvalidRequestException, AiravataClientException, AiravataSystemException, AuthorizationException, TException {
+ public boolean updateGroup(AuthzToken authzToken, GroupModel groupModel) throws InvalidRequestException,
+ AiravataClientException, AiravataSystemException, AuthorizationException, TException {
try {
- GroupManagerCPI groupManager = GroupManagerFactory.getGroupManager();
- Group group = new Group();
- group.setId(groupModel.getId());
- group.setName(groupModel.getName());
- group.setDescription(groupModel.getDescription());
- group.setMembers(groupModel.getMembers());
- groupManager.updateGroup(group);
+ throw new UnsupportedOperationException("Method not supported yet");
} catch (Exception e) {
String msg = "Error Updating Group" ;
logger.error(msg, e);
@@ -3475,15 +3430,14 @@ public class AiravataServerHandler implements Airavata.Iface {
exception.setMessage(msg + " More info : " + e.getMessage());
throw exception;
}
- return true;
}
@Override
@SecurityCheck
- public boolean deleteGroup(AuthzToken authzToken, String groupId, String ownerId, String gatewayId) throws InvalidRequestException, AiravataClientException, AiravataSystemException, AuthorizationException, TException {
+ public boolean deleteGroup(AuthzToken authzToken, String groupId, String ownerId, String gatewayId) throws
+ InvalidRequestException, AiravataClientException, AiravataSystemException, AuthorizationException, TException {
try {
- GroupManagerCPI groupManager = GroupManagerFactory.getGroupManager();
- groupManager.deleteGroup(groupId, ownerId + "@" + gatewayId);
+ throw new UnsupportedOperationException("Method not supported yet");
} catch (Exception e) {
String msg = "Error Deleting Group. Group ID: " + groupId ;
logger.error(msg, e);
@@ -3491,22 +3445,14 @@ public class AiravataServerHandler implements Airavata.Iface {
exception.setMessage(msg + " More info : " + e.getMessage());
throw exception;
}
- return true;
}
@Override
@SecurityCheck
- public GroupModel getGroup(AuthzToken authzToken, String groupId) throws InvalidRequestException, AiravataClientException, AiravataSystemException, AuthorizationException, TException {
+ public GroupModel getGroup(AuthzToken authzToken, String groupId) throws InvalidRequestException,
+ AiravataClientException, AiravataSystemException, AuthorizationException, TException {
try {
- GroupManagerCPI groupManager = GroupManagerFactory.getGroupManager();
- Group group = groupManager.getGroup(groupId);
- GroupModel groupModel = new GroupModel();
- groupModel.setId(group.getId());
- groupModel.setName(group.getName());
- groupModel.setDescription(group.getDescription());
- groupModel.setMembers(group.getMembers());
-
- return groupModel;
+ throw new UnsupportedOperationException("Method not supported yet");
} catch (Exception e) {
String msg = "Error Retreiving Group. Group ID: " + groupId ;
logger.error(msg, e);
@@ -3518,21 +3464,10 @@ public class AiravataServerHandler implements Airavata.Iface {
@Override
@SecurityCheck
- public List<GroupModel> getAllGroupsUserBelongs(AuthzToken authzToken, String userName, String gatewayId) throws InvalidRequestException, AiravataClientException, AiravataSystemException, AuthorizationException, TException {
+ public List<GroupModel> getAllGroupsUserBelongs(AuthzToken authzToken, String userName, String gatewayId)
+ throws InvalidRequestException, AiravataClientException, AiravataSystemException, AuthorizationException, TException {
try {
- GroupManagerCPI groupManager = GroupManagerFactory.getGroupManager();
- List<Group> userGroups = groupManager.getAllGroupsUserBelongs(userName+"@"+gatewayId);
- List<GroupModel> groupModels = new ArrayList<>();
- userGroups.stream().forEach(group->{
- GroupModel groupModel = new GroupModel();
- groupModel.setId(group.getId());
- groupModel.setName(group.getName());
- groupModel.setDescription(group.getDescription());
- groupModel.setMembers(group.getMembers());
-
- groupModels.add(groupModel);
- });
- return groupModels;
+ throw new UnsupportedOperationException("Method not supported yet");
} catch (Exception e) {
String msg = "Error Retreiving All Groups for User. User ID: " + userName ;
logger.error(msg, e);
@@ -3542,104 +3477,6 @@ public class AiravataServerHandler implements Airavata.Iface {
}
}
- private void initializeResourceWithGrouper(String resourceId, ResourceType resourceType) throws RegistryServiceException, GroupManagerException, TException, ApplicationSettingsException {
- GroupManagerCPI groupManager = GroupManagerFactory.getGroupManager();
- if(resourceType.equals(ResourceType.PROJECT)){
- Project project = (Project) getRegistryServiceClient().getProject(resourceId);
-
- Resource projectResource = new Resource(project.getProjectID(), org.apache.airavata.grouper.resource.ResourceType.PROJECT);
- projectResource.setName(project.getName());
- projectResource.setDescription(project.getDescription());
- projectResource.setOwnerId(project.getOwner()+"@"+project.getGatewayId());
- groupManager.createResource(projectResource);
-
- }else if(resourceType.equals(ResourceType.EXPERIMENT)){
- ExperimentModel experiment = getRegistryServiceClient().getExperiment(resourceId);
- if(!isResourceExistsInGrouper(experiment.getProjectId(), ResourceType.PROJECT)){
- initializeResourceWithGrouper(experiment.getProjectId(), ResourceType.PROJECT);
- }
- Resource experimentResource = new Resource(experiment.getExperimentId(), org.apache.airavata.grouper.resource.ResourceType.EXPERIMENT);
- experimentResource.setName(experiment.getExperimentName());
- experimentResource.setDescription(experiment.getDescription());
- experimentResource.setParentResourceId(experiment.getProjectId());
- experimentResource.setOwnerId(experiment.getUserName()+"@"+experiment.getGatewayId());
- groupManager.createResource(experimentResource);
- }else{
- throw new GroupManagerException("Unsupported Resource Type");
- }
-
- }
-
- private boolean isResourceExistsInGrouper(String resourceId, ResourceType resourceType) throws GroupManagerException {
- GroupManagerCPI groupManager = GroupManagerFactory.getGroupManager();
- if(resourceType.equals(ResourceType.PROJECT)){
- return groupManager.isResourceRegistered(resourceId, org.apache.airavata.grouper.resource.ResourceType.PROJECT);
- }else if(resourceType.equals(ResourceType.EXPERIMENT)){
- return groupManager.isResourceRegistered(resourceId, org.apache.airavata.grouper.resource.ResourceType.EXPERIMENT);
- }else{
- throw new GroupManagerException("Unsupported Resource Type");
- }
-
- }
-
- private boolean hasPermission(String userId, String resourceId, ResourceType resourceType, ResourcePermissionType permissionType)
- throws GroupManagerException, TException, ApplicationSettingsException {
- if(!isResourceExistsInGrouper(resourceId, resourceType)){
- initializeResourceWithGrouper(resourceId, resourceType);
- }
- GroupManagerCPI groupManager = GroupManagerFactory.getGroupManager();
- org.apache.airavata.grouper.resource.ResourceType gResourceType;
- if(resourceType.equals(ResourceType.PROJECT)){
- gResourceType = org.apache.airavata.grouper.resource.ResourceType.PROJECT;
- }else if(resourceType.equals(ResourceType.EXPERIMENT)){
- gResourceType = org.apache.airavata.grouper.resource.ResourceType.EXPERIMENT;
- }else{
- throw new GroupManagerException("Unsupported Resource Type");
- }
-
- org.apache.airavata.grouper.permission.PermissionAction gPermissionType;
- if(permissionType.equals(ResourcePermissionType.READ)){
- gPermissionType = PermissionAction.READ;
- } else if (permissionType.equals(ResourcePermissionType.WRITE)){
- gPermissionType = PermissionAction.WRITE;
- }else{
- throw new GroupManagerException("Unsupported Permission Type");
- }
- Set<String> accessibleUsers = groupManager.getAllAccessibleUsers(resourceId, gResourceType, gPermissionType);
- return accessibleUsers.contains(userId);
- }
-
- private List<String> getAllAccessibleResourcesForUser(String userId, ResourceType resourceType, ResourcePermissionType permissionType)
- throws GroupManagerException, TException, ApplicationSettingsException {
- if(!getRegistryServiceClient().isUserExists(userId.split("@")[1], userId.split("@")[0])){
- //user is still not initialized in the sistem
- return new ArrayList<>();
- }
-
- GroupManagerCPI groupManager = GroupManagerFactory.getGroupManager();
- org.apache.airavata.grouper.resource.ResourceType gResourceType;
- if(resourceType.equals(ResourceType.PROJECT)){
- gResourceType = org.apache.airavata.grouper.resource.ResourceType.PROJECT;
- }else if(resourceType.equals(ResourceType.EXPERIMENT)){
- gResourceType = org.apache.airavata.grouper.resource.ResourceType.EXPERIMENT;
- }else{
- throw new GroupManagerException("Unsupported Resource Type");
- }
-
- org.apache.airavata.grouper.permission.PermissionAction gPermissionType;
- if(permissionType.equals(ResourcePermissionType.READ)){
- gPermissionType = PermissionAction.READ;
- } else if (permissionType.equals(ResourcePermissionType.WRITE)){
- gPermissionType = PermissionAction.WRITE;
- }else{
- throw new GroupManagerException("Unsupported Permission Type");
- }
-
- List<String> allAccessibleResources = groupManager.getAccessibleResourcesForUser(userId, gResourceType, gPermissionType);
- return allAccessibleResources;
- }
-
-
private void submitExperiment(String gatewayId,String experimentId) throws AiravataException {
ExperimentSubmitEvent event = new ExperimentSubmitEvent(experimentId, gatewayId);
MessageContext messageContext = new MessageContext(event, MessageType.EXPERIMENT, "LAUNCH.EXP-" + UUID.randomUUID().toString(), gatewayId);
http://git-wip-us.apache.org/repos/asf/airavata/blob/10f30a96/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/server/SharingRegistryServerHandler.java
----------------------------------------------------------------------
diff --git a/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/server/SharingRegistryServerHandler.java b/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/server/SharingRegistryServerHandler.java
index 247cbfe..bfcaa1f 100644
--- a/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/server/SharingRegistryServerHandler.java
+++ b/modules/sharing-registry/sharing-registry-core/src/main/java/org/apache/airavata/sharing/registry/server/SharingRegistryServerHandler.java
@@ -430,6 +430,16 @@ public class SharingRegistryServerHandler implements GovRegistryService.Iface{
return entityRepository.searchEntities(groupIds, entityTypeId, filters, offset, limit);
}
+ @Override
+ public List<User> getListOfSharedUsers(String entityId, String permissionTypeId) throws GovRegistryException, TException {
+ return null;
+ }
+
+ @Override
+ public List<UserGroup> getListOfSharedGroups(String entityId, String permissionTypeId) throws GovRegistryException, TException {
+ return null;
+ }
+
/**
* * Sharing Entity with Users and Groups
* *
@@ -459,10 +469,8 @@ public class SharingRegistryServerHandler implements GovRegistryService.Iface{
sharing.setInheritedParentId(entityId);
if(cascadePermission) {
sharing.setSharingType(SharingType.DIRECT_CASCADING);
- sharing.setCascadePermission(true);
}else {
sharing.setSharingType(SharingType.DIRECT_NON_CASCADING);
- sharing.setCascadePermission(false);
}
sharing.setCreatedTime(System.currentTimeMillis());
sharing.setUpdatedTime(System.currentTimeMillis());
@@ -484,7 +492,6 @@ public class SharingRegistryServerHandler implements GovRegistryService.Iface{
sharing.setInheritedParentId(entityId);
sharing.setSharingType(SharingType.INDIRECT_CASCADING);
sharing.setInheritedParentId(entityId);
- sharing.setCascadePermission(true);
sharing.setCreatedTime(System.currentTimeMillis());
sharing.setUpdatedTime(System.currentTimeMillis());
sharingRepository.create(sharing);
http://git-wip-us.apache.org/repos/asf/airavata/blob/10f30a96/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Domain.java
----------------------------------------------------------------------
diff --git a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Domain.java b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Domain.java
index 367e04f..eb30e38 100644
--- a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Domain.java
+++ b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Domain.java
@@ -34,7 +34,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-05")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-06")
public class Domain implements org.apache.thrift.TBase<Domain, Domain._Fields>, java.io.Serializable, Cloneable, Comparable<Domain> {
private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("Domain");
http://git-wip-us.apache.org/repos/asf/airavata/blob/10f30a96/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Entity.java
----------------------------------------------------------------------
diff --git a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Entity.java b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Entity.java
index 462d892..0818b70 100644
--- a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Entity.java
+++ b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Entity.java
@@ -34,7 +34,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-05")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-06")
public class Entity implements org.apache.thrift.TBase<Entity, Entity._Fields>, java.io.Serializable, Cloneable, Comparable<Entity> {
private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("Entity");
http://git-wip-us.apache.org/repos/asf/airavata/blob/10f30a96/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/EntityType.java
----------------------------------------------------------------------
diff --git a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/EntityType.java b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/EntityType.java
index d2ddffa..4244502 100644
--- a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/EntityType.java
+++ b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/EntityType.java
@@ -34,7 +34,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-05")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-06")
public class EntityType implements org.apache.thrift.TBase<EntityType, EntityType._Fields>, java.io.Serializable, Cloneable, Comparable<EntityType> {
private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("EntityType");
http://git-wip-us.apache.org/repos/asf/airavata/blob/10f30a96/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GovRegistryException.java
----------------------------------------------------------------------
diff --git a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GovRegistryException.java b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GovRegistryException.java
index 7df20a7..40bc7c0 100644
--- a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GovRegistryException.java
+++ b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GovRegistryException.java
@@ -34,7 +34,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-05")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-06")
public class GovRegistryException extends TException implements org.apache.thrift.TBase<GovRegistryException, GovRegistryException._Fields>, java.io.Serializable, Cloneable, Comparable<GovRegistryException> {
private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("GovRegistryException");
http://git-wip-us.apache.org/repos/asf/airavata/blob/10f30a96/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GroupMembership.java
----------------------------------------------------------------------
diff --git a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GroupMembership.java b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GroupMembership.java
index 00843aa..5ec148f 100644
--- a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GroupMembership.java
+++ b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/GroupMembership.java
@@ -34,7 +34,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-05")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-06")
public class GroupMembership implements org.apache.thrift.TBase<GroupMembership, GroupMembership._Fields>, java.io.Serializable, Cloneable, Comparable<GroupMembership> {
private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("GroupMembership");
http://git-wip-us.apache.org/repos/asf/airavata/blob/10f30a96/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/PermissionType.java
----------------------------------------------------------------------
diff --git a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/PermissionType.java b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/PermissionType.java
index 91645ce..806c15b 100644
--- a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/PermissionType.java
+++ b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/PermissionType.java
@@ -34,7 +34,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-05")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-06")
public class PermissionType implements org.apache.thrift.TBase<PermissionType, PermissionType._Fields>, java.io.Serializable, Cloneable, Comparable<PermissionType> {
private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("PermissionType");
http://git-wip-us.apache.org/repos/asf/airavata/blob/10f30a96/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Sharing.java
----------------------------------------------------------------------
diff --git a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Sharing.java b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Sharing.java
index 4cfdc82..c2ddf18 100644
--- a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Sharing.java
+++ b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/Sharing.java
@@ -34,7 +34,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-05")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-06")
public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields>, java.io.Serializable, Cloneable, Comparable<Sharing> {
private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("Sharing");
@@ -43,9 +43,8 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
private static final org.apache.thrift.protocol.TField GROUP_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("groupId", org.apache.thrift.protocol.TType.STRING, (short)3);
private static final org.apache.thrift.protocol.TField SHARING_TYPE_FIELD_DESC = new org.apache.thrift.protocol.TField("sharingType", org.apache.thrift.protocol.TType.I32, (short)4);
private static final org.apache.thrift.protocol.TField INHERITED_PARENT_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("inheritedParentId", org.apache.thrift.protocol.TType.STRING, (short)5);
- private static final org.apache.thrift.protocol.TField CASCADE_PERMISSION_FIELD_DESC = new org.apache.thrift.protocol.TField("cascadePermission", org.apache.thrift.protocol.TType.BOOL, (short)6);
- private static final org.apache.thrift.protocol.TField CREATED_TIME_FIELD_DESC = new org.apache.thrift.protocol.TField("createdTime", org.apache.thrift.protocol.TType.I64, (short)7);
- private static final org.apache.thrift.protocol.TField UPDATED_TIME_FIELD_DESC = new org.apache.thrift.protocol.TField("updatedTime", org.apache.thrift.protocol.TType.I64, (short)8);
+ private static final org.apache.thrift.protocol.TField CREATED_TIME_FIELD_DESC = new org.apache.thrift.protocol.TField("createdTime", org.apache.thrift.protocol.TType.I64, (short)6);
+ private static final org.apache.thrift.protocol.TField UPDATED_TIME_FIELD_DESC = new org.apache.thrift.protocol.TField("updatedTime", org.apache.thrift.protocol.TType.I64, (short)7);
private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
static {
@@ -62,7 +61,6 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
*/
public SharingType sharingType; // optional
public String inheritedParentId; // optional
- public boolean cascadePermission; // optional
public long createdTime; // optional
public long updatedTime; // optional
@@ -77,9 +75,8 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
*/
SHARING_TYPE((short)4, "sharingType"),
INHERITED_PARENT_ID((short)5, "inheritedParentId"),
- CASCADE_PERMISSION((short)6, "cascadePermission"),
- CREATED_TIME((short)7, "createdTime"),
- UPDATED_TIME((short)8, "updatedTime");
+ CREATED_TIME((short)6, "createdTime"),
+ UPDATED_TIME((short)7, "updatedTime");
private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
@@ -104,11 +101,9 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
return SHARING_TYPE;
case 5: // INHERITED_PARENT_ID
return INHERITED_PARENT_ID;
- case 6: // CASCADE_PERMISSION
- return CASCADE_PERMISSION;
- case 7: // CREATED_TIME
+ case 6: // CREATED_TIME
return CREATED_TIME;
- case 8: // UPDATED_TIME
+ case 7: // UPDATED_TIME
return UPDATED_TIME;
default:
return null;
@@ -150,11 +145,10 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
}
// isset id assignments
- private static final int __CASCADEPERMISSION_ISSET_ID = 0;
- private static final int __CREATEDTIME_ISSET_ID = 1;
- private static final int __UPDATEDTIME_ISSET_ID = 2;
+ private static final int __CREATEDTIME_ISSET_ID = 0;
+ private static final int __UPDATEDTIME_ISSET_ID = 1;
private byte __isset_bitfield = 0;
- private static final _Fields optionals[] = {_Fields.PERMISSION_TYPE_ID,_Fields.ENTITY_ID,_Fields.GROUP_ID,_Fields.SHARING_TYPE,_Fields.INHERITED_PARENT_ID,_Fields.CASCADE_PERMISSION,_Fields.CREATED_TIME,_Fields.UPDATED_TIME};
+ private static final _Fields optionals[] = {_Fields.PERMISSION_TYPE_ID,_Fields.ENTITY_ID,_Fields.GROUP_ID,_Fields.SHARING_TYPE,_Fields.INHERITED_PARENT_ID,_Fields.CREATED_TIME,_Fields.UPDATED_TIME};
public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
static {
Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
@@ -168,8 +162,6 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, SharingType.class)));
tmpMap.put(_Fields.INHERITED_PARENT_ID, new org.apache.thrift.meta_data.FieldMetaData("inheritedParentId", org.apache.thrift.TFieldRequirementType.OPTIONAL,
new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
- tmpMap.put(_Fields.CASCADE_PERMISSION, new org.apache.thrift.meta_data.FieldMetaData("cascadePermission", org.apache.thrift.TFieldRequirementType.OPTIONAL,
- new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL)));
tmpMap.put(_Fields.CREATED_TIME, new org.apache.thrift.meta_data.FieldMetaData("createdTime", org.apache.thrift.TFieldRequirementType.OPTIONAL,
new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I64)));
tmpMap.put(_Fields.UPDATED_TIME, new org.apache.thrift.meta_data.FieldMetaData("updatedTime", org.apache.thrift.TFieldRequirementType.OPTIONAL,
@@ -201,7 +193,6 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
if (other.isSetInheritedParentId()) {
this.inheritedParentId = other.inheritedParentId;
}
- this.cascadePermission = other.cascadePermission;
this.createdTime = other.createdTime;
this.updatedTime = other.updatedTime;
}
@@ -217,8 +208,6 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
this.groupId = null;
this.sharingType = null;
this.inheritedParentId = null;
- setCascadePermissionIsSet(false);
- this.cascadePermission = false;
setCreatedTimeIsSet(false);
this.createdTime = 0;
setUpdatedTimeIsSet(false);
@@ -353,29 +342,6 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
}
}
- public boolean isCascadePermission() {
- return this.cascadePermission;
- }
-
- public Sharing setCascadePermission(boolean cascadePermission) {
- this.cascadePermission = cascadePermission;
- setCascadePermissionIsSet(true);
- return this;
- }
-
- public void unsetCascadePermission() {
- __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __CASCADEPERMISSION_ISSET_ID);
- }
-
- /** Returns true if field cascadePermission is set (has been assigned a value) and false otherwise */
- public boolean isSetCascadePermission() {
- return EncodingUtils.testBit(__isset_bitfield, __CASCADEPERMISSION_ISSET_ID);
- }
-
- public void setCascadePermissionIsSet(boolean value) {
- __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __CASCADEPERMISSION_ISSET_ID, value);
- }
-
public long getCreatedTime() {
return this.createdTime;
}
@@ -464,14 +430,6 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
}
break;
- case CASCADE_PERMISSION:
- if (value == null) {
- unsetCascadePermission();
- } else {
- setCascadePermission((Boolean)value);
- }
- break;
-
case CREATED_TIME:
if (value == null) {
unsetCreatedTime();
@@ -508,9 +466,6 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
case INHERITED_PARENT_ID:
return getInheritedParentId();
- case CASCADE_PERMISSION:
- return isCascadePermission();
-
case CREATED_TIME:
return getCreatedTime();
@@ -538,8 +493,6 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
return isSetSharingType();
case INHERITED_PARENT_ID:
return isSetInheritedParentId();
- case CASCADE_PERMISSION:
- return isSetCascadePermission();
case CREATED_TIME:
return isSetCreatedTime();
case UPDATED_TIME:
@@ -606,15 +559,6 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
return false;
}
- boolean this_present_cascadePermission = true && this.isSetCascadePermission();
- boolean that_present_cascadePermission = true && that.isSetCascadePermission();
- if (this_present_cascadePermission || that_present_cascadePermission) {
- if (!(this_present_cascadePermission && that_present_cascadePermission))
- return false;
- if (this.cascadePermission != that.cascadePermission)
- return false;
- }
-
boolean this_present_createdTime = true && this.isSetCreatedTime();
boolean that_present_createdTime = true && that.isSetCreatedTime();
if (this_present_createdTime || that_present_createdTime) {
@@ -665,11 +609,6 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
if (present_inheritedParentId)
list.add(inheritedParentId);
- boolean present_cascadePermission = true && (isSetCascadePermission());
- list.add(present_cascadePermission);
- if (present_cascadePermission)
- list.add(cascadePermission);
-
boolean present_createdTime = true && (isSetCreatedTime());
list.add(present_createdTime);
if (present_createdTime)
@@ -741,16 +680,6 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
return lastComparison;
}
}
- lastComparison = Boolean.valueOf(isSetCascadePermission()).compareTo(other.isSetCascadePermission());
- if (lastComparison != 0) {
- return lastComparison;
- }
- if (isSetCascadePermission()) {
- lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.cascadePermission, other.cascadePermission);
- if (lastComparison != 0) {
- return lastComparison;
- }
- }
lastComparison = Boolean.valueOf(isSetCreatedTime()).compareTo(other.isSetCreatedTime());
if (lastComparison != 0) {
return lastComparison;
@@ -840,12 +769,6 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
}
first = false;
}
- if (isSetCascadePermission()) {
- if (!first) sb.append(", ");
- sb.append("cascadePermission:");
- sb.append(this.cascadePermission);
- first = false;
- }
if (isSetCreatedTime()) {
if (!first) sb.append(", ");
sb.append("createdTime:");
@@ -943,15 +866,7 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
- case 6: // CASCADE_PERMISSION
- if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
- struct.cascadePermission = iprot.readBool();
- struct.setCascadePermissionIsSet(true);
- } else {
- org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
- }
- break;
- case 7: // CREATED_TIME
+ case 6: // CREATED_TIME
if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
struct.createdTime = iprot.readI64();
struct.setCreatedTimeIsSet(true);
@@ -959,7 +874,7 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
- case 8: // UPDATED_TIME
+ case 7: // UPDATED_TIME
if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
struct.updatedTime = iprot.readI64();
struct.setUpdatedTimeIsSet(true);
@@ -1017,11 +932,6 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
oprot.writeFieldEnd();
}
}
- if (struct.isSetCascadePermission()) {
- oprot.writeFieldBegin(CASCADE_PERMISSION_FIELD_DESC);
- oprot.writeBool(struct.cascadePermission);
- oprot.writeFieldEnd();
- }
if (struct.isSetCreatedTime()) {
oprot.writeFieldBegin(CREATED_TIME_FIELD_DESC);
oprot.writeI64(struct.createdTime);
@@ -1065,16 +975,13 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
if (struct.isSetInheritedParentId()) {
optionals.set(4);
}
- if (struct.isSetCascadePermission()) {
- optionals.set(5);
- }
if (struct.isSetCreatedTime()) {
- optionals.set(6);
+ optionals.set(5);
}
if (struct.isSetUpdatedTime()) {
- optionals.set(7);
+ optionals.set(6);
}
- oprot.writeBitSet(optionals, 8);
+ oprot.writeBitSet(optionals, 7);
if (struct.isSetPermissionTypeId()) {
oprot.writeString(struct.permissionTypeId);
}
@@ -1090,9 +997,6 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
if (struct.isSetInheritedParentId()) {
oprot.writeString(struct.inheritedParentId);
}
- if (struct.isSetCascadePermission()) {
- oprot.writeBool(struct.cascadePermission);
- }
if (struct.isSetCreatedTime()) {
oprot.writeI64(struct.createdTime);
}
@@ -1104,7 +1008,7 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
@Override
public void read(org.apache.thrift.protocol.TProtocol prot, Sharing struct) throws org.apache.thrift.TException {
TTupleProtocol iprot = (TTupleProtocol) prot;
- BitSet incoming = iprot.readBitSet(8);
+ BitSet incoming = iprot.readBitSet(7);
if (incoming.get(0)) {
struct.permissionTypeId = iprot.readString();
struct.setPermissionTypeIdIsSet(true);
@@ -1126,14 +1030,10 @@ public class Sharing implements org.apache.thrift.TBase<Sharing, Sharing._Fields
struct.setInheritedParentIdIsSet(true);
}
if (incoming.get(5)) {
- struct.cascadePermission = iprot.readBool();
- struct.setCascadePermissionIsSet(true);
- }
- if (incoming.get(6)) {
struct.createdTime = iprot.readI64();
struct.setCreatedTimeIsSet(true);
}
- if (incoming.get(7)) {
+ if (incoming.get(6)) {
struct.updatedTime = iprot.readI64();
struct.setUpdatedTimeIsSet(true);
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/10f30a96/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/User.java
----------------------------------------------------------------------
diff --git a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/User.java b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/User.java
index 69be6e7..d37ff2a 100644
--- a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/User.java
+++ b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/User.java
@@ -34,7 +34,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-05")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-06")
public class User implements org.apache.thrift.TBase<User, User._Fields>, java.io.Serializable, Cloneable, Comparable<User> {
private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("User");
http://git-wip-us.apache.org/repos/asf/airavata/blob/10f30a96/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/UserGroup.java
----------------------------------------------------------------------
diff --git a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/UserGroup.java b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/UserGroup.java
index 0c481bb..f3a9a02 100644
--- a/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/UserGroup.java
+++ b/modules/sharing-registry/sharing-registry-stubs/src/main/java/org/apache/airavata/sharing/registry/models/UserGroup.java
@@ -34,7 +34,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-05")
+@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-10-06")
public class UserGroup implements org.apache.thrift.TBase<UserGroup, UserGroup._Fields>, java.io.Serializable, Cloneable, Comparable<UserGroup> {
private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("UserGroup");