protected void enableDataSharing( User user, IdentifiableObject object, String access ) { object.getUserAccesses().clear(); UserAccess userAccess = new UserAccess(); userAccess.setUser( user ); userAccess.setAccess( access ); object.getUserAccesses().add( userAccess ); } }
@Override public <T extends IdentifiableObject> void clearSharing( T object, User user ) { if ( object == null || !isShareable( object.getClass() ) || user == null ) { return; } BaseIdentifiableObject baseIdentifiableObject = (BaseIdentifiableObject) object; baseIdentifiableObject.setUser( user ); baseIdentifiableObject.setPublicAccess( AccessStringHelper.DEFAULT ); baseIdentifiableObject.setExternalAccess( false ); object.getUserAccesses().clear(); object.getUserGroupAccesses().clear(); }
@Override public void updateSharingForMentions( Interpretation interpretation, Set<User> users ) { for ( User user : users ) { if ( !aclService.canRead( user, interpretation.getObject() ) ) { interpretation.getObject().getUserAccesses().add( new UserAccess( user, AccessStringHelper.READ ) ); } } }
@Override public <T extends IdentifiableObject> void resetSharing( T object, User user ) { if ( object == null || !isShareable( object.getClass() ) || user == null ) { return; } BaseIdentifiableObject baseIdentifiableObject = (BaseIdentifiableObject) object; baseIdentifiableObject.setPublicAccess( AccessStringHelper.DEFAULT ); baseIdentifiableObject.setExternalAccess( false ); if ( object.getUser() == null ) { baseIdentifiableObject.setUser( user ); } if ( canMakePublic( user, object.getClass() ) ) { if ( defaultPublic( object.getClass() ) ) { baseIdentifiableObject.setPublicAccess( AccessStringHelper.READ_WRITE ); } } object.getUserAccesses().clear(); object.getUserGroupAccesses().clear(); }
for ( UserAccess userAccess : object.getUserAccesses() )
object.getUserAccesses().stream() .filter( userGroupAccess -> !skipSharing && userGroupAccess.getUser() != null && preheat.get( identifier, userGroupAccess.getUser() ) == null ) .forEach( userAccesses -> preheatErrorReports.add( new PreheatErrorReport( identifier, object.getClass(), ErrorCode.E5002,
for ( UserAccess userAccess : object.getUserAccesses() )
object.getUserAccesses().forEach( ua ->
identifiableObject.getAttributeValues().forEach( av -> addIdentifiers( map, av.getAttribute() ) ); identifiableObject.getUserGroupAccesses().forEach( uga -> addIdentifiers( map, uga.getUserGroup() ) ); identifiableObject.getUserAccesses().forEach( ua -> addIdentifiers( map, ua.getUser() ) );