public class UsersAndRoles
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
protected DbHelper |
dbHelper
The db helper.
|
protected org.apache.log4j.Logger |
logger
The logger.
|
protected static java.lang.String |
PROP_FILE
The Constant PROP_FILE.
|
protected static TraceLogBuffer |
trace
The trace.
|
| Constructor and Description |
|---|
UsersAndRoles()
Default ctor.
|
UsersAndRoles(java.lang.String host,
java.lang.String database,
java.lang.String driver,
java.lang.String user,
java.lang.String password)
Connect to the database.
|
| Modifier and Type | Method and Description |
|---|---|
DashInfoObject |
addDashboard(DashInfoObject dio)
Insert a user dashboard (Standalone).
|
protected int |
addDashboard(java.lang.String name,
int owner,
byte[] bytes,
int published)
Insert a dashboard (Standalone).
|
DashInfoObject |
addGroupDashboard(DashInfoObject dio)
Insert a group dashboard (Standalone).
|
SlideShowInfoObject |
addSlideShow(SlideShowInfoObject ssio)
Adds the slide show.
|
protected int |
addSlideShow(java.lang.String name,
int owner,
java.util.ArrayList<DashInfoObject> views,
boolean published)
Adds the slide show.
|
boolean |
addUser(UserInfoObject user)
Add a user to the table.
|
boolean |
addUserRole(int userID,
int roleID)
Standalone (Connect/Disconnect) Add a relationship between a user and a role.
|
protected boolean |
addUserRolePrivate(int userID,
int roleID)
Add a relationship between a user and a role.
|
UserInfoObject |
attemptAutoLogin()
Attempt auto login.
|
protected RoleTree |
buildRoleHierarchy()
Build a java tree based on the information in the role table (Standalone).
|
void |
checkForColumn(java.lang.String columnName,
java.lang.String tableName,
java.lang.String properties)
Check to see that a column in a table exists.
|
protected void |
connect()
Connect to the database using the properties file or default data
|
protected void |
connect(java.lang.String host,
java.lang.String database,
java.lang.String driver,
java.lang.String user,
java.lang.String password)
Connect to the database
|
void |
createDatabase()
(Standalone) Create database.
|
void |
createTables()
(Standalone) Create all the tables for this database.
|
java.lang.String |
deleteDashboard(DashInfoObject dio)
Delete dashboard.
|
boolean |
deleteDashboard(int id)
Delete dashboard.
|
boolean |
deleteRoleDashboards(int roleId)
Delete role dashboards.
|
boolean |
deleteSlideShow(int id)
Delete slide show.
|
boolean |
deleteUser(int id)
Delete the user information, based on id
|
protected void |
disconnect()
Disconnect from the database.
|
void |
dropDatabase()
(Standalone) Create database.
|
void |
dropTables()
(Standalone) Delete all the tables in this database.
|
java.util.List<RoleInfoObject> |
getAllRoles()
return all roles and related data (users and tables) from database
|
protected DbTable |
getAllRolesTable()
Return a DbTable with all role information (Not Standalone).
|
java.util.List<TableInfoObject> |
getAllTables()
return all Tables and related data (users and roles) from database
|
java.util.List<UserInfoObject> |
getAllUsers()
return all users and related data (roles and tables) from database
|
java.util.List<UserInfoObject> |
getAllUsersInfo()
return all users with roles and table information
|
java.util.List<UserInfoObject> |
getAllUsersRoles()
return all users and roles
|
DashInfoObject |
getDashboard(int id)
(Standalone).
|
FlexTreeObject |
getDashboardTree(java.lang.String mode)
(Standalone) Get a tree that organizes the dashboards by user.
|
DashInfoObject |
getGroupDashboard(int id)
(Standalone).
|
FlexTreeObject |
getGroupDashboardTree(UserInfoObject uio)
(Standalone) Get a tree that organizes the dashboards by role visible to user.
|
private java.lang.String |
getLoginByDN(java.lang.String userDN)
Gets the login by Distinguished Name.
|
int |
getRoleId(java.lang.String name)
Get the UID for a role by name (Standalone).
|
RoleInfoObject |
getRoleRoot()
(Standalone) get the Role Tree.
|
protected java.util.List<RoleInfoObject> |
getRolesByTable(int tableId)
return all roles matching table id
|
protected java.util.List<RoleInfoObject> |
getRolesByUser(int userId)
return all roles related to the UserId
|
java.util.List<java.lang.String> |
getRoleTables(RoleInfoObject role)
Gets the role tables.
|
FlexTreeObject |
getRoleTree()
Deprecated.
|
SlideShowInfoObject |
getSlideShow(int id)
Gets the slide show.
|
FlexTreeObject |
getSlideShowTree(java.lang.String mode)
Gets the slide show tree.
|
protected java.util.List<TableInfoObject> |
getTablesByRole(int roleId)
Gets the tables by role.
|
protected java.util.List<TableInfoObject> |
getTablesByUser(int userId)
return all tables matching user ID
|
FlexTreeObject |
getTablesTree(java.lang.String mode)
(Standalone) Get a tree that organises the dashboards.
|
protected UserInfoObject |
getUIO(java.lang.String login)
Gets the UserInfoObject associated with a login.
|
FlexTreeObject |
getUserDashboardTree(int id,
java.lang.String mode)
(Standalone).
|
private java.lang.String |
getUserDNfromSession(flex.messaging.FlexSession mySession)
Retrieves the user's Distinguished Name from the session.
|
UserInfoObject |
getUserInfo(java.lang.String login)
Gets the UserInfoObject associated with a login.
|
UserInfoObject |
getUserInfo(java.lang.String login,
boolean updateDN)
Gets the UserInfoObject associated with a login.
|
java.util.List<java.lang.String> |
getUserRoles(UserInfoObject user)
Gets the user roles.
|
protected java.util.List<UserInfoObject> |
getUsersByRole(int roleId)
returns all users matching role ID
|
protected java.util.List<UserInfoObject> |
getUsersByTable(int tableId)
return all users matching table ID
|
java.util.List<java.lang.String> |
getUserTables(UserInfoObject user)
returns list of tables matching users roles.
|
java.lang.String |
getVersion()
Simple method just to make sure that everything is working.
|
static void |
main(java.lang.String[] args)
The main method.
|
void |
printTable(java.lang.String tableName)
Print out the values of a table in the databse.
|
protected void |
saveSlides(java.sql.Connection conn,
int ssID,
java.util.ArrayList<DashInfoObject> slides)
Save slides.
|
void |
setRoleRoot(RoleInfoObject root)
Clear and repopulate the role table.
|
private boolean |
setUserDN(java.lang.String loginID,
java.lang.String userDN)
Updates the user_DN entry in the database.
|
DashInfoObject |
updateDashboard(DashInfoObject dio)
(Standalone) Update an existing dashboard.
|
RoleInfoObject |
updateRoleRelation(RoleInfoObject role)
Update role relation.
|
boolean |
updateRoleRoot(RoleInfoObject newRoot)
Update the current role tree based on the passed-in root.
|
boolean |
updateRoleTree(RoleInfoObject newRoot,
RoleInfoObject oldRoot)
Update the old role tree based on the new role tree.
|
SlideShowInfoObject |
updateSlideShow(SlideShowInfoObject ssio)
Update slide show.
|
TableInfoObject |
updateTableRelation(TableInfoObject table)
Update table relation.
|
void |
updateTables()
(Standalone) Create new tables that have been added to the database lately.
|
boolean |
updateUser(UserInfoObject user)
Standalone (connect and disconnect).
|
boolean |
updateUserPreferences(UserInfoObject user)
Standalone method to update user's xml that contains their preferences.
|
UserInfoObject |
updateUserRelation(UserInfoObject user)
update user related data (roles and tables)
|
void |
useConsoleLogger()
Use console logger.
|
protected DbHelper dbHelper
protected static TraceLogBuffer trace
protected static final java.lang.String PROP_FILE
protected org.apache.log4j.Logger logger
public UsersAndRoles()
public UsersAndRoles(java.lang.String host,
java.lang.String database,
java.lang.String driver,
java.lang.String user,
java.lang.String password)
throws java.lang.Exception
host - the hostdatabase - the databasedriver - the driveruser - the userpassword - the passwordjava.lang.Exception - the exceptionpublic void useConsoleLogger()
public java.lang.String getVersion()
public java.util.List<UserInfoObject> getAllUsers()
public java.util.List<RoleInfoObject> getAllRoles()
public java.util.List<TableInfoObject> getAllTables()
public java.util.List<UserInfoObject> getAllUsersRoles()
public java.util.List<UserInfoObject> getAllUsersInfo()
protected java.util.List<RoleInfoObject> getRolesByUser(int userId)
userId - - User Id to matchprotected java.util.List<RoleInfoObject> getRolesByTable(int tableId)
tableId - - table ID to matchprotected java.util.List<TableInfoObject> getTablesByUser(int userId)
userId - - user id to matchprotected java.util.List<UserInfoObject> getUsersByRole(int roleId)
roleId - - role ID to matchprotected java.util.List<UserInfoObject> getUsersByTable(int tableId)
tableId - - table ID to matchpublic UserInfoObject updateUserRelation(UserInfoObject user)
user - - user information to updateprotected UserInfoObject getUIO(java.lang.String login)
login - the loginpublic UserInfoObject getUserInfo(java.lang.String login)
login - the loginpublic UserInfoObject getUserInfo(java.lang.String login, boolean updateDN)
login - the loginupdateDN - the Distinguished Name flagpublic boolean addUser(UserInfoObject user)
user - the userpublic boolean deleteUser(int id)
id - the id of the user to deletepublic boolean updateUser(UserInfoObject user)
user - the userpublic boolean updateUserPreferences(UserInfoObject user)
user - the userpublic DashInfoObject addDashboard(DashInfoObject dio)
dio - - DashInfoObjectpublic DashInfoObject addGroupDashboard(DashInfoObject dio)
dio - - DashInfoObjectprotected int addDashboard(java.lang.String name,
int owner,
byte[] bytes,
int published)
name - the nameowner - the ownerbytes - the datapublished - true if published, false otherwisepublic DashInfoObject getDashboard(int id)
id - the idpublic DashInfoObject getGroupDashboard(int id)
id - the idpublic boolean deleteDashboard(int id)
id - the idpublic boolean deleteRoleDashboards(int roleId)
roleId - the role idpublic DashInfoObject updateDashboard(DashInfoObject dio)
dio - the diopublic java.lang.String deleteDashboard(DashInfoObject dio)
dio - the diopublic FlexTreeObject getDashboardTree(java.lang.String mode)
mode - the modepublic FlexTreeObject getTablesTree(java.lang.String mode)
mode - the modepublic FlexTreeObject getUserDashboardTree(int id, java.lang.String mode)
id - the idmode - the modepublic FlexTreeObject getGroupDashboardTree(UserInfoObject uio)
uio - - UserInfoObject with role informationpublic SlideShowInfoObject addSlideShow(SlideShowInfoObject ssio)
ssio - the ssioprotected int addSlideShow(java.lang.String name,
int owner,
java.util.ArrayList<DashInfoObject> views,
boolean published)
name - the nameowner - the ownerviews - the viewspublished - the publishedprotected void saveSlides(java.sql.Connection conn,
int ssID,
java.util.ArrayList<DashInfoObject> slides)
throws java.lang.Exception
conn - the database connectionssID - the slide show idslides - ArrayListjava.lang.Exception - if the DB prepared statement failspublic boolean deleteSlideShow(int id)
id - the id of the slide showpublic SlideShowInfoObject updateSlideShow(SlideShowInfoObject ssio)
ssio - the SlideShowInfoObjectpublic SlideShowInfoObject getSlideShow(int id)
id - the id of the slide showpublic FlexTreeObject getSlideShowTree(java.lang.String mode)
mode - (unused)protected java.util.List<TableInfoObject> getTablesByRole(int roleId)
roleId - the role idpublic TableInfoObject updateTableRelation(TableInfoObject table)
table - the tablepublic RoleInfoObject updateRoleRelation(RoleInfoObject role)
role - the rolepublic boolean addUserRole(int userID,
int roleID)
userID - the user idroleID - the role idprotected boolean addUserRolePrivate(int userID,
int roleID)
userID - the user idroleID - the role idpublic int getRoleId(java.lang.String name)
name - the nameprotected DbTable getAllRolesTable()
public FlexTreeObject getRoleTree()
public RoleInfoObject getRoleRoot()
public void setRoleRoot(RoleInfoObject root)
root - the new role rootprotected RoleTree buildRoleHierarchy()
public boolean updateRoleRoot(RoleInfoObject newRoot)
newRoot - the new rootpublic boolean updateRoleTree(RoleInfoObject newRoot, RoleInfoObject oldRoot)
newRoot - the new rootoldRoot - the old rootpublic java.util.List<java.lang.String> getUserTables(UserInfoObject user)
user - the userpublic java.util.List<java.lang.String> getUserRoles(UserInfoObject user)
user - the userpublic java.util.List<java.lang.String> getRoleTables(RoleInfoObject role)
role - the roleprotected void connect()
protected void connect(java.lang.String host,
java.lang.String database,
java.lang.String driver,
java.lang.String user,
java.lang.String password)
throws java.lang.Exception
host - the hostdatabase - the databasedriver - the driveruser - the userpassword - the passwordjava.lang.Exception - the exceptionprotected void disconnect()
public void checkForColumn(java.lang.String columnName,
java.lang.String tableName,
java.lang.String properties)
columnName - the column nametableName - the table nameproperties - the propertiespublic void dropTables()
public void createDatabase()
public void dropDatabase()
public void createTables()
public void updateTables()
public UserInfoObject attemptAutoLogin()
private java.lang.String getUserDNfromSession(flex.messaging.FlexSession mySession)
mySession - the FlexSessionprivate java.lang.String getLoginByDN(java.lang.String userDN)
userDN - the user Distinguished Nameprivate boolean setUserDN(java.lang.String loginID,
java.lang.String userDN)
loginID - the login iduserDN - the user Distinguished Namepublic void printTable(java.lang.String tableName)
tableName - the table namepublic static void main(java.lang.String[] args)
args - the arguments