alsutton/enterprisepasswordsafe

View on GitHub
src/main/java/com/enterprisepasswordsafe/database/schema/AccessControlDAOInterface.java

Summary

Maintainability
A
0 mins
Test Coverage
package com.enterprisepasswordsafe.database.schema;

import com.enterprisepasswordsafe.database.AccessControledObject;
import com.enterprisepasswordsafe.database.EntityWithAccessRights;
import com.enterprisepasswordsafe.database.Password;
import com.enterprisepasswordsafe.engine.accesscontrol.AccessControl;
import com.enterprisepasswordsafe.engine.accesscontrol.PasswordPermission;

import java.io.UnsupportedEncodingException;
import java.security.GeneralSecurityException;
import java.sql.SQLException;

public interface AccessControlDAOInterface<T extends EntityWithAccessRights, U extends AccessControl> {
    U create(T entity, AccessControledObject object, PasswordPermission permission)
            throws SQLException, UnsupportedEncodingException, GeneralSecurityException;
    void write(T entity, U accessControl)
            throws SQLException, GeneralSecurityException;
    void update(T entity, U accessControl)
            throws SQLException, GeneralSecurityException;
    U get(T entity, AccessControledObject item) throws SQLException, GeneralSecurityException;
}