Skip to content
Snippets Groups Projects
Commit 5207fdbb authored by gpawel's avatar gpawel
Browse files

bugfix: fixing authorization predicate

SVN: 27075
parent c4c5f9ea
No related branches found
No related tags found
No related merge requests found
...@@ -16,41 +16,28 @@ ...@@ -16,41 +16,28 @@
package ch.systemsx.cisd.openbis.generic.server.authorization.predicate; package ch.systemsx.cisd.openbis.generic.server.authorization.predicate;
import java.util.List; import ch.systemsx.cisd.openbis.generic.shared.basic.TechId;
import ch.systemsx.cisd.common.exception.Status;
import ch.systemsx.cisd.openbis.generic.server.authorization.IAuthorizationDataProvider;
import ch.systemsx.cisd.openbis.generic.server.authorization.RoleWithIdentifier;
import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Metaproject; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Metaproject;
import ch.systemsx.cisd.openbis.generic.shared.dto.PersonPE;
/** /**
* @author Pawel Glyzewski * @author Pawel Glyzewski
*/ */
public class MetaprojectPredicate extends AbstractPredicate<Metaproject> public class MetaprojectPredicate extends DelegatedPredicate<TechId, Metaproject>
{ {
@Override public MetaprojectPredicate()
public void init(IAuthorizationDataProvider provider)
{ {
super(new MetaprojectTechIdPredicate());
} }
@Override @Override
public String getCandidateDescription() public TechId tryConvert(Metaproject value)
{ {
return "Metaproject"; return new TechId(value.getId());
} }
@Override @Override
protected Status doEvaluation(PersonPE person, List<RoleWithIdentifier> allowedRoles, public String getCandidateDescription()
Metaproject metaproject)
{ {
if (person.getUserId().equals(metaproject.getOwnerId())) return "Metaproject";
{
return Status.OK;
}
return Status.createError(String.format(
"User '%s' is not an owner of the metaproject '%s'.", person.getUserId(),
metaproject.getName()));
} }
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment