|
From: <jbo...@li...> - 2006-06-07 20:58:23
|
Author: adamw Date: 2006-06-07 16:58:07 -0400 (Wed, 07 Jun 2006) New Revision: 4652 Added: labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/TagListImpl.java labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/dal/ labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/dal/ShotokuTagEntity.java labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/dal/WebsiteTagEntity.java Removed: labs/shotoku/trunk/shotoku-tags/src/java/dal/ Modified: labs/shotoku/trunk/shotoku-tags/project.properties labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/AbstractTag.java labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/ShotokuTag.java labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/Tag.java labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/TagList.java labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/WebsiteTag.java labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/dal/TagEntity.java labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/service/TagServiceImpl.java labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/test/TagsTestServlet.java labs/shotoku/trunk/shotoku-test/src/java/org/jboss/shotoku/test/servlet/ShotokuServlet.java Log: http://jira.jboss.com/jira/browse/JBSHOTOKU-86 Modified: labs/shotoku/trunk/shotoku-tags/project.properties =================================================================== --- labs/shotoku/trunk/shotoku-tags/project.properties 2006-06-07 20:23:52 UTC (rev 4651) +++ labs/shotoku/trunk/shotoku-tags/project.properties 2006-06-07 20:58:07 UTC (rev 4652) @@ -2,3 +2,5 @@ maven.final.name=${pom.artifactId} +maven.war.classes.includes=**/test/* + Modified: labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/AbstractTag.java =================================================================== --- labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/AbstractTag.java 2006-06-07 20:23:52 UTC (rev 4651) +++ labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/AbstractTag.java 2006-06-07 20:58:07 UTC (rev 4652) @@ -1,12 +1,14 @@ package org.jboss.shotoku.tags; +import org.jboss.shotoku.tags.dal.TagEntity; + import java.util.Date; /** * @author Adam Warski (ad...@as...) */ public abstract class AbstractTag implements Tag { - private int id; + private Integer id; private String name; private String author; @@ -15,7 +17,7 @@ private Date dateCreated; - public AbstractTag(int id, String name, String author, String resourceId, + public AbstractTag(Integer id, String name, String author, String resourceId, String data, Date dateCreated) { this.id = id; this.name = name; @@ -25,7 +27,20 @@ this.dateCreated = dateCreated; } - public int getId() { + public AbstractTag(TagEntity te) { + this.id = te.getId(); + this.name = te.getName(); + this.author = te.getAuthor(); + this.resourceId = te.getResourceId(); + this.data = te.getData(); + this.dateCreated = te.getDateCreated(); + } + + /* + * TAG implementation. + */ + + public Integer getId() { return id; } Modified: labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/ShotokuTag.java =================================================================== --- labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/ShotokuTag.java 2006-06-07 20:23:52 UTC (rev 4651) +++ labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/ShotokuTag.java 2006-06-07 20:58:07 UTC (rev 4652) @@ -1,22 +1,29 @@ package org.jboss.shotoku.tags; +import org.jboss.shotoku.tags.dal.ShotokuTagEntity; +import org.jboss.shotoku.tags.dal.TagEntity; + import java.util.Date; /** * @author Adam Warski (ad...@as...) */ public class ShotokuTag extends AbstractTag { - public ShotokuTag(int id, String name, String author, String resourceId, + public ShotokuTag(String name, String author, String resourceId, String data, Date dateCreated) { - super(id, name, author, resourceId, data, dateCreated); + super(null, name, author, resourceId, data, dateCreated); } - public ShotokuTag(String name, String author, String resourceId, - String data, Date dateCreated) { - super(-1, name, author, resourceId, data, dateCreated); + public ShotokuTag(ShotokuTagEntity te) { + super(te); } public String getType() { return "shotoku"; } + + public TagEntity getTagEntity() { + //return new ShotokuTagEntity(this); + return new TagEntity(this); + } } Modified: labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/Tag.java =================================================================== --- labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/Tag.java 2006-06-07 20:23:52 UTC (rev 4651) +++ labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/Tag.java 2006-06-07 20:58:07 UTC (rev 4652) @@ -1,12 +1,14 @@ package org.jboss.shotoku.tags; +import org.jboss.shotoku.tags.dal.TagEntity; + import java.util.Date; /** * @author Adam Warski (ad...@as...) */ public interface Tag { - public int getId(); + public Integer getId(); public String getName(); public String getAuthor(); @@ -14,4 +16,6 @@ public String getData(); public String getType(); public Date getDateCreated(); + + public TagEntity getTagEntity(); } Modified: labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/TagList.java =================================================================== --- labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/TagList.java 2006-06-07 20:23:52 UTC (rev 4651) +++ labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/TagList.java 2006-06-07 20:58:07 UTC (rev 4652) @@ -7,5 +7,5 @@ */ public interface TagList { public List<Tag> getList(); - public String getFeedAddress(); + public String getFeedAddress(); } Added: labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/TagListImpl.java =================================================================== --- labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/TagListImpl.java 2006-06-07 20:23:52 UTC (rev 4651) +++ labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/TagListImpl.java 2006-06-07 20:58:07 UTC (rev 4652) @@ -0,0 +1,24 @@ +package org.jboss.shotoku.tags; + +import java.util.List; + +/** + * @author Adam Warski (ad...@as...) + */ +public class TagListImpl implements TagList { + private List<Tag> list; + private String feedAddress; + + public TagListImpl(List<Tag> list, String feedAddress) { + this.list = list; + this.feedAddress = feedAddress; + } + + public List<Tag> getList() { + return list; + } + + public String getFeedAddress() { + return feedAddress; + } +} Modified: labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/WebsiteTag.java =================================================================== --- labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/WebsiteTag.java 2006-06-07 20:23:52 UTC (rev 4651) +++ labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/WebsiteTag.java 2006-06-07 20:58:07 UTC (rev 4652) @@ -1,22 +1,28 @@ package org.jboss.shotoku.tags; +import org.jboss.shotoku.tags.dal.WebsiteTagEntity; +import org.jboss.shotoku.tags.dal.TagEntity; + import java.util.Date; /** * @author Adam Warski (ad...@as...) */ public class WebsiteTag extends AbstractTag { - public WebsiteTag(int id, String name, String author, String resourceId, + public WebsiteTag(String name, String author, String resourceId, String data, Date dateCreated) { - super(id, name, author, resourceId, data, dateCreated); + super(null, name, author, resourceId, data, dateCreated); } - public WebsiteTag(String name, String author, String resourceId, - String data, Date dateCreated) { - super(-1, name, author, resourceId, data, dateCreated); + public WebsiteTag(WebsiteTagEntity te) { + super(te); } public String getType() { return "website"; } + + public TagEntity getTagEntity() { + return new WebsiteTagEntity(this); + } } Copied: labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/dal (from rev 4649, labs/shotoku/trunk/shotoku-tags/src/java/dal) Added: labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/dal/ShotokuTagEntity.java =================================================================== --- labs/shotoku/trunk/shotoku-tags/src/java/dal/ShotokuTagEntity.java 2006-06-06 21:56:17 UTC (rev 4649) +++ labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/dal/ShotokuTagEntity.java 2006-06-07 20:58:07 UTC (rev 4652) @@ -0,0 +1,23 @@ +package org.jboss.shotoku.tags.dal; + +import org.jboss.shotoku.tags.AbstractTag; +import org.jboss.shotoku.tags.ShotokuTag; +import org.jboss.shotoku.tags.Tag; + +/** + * @author Adam Warski (ad...@as...) + */ +/*@Entity +@Inheritance(strategy = InheritanceType.SINGLE_TABLE) +@DiscriminatorColumn(discriminatorType = DiscriminatorType.STRING) +@DiscriminatorValue("shotoku") */ +public class ShotokuTagEntity extends TagEntity { + public ShotokuTagEntity(Tag t) { + super(t); + } + + //@Transient + public AbstractTag getTag() { + return new ShotokuTag(this); + } +} Modified: labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/dal/TagEntity.java =================================================================== --- labs/shotoku/trunk/shotoku-tags/src/java/dal/TagEntity.java 2006-06-06 21:56:17 UTC (rev 4649) +++ labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/dal/TagEntity.java 2006-06-07 20:58:07 UTC (rev 4652) @@ -1,24 +1,53 @@ -package dal; +package org.jboss.shotoku.tags.dal; +import org.jboss.shotoku.tags.Tag; +import org.jboss.shotoku.tags.AbstractTag; +import org.jboss.shotoku.tags.ShotokuTag; + import javax.persistence.*; +import java.util.Date; +import java.io.Serializable; /** * @author Adam Warski (ad...@as...) */ @Entity +//@Inheritance(strategy = InheritanceType.SINGLE_TABLE) +//@DiscriminatorColumn(name = "type", discriminatorType = DiscriminatorType.STRING) @Table(name = "ShotokuTags") -public class TagEntity { - private int id; +public /*abstract*/ class TagEntity implements Serializable { + private Integer id; + private String name; + private String author; + private String resourceId; + private String data; - @Id @GeneratedValue(strategy = GenerationType.AUTO) - public int getId() - { + private Date dateCreated; + + public TagEntity() { + + } + + public TagEntity(Tag t) { + //this.id = t.getId(); + this.name = t.getName(); + this.author = t.getAuthor(); + this.resourceId = t.getResourceId(); + this.data = t.getData(); + this.dateCreated = t.getDateCreated(); + } + + /* + * Fields. + */ + + @Id + public Integer getId() { return id; } - public void setId(int id) - { + public void setId(Integer id) { this.id = id; } @@ -29,4 +58,43 @@ public void setName(String name) { this.name = name; } + + public String getAuthor() { + return author; + } + + public void setAuthor(String author) { + this.author = author; + } + + public String getResourceId() { + return resourceId; + } + + public void setResourceId(String resourceId) { + this.resourceId = resourceId; + } + + public String getData() { + return data; + } + + public void setData(String data) { + this.data = data; + } + + public Date getDateCreated() { + return dateCreated; + } + + public void setDateCreated(Date dateCreated) { + this.dateCreated = dateCreated; + } + + /* + * Other methods. + */ + + //@Transient + //public abstract AbstractTag getTag(); } Added: labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/dal/WebsiteTagEntity.java =================================================================== --- labs/shotoku/trunk/shotoku-tags/src/java/dal/WebsiteTagEntity.java 2006-06-06 21:56:17 UTC (rev 4649) +++ labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/dal/WebsiteTagEntity.java 2006-06-07 20:58:07 UTC (rev 4652) @@ -0,0 +1,23 @@ +package org.jboss.shotoku.tags.dal; + +import org.jboss.shotoku.tags.AbstractTag; +import org.jboss.shotoku.tags.WebsiteTag; +import org.jboss.shotoku.tags.Tag; + +/** + * @author Adam Warski (ad...@as...) + */ +/*@Entity +@Inheritance(strategy = InheritanceType.SINGLE_TABLE) +@DiscriminatorColumn(discriminatorType = DiscriminatorType.STRING) +@DiscriminatorValue("website")*/ +public class WebsiteTagEntity extends TagEntity { + public WebsiteTagEntity(Tag t) { + super(t); + } + + //@Transient + public AbstractTag getTag() { + return new WebsiteTag(this); + } +} Modified: labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/service/TagServiceImpl.java =================================================================== --- labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/service/TagServiceImpl.java 2006-06-07 20:23:52 UTC (rev 4651) +++ labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/service/TagServiceImpl.java 2006-06-07 20:58:07 UTC (rev 4652) @@ -23,6 +23,7 @@ import java.util.Calendar; import java.util.List; +import java.util.ArrayList; import javax.ejb.Local; import javax.persistence.EntityManager; @@ -37,10 +38,8 @@ import org.jboss.shotoku.service.AdministratedServiceImpl; import org.jboss.shotoku.service.AdministratedServiceGetter; import org.jboss.shotoku.service.AdministratedService; -import org.jboss.shotoku.tags.TagService; -import org.jboss.shotoku.tags.TagTools; -import org.jboss.shotoku.tags.Tag; -import org.jboss.shotoku.tags.TagList; +import org.jboss.shotoku.tags.*; +import org.jboss.shotoku.tags.dal.TagEntity; /** * @author Adam Warski (ad...@as...) @@ -142,15 +141,22 @@ private EntityManager manager; public void addTag(Tag t) { - + manager.persist(t.getTagEntity()); } public void deleteTag(Tag t) { } public TagList getTags(String resourceId) { - manager.createQuery("from TagEntity where name = :name").setParameter( - "name", resourceId).getResultList(); + /*List<TagEntity> result = manager.createQuery("from TagEntity where resourceId = :resourceId"). + setParameter("resourceId", resourceId).getResultList(); + + List<Tag> t = new ArrayList<Tag>(); + for (TagEntity te : result) { + t.add(te.) + } + + return new TagListImpl(ret, ""); */ return null; } Modified: labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/test/TagsTestServlet.java =================================================================== --- labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/test/TagsTestServlet.java 2006-06-07 20:23:52 UTC (rev 4651) +++ labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/test/TagsTestServlet.java 2006-06-07 20:58:07 UTC (rev 4652) @@ -1,12 +1,15 @@ package org.jboss.shotoku.tags.test; import org.jboss.shotoku.tags.TagTools; +import org.jboss.shotoku.tags.ShotokuTag; +import org.jboss.shotoku.tags.Tag; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.ServletException; import java.io.IOException; +import java.util.Calendar; /** * @author Adam Warski (ad...@as...) @@ -17,6 +20,11 @@ httpServletResponse.setContentType("text/html"); httpServletResponse.getWriter().println(TagTools.getService().getServiceName()); - TagTools.getService().getTags("aaa"); + TagTools.getService().addTag(new ShotokuTag("n1", "a1", "r1", "d1", + Calendar.getInstance().getTime())); + + /*for (Tag t : TagTools.getService().getTags("r1").getList()) { + httpServletResponse.getWriter().println(t.getName() + " - " + t.getData()); + } */ } } Modified: labs/shotoku/trunk/shotoku-test/src/java/org/jboss/shotoku/test/servlet/ShotokuServlet.java =================================================================== --- labs/shotoku/trunk/shotoku-test/src/java/org/jboss/shotoku/test/servlet/ShotokuServlet.java 2006-06-07 20:23:52 UTC (rev 4651) +++ labs/shotoku/trunk/shotoku-test/src/java/org/jboss/shotoku/test/servlet/ShotokuServlet.java 2006-06-07 20:58:07 UTC (rev 4652) @@ -40,14 +40,15 @@ sb.append(b); }*/ - @CacheItem - private TestCacheItem tci; + /*@CacheItem + private TestCacheItem tci;*/ @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { + - System.out.println("Cache content: " + tci.get("A")); + //System.out.println("Cache content: " + tci.get("A")); /*try { response.setContentType("text/html"); |