[jboss-cvs] jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/dao ...
Christian Bauer
christian at hibernate.org
Thu Apr 19 14:36:12 EDT 2007
User: cbauer
Date: 07/04/19 14:36:12
Modified: examples/wiki/src/main/org/jboss/seam/wiki/core/dao
NodeDAO.java FeedDAO.java UserDAO.java
Log:
Finalized 'deletion' of stuff with updated FK constraint rules, now required the very latest Hibernate JARs
Revision Changes Path
1.12 +1 -47 jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/dao/NodeDAO.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: NodeDAO.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/dao/NodeDAO.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -b -r1.11 -r1.12
--- NodeDAO.java 19 Apr 2007 09:32:08 -0000 1.11
+++ NodeDAO.java 19 Apr 2007 18:36:12 -0000 1.12
@@ -176,13 +176,6 @@
getSession().evict(historicalNode);
}
- public int removeHistoricalNodes(Node node) {
- if (node == null) return 0;
- return getSession().createQuery("delete from HistoricalNode n where n.nodeId = :nodeId")
- .setParameter("nodeId", node.getId())
- .executeUpdate();
- }
-
@SuppressWarnings({"unchecked"})
public List<Node> findHistoricalNodes(Node node) {
if (node == null) return null;
@@ -191,45 +184,6 @@
.list();
}
- // TODO: Although it seem like a good idea this is broken until I implement ON CASCADE DELETE on the foreign keys
- public void removeChildNodes(Directory dir) {
- throw new UnsupportedOperationException("Not implemented, see TODO");
- /*
- entityManager.joinTransaction();
-
- // Find all the parents of this area whose children we should NOT delete
- List<Long> excludeIdentifiers = new ArrayList<Long>();
- Directory temp = dir;
- while (temp.getParent() != null && temp.getParent().getId() != null) {
- excludeIdentifiers.add(temp.getParent().getId());
- temp = temp.getParent();
- }
-
- // Avoid FK violation if one of the child nodes is the default document of the directory
- entityManager.createQuery("update Node n set n.defaultDocument = null where n = :node").setParameter("node", dir).executeUpdate();
-
- System.out.println("################# DELETING FILES");
- // Delete all records from the File secondary table
- ((Session)entityManager.getDelegate())
- .createQuery("delete from File f where f.areaNumber = :area" +
- " and f.parent.id not in (:excludedIdentifiers)")
- .setParameter("area", dir.getAreaNumber())
- .setParameterList("excludedIdentifiers", excludeIdentifiers)
- .executeUpdate();
-
- System.out.println("################# DELETING NODES");
-
- // Delete all records from the Node main table
- ((Session)entityManager.getDelegate())
- .createQuery("delete from Node n where n.areaNumber = :area" +
- " and n.parent.id not in (:excludedIdentifiers) and not n = :exclude")
- .setParameter("area", dir.getAreaNumber())
- .setParameter("exclude", dir)
- .setParameterList("excludedIdentifiers", excludeIdentifiers)
- .executeUpdate();
- */
- }
-
// Multi-row constraint validation
public boolean isUniqueWikiname(Node node) {
Node foundNode = findNodeInArea(node.getParent().getAreaNumber(), node.getWikiname(), entityManager);
1.3 +0 -15 jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/dao/FeedDAO.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: FeedDAO.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/dao/FeedDAO.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- FeedDAO.java 9 Apr 2007 08:43:53 -0000 1.2
+++ FeedDAO.java 19 Apr 2007 18:36:12 -0000 1.3
@@ -68,7 +68,6 @@
if (feeds.size() >0) {
FeedEntry feedEntry = new FeedEntry();
- feedEntry.setDocument(document);
feedEntry.setLink(renderFeedURL(document));
feedEntry.setTitle(document.getName());
feedEntry.setAuthor(document.getCreatedBy().getFullname());
@@ -101,20 +100,6 @@
if (updatedEntries == 0) createFeedEntries(pushOnSiteFeed, document);
}
- public void removeFeedEntries(Document document) {
- restrictedEntityManager.joinTransaction();
-
- try {
- FeedEntry entry = (FeedEntry) restrictedEntityManager
- .createQuery("select fe from FeedEntry fe where fe.document = :document")
- .setParameter("document", document)
- .getSingleResult();
-
- restrictedEntityManager.remove(entry);
- } catch (EntityNotFoundException ex) {
- } catch (NoResultException ex) {}
- }
-
private String renderFeedURL(Node node) {
WikiPreferences wikiPrefs = (WikiPreferences) Component.getInstance("wikiPreferences");
return wikiPrefs.getBaseUrl() + WikiUtil.renderURL(node);
1.5 +14 -0 jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/dao/UserDAO.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: UserDAO.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/src/main/org/jboss/seam/wiki/core/dao/UserDAO.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- UserDAO.java 2 Apr 2007 18:25:06 -0000 1.4
+++ UserDAO.java 19 Apr 2007 18:36:12 -0000 1.5
@@ -10,6 +10,7 @@
import org.jboss.seam.annotations.AutoCreate;
import org.jboss.seam.wiki.core.model.Role;
import org.jboss.seam.wiki.core.model.User;
+import org.jboss.seam.Component;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Example;
import org.hibernate.criterion.MatchMode;
@@ -69,6 +70,19 @@
return null;
}
+ public void resetNodeCreatorToAdmin(User user) {
+
+ User adminUser = (User) Component.getInstance("adminUser");
+
+ entityManager.joinTransaction();
+ entityManager.createQuery("update Node n set n.createdBy = :admin where n.createdBy = :user")
+ .setParameter("admin", entityManager.merge(adminUser))
+ .setParameter("user", user)
+ .executeUpdate();
+ }
+
+
+
public List<User> findByExample(User exampleUser, String orderByProperty, boolean orderDescending,
int firstResult, int maxResults, String... ignoreProperty) {
Criteria crit = prepareExampleCriteria(exampleUser, orderByProperty, orderDescending, ignoreProperty);
More information about the jboss-cvs-commits
mailing list