@@ -72,9 +72,14 @@ public String getRoleName() {
7272
7373 @ Override
7474 public void execute () {
75- if (getProjectId () != null && _projectService .getProject (getProjectId ()) == null ) {
76- throw new InvalidParameterValueException ("Failed to find project by ID." );
75+ Project project = null ;
76+ if (getProjectId () != null && getProjectId () > 0 ) {
77+ project = _projectService .getProject (getProjectId ());
78+ if (project == null ) {
79+ throw new InvalidParameterValueException ("Unable to find project by ID." );
80+ }
7781 }
82+ final String projectUuid = project != null ? project .getUuid () : null ;
7883 List <ProjectRole > projectRoles ;
7984 if (getProjectId () != null && getProjectRoleId () != null ) {
8085 projectRoles = Collections .singletonList (projRoleService .findProjectRole (getProjectRoleId (), getProjectId ()));
@@ -89,17 +94,17 @@ public void execute() {
8994 if (role == null ) {
9095 continue ;
9196 }
92- roleResponses .add (setupProjectRoleResponse (role ));
97+ roleResponses .add (setupProjectRoleResponse (role , projectUuid ));
9398 }
9499 response .setResponses (roleResponses );
95100 response .setResponseName (getCommandName ());
96101 setResponseObject (response );
97102 }
98103
99- private ProjectRoleResponse setupProjectRoleResponse (final ProjectRole role ) {
104+ private ProjectRoleResponse setupProjectRoleResponse (final ProjectRole role , final String projectUuid ) {
100105 final ProjectRoleResponse response = new ProjectRoleResponse ();
101106 response .setId (role .getUuid ());
102- response .setProjectId (_projectService . getProject ( role . getProjectId ()). getUuid () );
107+ response .setProjectId (projectUuid );
103108 response .setRoleName (role .getName ());
104109 response .setDescription (role .getDescription ());
105110 response .setObjectName ("projectrole" );
@@ -111,3 +116,4 @@ public long getEntityOwnerId() {
111116 return CallContext .current ().getCallingAccountId ();
112117 }
113118}
119+ }
0 commit comments