List of usage examples for org.hibernate.envers AuditReader createQuery
AuditQueryCreator createQuery();
From source file:com.confighub.core.store.Store.java
License:Open Source License
public Collection<PropertyKey> getPropertiesKeys(final Repository repository, final Date time) throws ConfigException { AuditReader reader = AuditReaderFactory.get(em); Number rev = reader.getRevisionNumberForDate(time); AuditQuery query = reader.createQuery().forEntitiesAtRevision(PropertyKey.class, rev); query.add(AuditEntity.property("repository").eq(repository)); return query.getResultList(); }
From source file:com.confighub.core.store.Store.java
License:Open Source License
public SecurityProfile getSecurityProfile(final Repository repository, final Date date, final String spName) throws ConfigException { try {//ww w .j a va2 s . co m if (null == date) { return (SecurityProfile) em.createNamedQuery("SecurityProfile.byName") .setLockMode(LockModeType.NONE).setParameter("repository", repository) .setParameter("name", spName).getSingleResult(); } AuditReader reader = AuditReaderFactory.get(em); Number rev = reader.getRevisionNumberForDate(date); AuditQuery kq = reader.createQuery().forEntitiesAtRevision(SecurityProfile.class, rev); kq.add(AuditEntity.property("repository").eq(repository)); kq.add(AuditEntity.property("name").eq(spName)); SecurityProfile sp = (SecurityProfile) kq.getSingleResult(); return sp; } catch (NoResultException e) { return null; } catch (Exception e) { handleException(e); } return null; }
From source file:com.confighub.core.store.Store.java
License:Open Source License
private List<AuditRecord> getAuditCommits(List<RevisionEntry> revs) { AuditReader reader = AuditReaderFactory.get(em); List<AuditRecord> changes = new ArrayList<>(); for (RevisionEntry rt : revs) { String[] clazzesSplit = rt.getType().split(","); Set<Class> clazzes = new HashSet<>(); for (String cl : clazzesSplit) { clazzes.add(APersisted.ClassName.valueOf(cl).getClazz()); }//from ww w . j av a 2 s.c o m List<APersisted> results = new ArrayList<>(); for (Class clazz : clazzes) { AuditQuery query = reader.createQuery().forEntitiesModifiedAtRevision(clazz, rt.getId()); results.addAll(query.getResultList()); } changes.add(new AuditRecord(results, rt, get(UserAccount.class, rt.getUserId()), rt.getAppId())); } return changes; }
From source file:com.confighub.core.store.Store.java
License:Open Source License
public Property getAuditProperty(final Repository repository, final UserAccount user, final long propertyId, final long revId) throws ConfigException { try {//from w w w.j a v a2 s . c o m if (!repository.hasReadAccess(user)) { throw new ConfigException(Error.Code.USER_ACCESS_DENIED); } AuditReader reader = AuditReaderFactory.get(em); AuditQuery query = reader.createQuery().forRevisionsOfEntity(Property.class, true, true) .add(AuditEntity.revisionNumber().ge(revId)).add(AuditEntity.revisionNumber().le(revId)) .add(AuditEntity.property("repository").eq(repository)).add(AuditEntity.id().eq(propertyId)); return (Property) query.getSingleResult(); } catch (NoResultException e) { return null; } }
From source file:com.confighub.core.store.Store.java
License:Open Source License
public AbsoluteFilePath getAbsFilePath(final Repository repository, final String absPath, final Date date) { if (null == repository || Utils.isBlank(absPath)) { return null; }//w w w .j a va 2 s .com try { if (null == date) { return (AbsoluteFilePath) em.createNamedQuery("AbsFilePath.getByAbsPath") .setLockMode(LockModeType.NONE).setParameter("absPath", absPath) .setParameter("repository", repository).getSingleResult(); } AuditReader reader = AuditReaderFactory.get(em); Number rev = reader.getRevisionNumberForDate(null == date ? new Date() : date); AuditQuery kq = reader.createQuery().forEntitiesAtRevision(AbsoluteFilePath.class, rev); kq.add(AuditEntity.property("repository").eq(repository)); kq.add(AuditEntity.property("absPath").eq(absPath)); return (AbsoluteFilePath) kq.getSingleResult(); } catch (NoResultException e) { return null; } catch (Exception e) { handleException(e); return null; } }
From source file:com.confighub.core.store.Store.java
License:Open Source License
public RepoFile getRepoFile(final UserAccount user, final Repository repository, final Long fileId, final Date time) throws ConfigException { if (!repository.hasReadAccess(user)) { throw new ConfigException(Error.Code.USER_ACCESS_DENIED); }//from ww w . j a v a 2 s. c o m if (null == time) { RepoFile file = get(RepoFile.class, fileId); if (file.getRepository().equals(repository)) { return file; } else { throw new ConfigException(Error.Code.FILE_NOT_FOUND); } } AuditReader reader = AuditReaderFactory.get(em); Number rev = reader.getRevisionNumberForDate(time); AuditQuery query = reader.createQuery().forEntitiesAtRevision(RepoFile.class, rev); query.add(AuditEntity.property("repository").eq(repository)); query.add(AuditEntity.id().eq(fileId)); try { return (RepoFile) query.getSingleResult(); } catch (NoResultException e) { return null; } catch (Exception e) { handleException(e); return null; } }
From source file:com.confighub.core.store.Store.java
License:Open Source License
public Collection<RepoFile> getRepoFilesForAPI(final Repository repository, final Date date) throws ConfigException { if (null == repository) { throw new ConfigException(Error.Code.REPOSITORY_NOT_FOUND); }/*from www. j ava2 s . co m*/ if (null == date) { return repository.getFiles(); } try { AuditReader reader = AuditReaderFactory.get(em); Number rev = reader.getRevisionNumberForDate(date); AuditQuery query = reader.createQuery().forEntitiesAtRevision(RepoFile.class, rev) .add(AuditEntity.property("repository").eq(repository)); return query.getResultList(); } catch (NoResultException e) { return null; } catch (Exception e) { handleException(e); return null; } }
From source file:com.confighub.core.store.Store.java
License:Open Source License
public Collection<RepoFile> getRepoFiles(final Repository repository, final UserAccount user, final String searchTerm, final Date date) throws ConfigException { if (Utils.anyNull(repository)) { throw new ConfigException(Error.Code.MISSING_PARAMS); }/*from w w w . j av a2 s.c o m*/ // if (!repository.isDemo() && null == user) // throw new ConfigException(Error.Code.MISSING_PARAMS); // if (!repository.isDemo() && !repository.hasReadAccess(user)) { throw new ConfigException(Error.Code.USER_ACCESS_DENIED); } if (null == date) { if (Utils.isBlank(searchTerm)) { return repository.getFiles(); } else { try { return em.createNamedQuery("RepoFile.search").setLockMode(LockModeType.NONE) .setParameter("repository", repository) .setParameter("searchTerm", "%" + searchTerm + "%").getResultList(); } catch (NoResultException e) { return null; } catch (Exception e) { handleException(e); return null; } } } else { try { AuditReader reader = AuditReaderFactory.get(em); Number rev = reader.getRevisionNumberForDate(date); AuditQuery query = reader.createQuery().forEntitiesAtRevision(RepoFile.class, rev) .add(AuditEntity.property("repository").eq(repository)); if (!Utils.isBlank(searchTerm)) { query.add(AuditEntity.property("content").like("%" + searchTerm + "%")); } return query.getResultList(); } catch (NoResultException e) { return null; } catch (Exception e) { handleException(e); return null; } } }
From source file:com.confighub.core.store.Store.java
License:Open Source License
public RepoFile getAuditConfigFile(final UserAccount user, final Repository repository, final Long fileId, final Long revId) throws ConfigException { try {/*from ww w. j av a2s .c om*/ if (!repository.hasReadAccess(user)) { throw new ConfigException(Error.Code.USER_ACCESS_DENIED); } AuditReader reader = AuditReaderFactory.get(em); AuditQuery query = reader.createQuery().forRevisionsOfEntity(RepoFile.class, true, true) .add(AuditEntity.revisionNumber().ge(revId)).add(AuditEntity.revisionNumber().le(revId)) .add(AuditEntity.property("repository").eq(repository)).add(AuditEntity.id().eq(fileId)); return (RepoFile) query.getSingleResult(); } catch (NoResultException e) { return null; } catch (Exception e) { handleException(e); return null; } }
From source file:com.confighub.core.store.Store.java
License:Open Source License
public List<PropertyKey> getKeys(final UserAccount user, final Repository repository, final Collection<String> keys, final Date time) throws ConfigException { if (Utils.anyNull(repository, keys)) { throw new ConfigException(Error.Code.MISSING_PARAMS); }//from w w w.j ava 2 s. com if (!repository.hasReadAccess(user)) { throw new ConfigException(Error.Code.USER_ACCESS_DENIED); } if (null == time) { Collection<String> upperKeys = new ArrayList<>(); keys.forEach(k -> upperKeys.add(k.toUpperCase())); try { return em.createNamedQuery("Key.getKeys").setLockMode(LockModeType.NONE) .setParameter("repository", repository).setParameter("keys", upperKeys).getResultList(); } catch (NoResultException e) { return Collections.EMPTY_LIST; } catch (Exception e) { handleException(e); return Collections.EMPTY_LIST; } } AuditReader reader = AuditReaderFactory.get(em); Number rev = reader.getRevisionNumberForDate(time); AuditQuery query = reader.createQuery().forEntitiesAtRevision(PropertyKey.class, rev); query.add(AuditEntity.property("repository").eq(repository)); query.add(AuditEntity.property("key").in(keys)); try { return query.getResultList(); } catch (NoResultException e) { return null; } catch (Exception e) { handleException(e); return null; } }