/* * JBoss, Home of Professional Open Source * * Distributable under LGPL license. * See terms of license at gnu.org. */ package org.jboss.seam.wiki.core.model; import javax.persistence.*; import java.io.Serializable; /** * @author Christian Bauer */ @Entity @DiscriminatorValue("INTERNAL") public class WikiFeed extends Feed implements Serializable { @OneToOne(fetch = FetchType.LAZY) @JoinColumn(name = "DIRECTORY_ID", nullable = true, updatable = false, unique = true) @org.hibernate.annotations.ForeignKey(name = "FK_FEED_WIKI_DIRECTORY_ID") //TODO: @org.hibernate.annotations.OnDelete(action = org.hibernate.annotations.OnDeleteAction.CASCADE) private WikiDirectory directory; public WikiFeed() { super(); } public WikiDirectory getDirectory() { return directory; } public void setDirectory(WikiDirectory directory) { this.directory = directory; } public int getReadAccessLevel() { return getDirectory().getReadAccessLevel(); } public String getURL() { if (directory.getWikiURL().length() >0) { if (directory.getArea().getWikiname().equals(directory.getWikiname())) { return "/Area/"+directory.getArea().getWikiname(); } else { return "/Area/"+directory.getArea().getWikiname() + "/Node/" + directory.getWikiname(); } } return ""; // Root, no area or node } }