/** * @see org.opencms.main.CmsException#createException(org.opencms.i18n.CmsMessageContainer, java.lang.Throwable) */ @Override public CmsException createException(CmsMessageContainer container, Throwable cause) { return new CmsDbEntryNotFoundException(container, cause); } }
/** * @see org.opencms.main.CmsException#createException(org.opencms.i18n.CmsMessageContainer, java.lang.Throwable) */ @Override public CmsException createException(CmsMessageContainer container, Throwable cause) { return new CmsDbEntryNotFoundException(container, cause); } }
/** * @see org.opencms.db.I_CmsHistoryDriver#readProject(org.opencms.db.CmsDbContext, int) */ public CmsHistoryProject readProject(CmsDbContext dbc, int publishTag) throws CmsDataAccessException { CmsHistoryProject project = null; try { Query q = m_sqlManager.createQuery(dbc, C_PROJECTS_HISTORY_READ); q.setParameter(1, Integer.valueOf(publishTag)); try { CmsDAOHistoryProjects hp = (CmsDAOHistoryProjects)q.getSingleResult(); List<String> projectresources = readProjectResources(dbc, publishTag); project = internalCreateProject(hp, projectresources); } catch (NoResultException e) { throw new CmsDbEntryNotFoundException( Messages.get().container(Messages.ERR_NO_HISTORY_PROJECT_WITH_TAG_ID_1, new Integer(publishTag))); } } catch (PersistenceException e) { throw new CmsDataAccessException(Messages.get().container(Messages.ERR_JPA_PERSITENCE_1, e), e); } return project; }
/** * @see org.opencms.db.I_CmsUserDriver#readUser(org.opencms.db.CmsDbContext, java.lang.String, java.lang.String, String) */ public CmsUser readUser(CmsDbContext dbc, String userFqn, String password, String remoteAddress) throws CmsDataAccessException, CmsPasswordEncryptionException { CmsUser user = readUser(dbc, userFqn); if (OpenCms.getPasswordHandler().checkPassword(password, user.getPassword(), true)) { return user; } else { CmsMessageContainer message = org.opencms.db.Messages.get().container( org.opencms.db.Messages.ERR_UNKNOWN_USER_1, userFqn); if (LOG.isDebugEnabled()) { LOG.debug(message.key()); } throw new CmsDbEntryNotFoundException(message); } }
/** * @see org.opencms.db.I_CmsProjectDriver#readProject(org.opencms.db.CmsDbContext, CmsUUID) */ public CmsProject readProject(CmsDbContext dbc, CmsUUID id) throws CmsDataAccessException { CmsProject project = null; try { Query q = m_sqlManager.createQuery(dbc, C_PROJECTS_READ_1); q.setParameter(1, id.toString()); try { CmsDAOProjects p = (CmsDAOProjects)q.getSingleResult(); project = internalCreateProject(p); } catch (NoResultException e) { throw new CmsDbEntryNotFoundException( Messages.get().container(Messages.ERR_NO_PROJECT_WITH_ID_1, String.valueOf(id))); } } catch (PersistenceException e) { throw new CmsDataAccessException(Messages.get().container(Messages.ERR_JPA_PERSITENCE_1, e), e); } return project; }
/** * @see org.opencms.db.I_CmsProjectDriver#readProject(org.opencms.db.CmsDbContext, java.lang.String) */ public CmsProject readProject(CmsDbContext dbc, String projectFqn) throws CmsDataAccessException { CmsProject project = null; try { Query q = m_sqlManager.createQuery(dbc, C_PROJECTS_READ_BYNAME_2); q.setParameter(1, CmsOrganizationalUnit.getSimpleName(projectFqn)); q.setParameter(2, CmsOrganizationalUnit.SEPARATOR + CmsOrganizationalUnit.getParentFqn(projectFqn)); try { CmsDAOProjects p = (CmsDAOProjects)q.getSingleResult(); project = internalCreateProject(p); } catch (NoResultException e) { throw new CmsDbEntryNotFoundException( Messages.get().container(Messages.ERR_NO_PROJECT_WITH_NAME_1, projectFqn)); } } catch (PersistenceException e) { throw new CmsDataAccessException(Messages.get().container(Messages.ERR_JPA_PERSITENCE_1, e), e); } return project; }
/** * Utility function to read a principal by its id from the OpenCms database using the * provided OpenCms user context.<p> * * @param cms the OpenCms user context to use when reading the principal * @param id the id of the principal to read * * @return the principal read from the OpenCms database * * @throws CmsException in case the principal could not be read */ public static I_CmsPrincipal readPrincipal(CmsObject cms, CmsUUID id) throws CmsException { try { // first try to read the principal as a user return cms.readUser(id); } catch (CmsException exc) { // assume user does not exist } try { // now try to read the principal as a group return cms.readGroup(id); } catch (CmsException exc) { // assume group does not exist } // invalid principal name was given throw new CmsDbEntryNotFoundException(Messages.get().container(Messages.ERR_INVALID_PRINCIPAL_1, id)); }
/** * @see org.opencms.db.I_CmsUserDriver#readAccessControlEntry(org.opencms.db.CmsDbContext, org.opencms.file.CmsProject, org.opencms.util.CmsUUID, org.opencms.util.CmsUUID) */ public CmsAccessControlEntry readAccessControlEntry( CmsDbContext dbc, CmsProject project, CmsUUID resource, CmsUUID principal) throws CmsDataAccessException { CmsAccessControlEntry ace = null; try { Query q = m_sqlManager.createQuery(dbc, project, C_ACCESS_READ_ENTRY_2); q.setParameter(1, resource.toString()); q.setParameter(2, principal.toString()); try { I_CmsDAOAccessControl ac = (I_CmsDAOAccessControl)q.getSingleResult(); ace = internalCreateAce(ac); } catch (NoResultException e) { throw new CmsDbEntryNotFoundException( Messages.get().container(Messages.ERR_NO_ACE_FOUND_2, resource, principal)); } return ace; } catch (PersistenceException e) { throw new CmsDataAccessException(Messages.get().container(Messages.ERR_JPA_PERSITENCE_1, e), e); } }
/** * @see org.opencms.db.I_CmsUserDriver#readUser(org.opencms.db.CmsDbContext, org.opencms.util.CmsUUID) */ public CmsUser readUser(CmsDbContext dbc, CmsUUID id) throws CmsDataAccessException { CmsUser user = null; try { CmsDAOUsers u = m_sqlManager.find(dbc, CmsDAOUsers.class, id.toString()); if (u != null) { user = internalCreateUser(dbc, u); } else { CmsMessageContainer message = Messages.get().container(Messages.ERR_NO_USER_WITH_ID_1, id); if (LOG.isDebugEnabled()) { LOG.debug(message.key()); } throw new CmsDbEntryNotFoundException(message); } return user; } catch (PersistenceException e) { throw new CmsDataAccessException(Messages.get().container(Messages.ERR_JPA_PERSITENCE_1, e), e); } }
/** * @see org.opencms.db.I_CmsUserDriver#readGroup(org.opencms.db.CmsDbContext, org.opencms.util.CmsUUID) */ public CmsGroup readGroup(CmsDbContext dbc, CmsUUID groupId) throws CmsDataAccessException { CmsGroup group = null; try { CmsDAOGroups g = m_sqlManager.find(dbc, CmsDAOGroups.class, groupId.toString()); if (g != null) { group = internalCreateGroup(g); } else { CmsMessageContainer message = Messages.get().container(Messages.ERR_NO_GROUP_WITH_ID_1, groupId); if (LOG.isDebugEnabled()) { LOG.debug(message.key()); } throw new CmsDbEntryNotFoundException(message); } } catch (PersistenceException e) { throw new CmsDataAccessException(Messages.get().container(Messages.ERR_JPA_PERSITENCE_1, e), e); } return group; }
/** * @see org.opencms.db.I_CmsProjectDriver#readPublishJob(org.opencms.db.CmsDbContext, org.opencms.util.CmsUUID) */ public CmsPublishJobInfoBean readPublishJob(CmsDbContext dbc, CmsUUID publishHistoryId) throws CmsDataAccessException { CmsPublishJobInfoBean result = null; try { Query q = m_sqlManager.createQuery(dbc, C_PUBLISHJOB_READ_JOB); q.setParameter(1, publishHistoryId.toString()); try { CmsDAOPublishJobs pj = (CmsDAOPublishJobs)q.getSingleResult(); result = createPublishJobInfoBean(pj); } catch (NoResultException e) { throw new CmsDbEntryNotFoundException( Messages.get().container(Messages.ERR_READ_PUBLISH_JOB_1, publishHistoryId.toString())); } } catch (PersistenceException e) { throw new CmsDataAccessException(Messages.get().container(Messages.ERR_JPA_PERSITENCE_1, e), e); } return result; }
/** * @see org.opencms.db.I_CmsUserDriver#readOrganizationalUnit(org.opencms.db.CmsDbContext, String) */ public CmsOrganizationalUnit readOrganizationalUnit(CmsDbContext dbc, String ouFqn) throws CmsDataAccessException { try { CmsResource resource = m_driverManager.readResource( dbc, ORGUNIT_BASE_FOLDER + ouFqn, CmsResourceFilter.DEFAULT); return internalCreateOrgUnitFromResource(dbc, resource); } catch (CmsVfsResourceNotFoundException e) { throw new CmsDbEntryNotFoundException(Messages.get().container(Messages.ERR_READ_ORGUNIT_1, ouFqn), e); } catch (CmsException e) { throw new CmsDataAccessException(e.getMessageContainer(), e); } }
/** * @see org.opencms.db.I_CmsUserDriver#readOrganizationalUnit(org.opencms.db.CmsDbContext, String) */ public CmsOrganizationalUnit readOrganizationalUnit(CmsDbContext dbc, String ouFqn) throws CmsDataAccessException { try { CmsResource resource = m_driverManager.readResource( dbc, ORGUNIT_BASE_FOLDER + ouFqn, CmsResourceFilter.DEFAULT); return internalCreateOrgUnitFromResource(dbc, resource); } catch (CmsVfsResourceNotFoundException e) { throw new CmsDbEntryNotFoundException(Messages.get().container(Messages.ERR_READ_ORGUNIT_1, ouFqn), e); } catch (CmsException e) { throw new CmsDataAccessException(e.getMessageContainer(), e); } }
/** * @see org.opencms.db.I_CmsUserDriver#readOrganizationalUnit(org.opencms.db.CmsDbContext, String) */ public CmsOrganizationalUnit readOrganizationalUnit(CmsDbContext dbc, String ouFqn) throws CmsDataAccessException { try { CmsResource resource = m_driverManager.readResource( dbc, ORGUNIT_BASE_FOLDER + ouFqn, CmsResourceFilter.DEFAULT); return internalCreateOrgUnitFromResource(dbc, resource); } catch (CmsVfsResourceNotFoundException e) { throw new CmsDbEntryNotFoundException(Messages.get().container(Messages.ERR_READ_ORGUNIT_1, ouFqn), e); } catch (CmsException e) { throw new CmsDataAccessException(e.getMessageContainer(), e); } }
/** * @see org.opencms.db.I_CmsHistoryDriver#readProject(org.opencms.db.CmsDbContext, CmsUUID) */ public CmsHistoryProject readProject(CmsDbContext dbc, CmsUUID projectId) throws CmsDataAccessException { CmsHistoryProject project = null; try { Query q = m_sqlManager.createQuery(dbc, C_PROJECTS_HISTORY_READ_BYID); q.setParameter(1, projectId.toString()); try { CmsDAOHistoryProjects hp = (CmsDAOHistoryProjects)q.getSingleResult(); int tag = hp.getPublishTag(); List<String> projectresources = readProjectResources(dbc, tag); project = internalCreateProject(hp, projectresources); } catch (NoResultException e) { throw new CmsDbEntryNotFoundException( Messages.get().container(Messages.ERR_NO_HISTORY_PROJECT_WITH_ID_1, projectId)); } } catch (PersistenceException e) { throw new CmsDataAccessException(Messages.get().container(Messages.ERR_JPA_PERSITENCE_1, e), e); } return project; }
/** * @see org.opencms.db.I_CmsUserDriver#writeGroup(org.opencms.db.CmsDbContext, org.opencms.file.CmsGroup) */ public void writeGroup(CmsDbContext dbc, CmsGroup group) throws CmsDataAccessException { PreparedStatement stmt = null; Connection conn = null; if (group != null) { try { conn = getSqlManager().getConnection(dbc); stmt = m_sqlManager.getPreparedStatement(conn, "C_GROUPS_WRITE_GROUP_4"); stmt.setString(1, m_sqlManager.validateEmpty(group.getDescription())); stmt.setInt(2, group.getFlags()); stmt.setString(3, group.getParentId().toString()); stmt.setString(4, group.getId().toString()); stmt.executeUpdate(); } catch (SQLException e) { throw new CmsDbSqlException( Messages.get().container(Messages.ERR_GENERIC_SQL_1, CmsDbSqlException.getErrorQuery(stmt)), e); } finally { m_sqlManager.closeAll(dbc, conn, stmt, null); } } else { throw new CmsDbEntryNotFoundException( org.opencms.db.Messages.get().container(org.opencms.db.Messages.ERR_UNKNOWN_GROUP_1, "null")); } }
/** * @see org.opencms.db.I_CmsHistoryDriver#readPropertyDefinition(org.opencms.db.CmsDbContext, java.lang.String) */ public CmsPropertyDefinition readPropertyDefinition(CmsDbContext dbc, String name) throws CmsDataAccessException { CmsPropertyDefinition propDef = null; try { Query q = m_sqlManager.createQuery(dbc, C_PROPERTYDEF_READ_HISTORY); q.setParameter(1, name); try { CmsDAOHistoryPropertyDef hpd = (CmsDAOHistoryPropertyDef)q.getSingleResult(); propDef = new CmsPropertyDefinition( new CmsUUID(hpd.getPropertyDefId()), hpd.getPropertyDefName(), CmsPropertyDefinition.CmsPropertyType.valueOf(hpd.getPropertyDefType())); } catch (NoResultException e) { throw new CmsDbEntryNotFoundException( Messages.get().container(Messages.ERR_NO_PROPERTYDEF_WITH_NAME_1, name)); } } catch (PersistenceException e) { throw new CmsDataAccessException(Messages.get().container(Messages.ERR_JPA_PERSITENCE_1, e), e); } return propDef; }
/** * @see org.opencms.db.I_CmsVfsDriver#readPropertyDefinition(org.opencms.db.CmsDbContext, java.lang.String, CmsUUID) */ public CmsPropertyDefinition readPropertyDefinition(CmsDbContext dbc, String name, CmsUUID projectId) throws CmsDataAccessException { CmsPropertyDefinition propDef = null; try { Query q = m_sqlManager.createQuery(dbc, projectId, C_PROPERTYDEF_READ); q.setParameter(1, name); try { I_CmsDAOPropertyDef pd = (I_CmsDAOPropertyDef)q.getSingleResult(); propDef = new CmsPropertyDefinition( new CmsUUID(pd.getPropertyDefId()), pd.getPropertyDefName(), CmsPropertyDefinition.CmsPropertyType.valueOf(pd.getPropertyDefType())); } catch (NoResultException e) { throw new CmsDbEntryNotFoundException( Messages.get().container(Messages.ERR_NO_PROPERTYDEF_WITH_NAME_1, name)); } } catch (PersistenceException e) { throw new CmsDataAccessException(Messages.get().container(Messages.ERR_JPA_PERSITENCE_1, e), e); } return propDef; }
/** * Utility function to read a prefixed principal from the OpenCms database using the * provided OpenCms user context.<p> * * The principal must be either prefixed with <code>{@link I_CmsPrincipal#PRINCIPAL_GROUP}.</code> or * <code>{@link I_CmsPrincipal#PRINCIPAL_USER}.</code>.<p> * * @param cms the OpenCms user context to use when reading the principal * @param name the prefixed principal name * * @return the principal read from the OpenCms database * * @throws CmsException in case the principal could not be read */ public static I_CmsPrincipal readPrefixedPrincipal(CmsObject cms, String name) throws CmsException { if (CmsGroup.hasPrefix(name)) { // this principal is a group return cms.readGroup(CmsGroup.removePrefix(name)); } else if (CmsUser.hasPrefix(name)) { // this principal is a user return cms.readUser(CmsUser.removePrefix(name)); } // invalid principal name was given throw new CmsDbEntryNotFoundException(Messages.get().container(Messages.ERR_INVALID_PRINCIPAL_1, name)); }
/** * @see org.opencms.db.I_CmsUserDriver#writeGroup(org.opencms.db.CmsDbContext, org.opencms.file.CmsGroup) */ public void writeGroup(CmsDbContext dbc, CmsGroup group) throws CmsDataAccessException { if (group != null) { try { Query q = m_sqlManager.createQuery(dbc, C_GROUPS_WRITE_GROUP_4); q.setParameter(1, group.getId().toString()); List<CmsDAOGroups> res = q.getResultList(); for (CmsDAOGroups g : res) { g.setGroupDescription(m_sqlManager.validateEmpty(group.getDescription())); g.setGroupFlags(group.getFlags()); g.setParentGroupId(group.getParentId().toString()); } } catch (PersistenceException e) { throw new CmsDataAccessException(Messages.get().container(Messages.ERR_JPA_PERSITENCE_1, e), e); } } else { throw new CmsDbEntryNotFoundException( org.opencms.db.Messages.get().container(org.opencms.db.Messages.ERR_UNKNOWN_GROUP_1, "null")); } }