2010-05-29 20:47:04 +02:00
|
|
|
/*
|
|
|
|
* Copyright (c) 2010
|
|
|
|
*
|
|
|
|
* Robert von Burg
|
|
|
|
* eitch@eitchnet.ch
|
|
|
|
*
|
|
|
|
* All rights reserved.
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
package ch.eitchnet.privilege.handler;
|
|
|
|
|
2010-06-05 23:33:30 +02:00
|
|
|
import ch.eitchnet.privilege.base.PrivilegeContainer;
|
2010-06-03 22:37:00 +02:00
|
|
|
import ch.eitchnet.privilege.base.PrivilegeContainerObject;
|
|
|
|
import ch.eitchnet.privilege.model.Certificate;
|
|
|
|
import ch.eitchnet.privilege.model.internal.Privilege;
|
|
|
|
import ch.eitchnet.privilege.model.internal.Role;
|
2010-05-29 20:47:04 +02:00
|
|
|
import ch.eitchnet.privilege.model.internal.User;
|
|
|
|
|
|
|
|
/**
|
2010-06-05 23:33:30 +02:00
|
|
|
* TODO {@link PersistenceHandler} may not be freely accessible via {@link PrivilegeContainer}
|
|
|
|
*
|
2010-05-29 20:47:04 +02:00
|
|
|
* @author rvonburg
|
2010-05-31 21:34:26 +02:00
|
|
|
*
|
2010-05-29 20:47:04 +02:00
|
|
|
*/
|
2010-06-03 22:37:00 +02:00
|
|
|
public interface PersistenceHandler extends PrivilegeContainerObject {
|
|
|
|
|
|
|
|
public User getUser(String username);
|
2010-06-06 21:11:36 +02:00
|
|
|
|
|
|
|
public void addOrReplaceUser(Certificate certificate, User user);
|
2010-06-03 22:37:00 +02:00
|
|
|
|
|
|
|
public Role getRole(String roleName);
|
|
|
|
|
2010-06-06 21:11:36 +02:00
|
|
|
public void addOrReplaceRole(Certificate certificate, Role role);
|
2010-05-29 20:47:04 +02:00
|
|
|
|
2010-06-03 22:37:00 +02:00
|
|
|
public Privilege getPrivilege(String privilegeName);
|
2010-05-31 21:34:26 +02:00
|
|
|
|
2010-06-06 21:11:36 +02:00
|
|
|
public void addOrReplacePrivilege(Certificate certificate, Privilege privilege);
|
2010-05-31 21:34:26 +02:00
|
|
|
|
2010-06-03 22:37:00 +02:00
|
|
|
public void persist(Certificate certificate);
|
2010-05-29 20:47:04 +02:00
|
|
|
}
|