[jboss-svn-commits] JBL Code SVN: r5112 - in labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service: impl impl/db impl/protocol protocol
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sat Jul 15 10:32:46 EDT 2006
Author: wrzep
Date: 2006-07-15 10:32:38 -0400 (Sat, 15 Jul 2006)
New Revision: 5112
Added:
labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/DBScoresTransformer.java
labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/db/PluginValuesEntity.java
labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/db/ScoresEntity.java
Modified:
labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/DBServiceImpl.java
labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/db/PluginsValuesEntity.java
labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/protocol/PluginsValuesImpl.java
labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/protocol/PluginValues.java
labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/protocol/PluginsValues.java
Log:
JBLAB-689
Pawel
Added: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/DBScoresTransformer.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/DBScoresTransformer.java 2006-07-15 12:46:54 UTC (rev 5111)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/DBScoresTransformer.java 2006-07-15 14:32:38 UTC (rev 5112)
@@ -0,0 +1,76 @@
+
+ /*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package org.jboss.forge.status.service.impl;
+
+import java.util.Calendar;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Set;
+
+import org.jboss.forge.status.service.impl.db.PluginValuesEntity;
+import org.jboss.forge.status.service.impl.db.PluginsValuesEntity;
+import org.jboss.forge.status.service.impl.db.ScoresEntity;
+import org.jboss.forge.status.service.protocol.PluginValues;
+import org.jboss.forge.status.service.protocol.PluginsValues;
+
+/**
+ * @author Pawel Wrzeszcz (pawel.wrzeszcz [at] gmail.com)
+ */
+
+public class DBScoresTransformer
+{
+
+ public static Collection<ScoresEntity> transform(PluginsValues pluginsValues) {
+
+ Set<ScoresEntity> ret = new HashSet<ScoresEntity>();
+
+ PluginsValuesEntity entity = getEntity(pluginsValues);
+ ret.add(entity);
+
+ Collection<String> pluginsIds = pluginsValues.getPluginsIds();
+
+ for (String pluginId : pluginsIds) {
+
+ PluginValues pluginValues = pluginsValues.getPluginValues(pluginId);
+ PluginValuesEntity e = getEntity(pluginValues);
+ ret.add(e);
+ }
+
+ return ret;
+ }
+
+ private static PluginsValuesEntity getEntity(PluginsValues pluginsValues) {
+
+ Calendar date = pluginsValues.getDate();
+
+ return new PluginsValuesEntity(date);
+ }
+
+ private static PluginValuesEntity getEntity(PluginValues pluginValues) {
+
+ String pluginId = pluginValues.getId();
+
+ return new PluginValuesEntity(pluginId);
+ }
+}
Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/DBServiceImpl.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/DBServiceImpl.java 2006-07-15 12:46:54 UTC (rev 5111)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/DBServiceImpl.java 2006-07-15 14:32:38 UTC (rev 5112)
@@ -22,6 +22,8 @@
package org.jboss.forge.status.service.impl;
+import java.util.Collection;
+
import javax.ejb.Local;
import javax.ejb.Stateful;
import javax.persistence.EntityManager;
@@ -31,7 +33,7 @@
import org.jboss.forge.status.common.Constants;
import org.jboss.forge.status.service.DBService;
-import org.jboss.forge.status.service.impl.db.PluginsValuesEntity;
+import org.jboss.forge.status.service.impl.db.ScoresEntity;
import org.jboss.forge.status.service.protocol.PluginsValues;
@@ -56,9 +58,14 @@
public void save(PluginsValues pluginsValues) {
- PluginsValuesEntity se = new PluginsValuesEntity(pluginsValues);
- em.persist(se);
- System.out.println("entity saved");
+ Collection<ScoresEntity> toSave = DBScoresTransformer.transform(pluginsValues);
+
+ for (ScoresEntity entity : toSave) {
+
+ em.persist(entity);
+
+ System.out.println("entity saved");
+ }
}
Added: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/db/PluginValuesEntity.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/db/PluginValuesEntity.java 2006-07-15 12:46:54 UTC (rev 5111)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/db/PluginValuesEntity.java 2006-07-15 14:32:38 UTC (rev 5112)
@@ -0,0 +1,78 @@
+
+ /*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package org.jboss.forge.status.service.impl.db;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+import org.jboss.forge.status.service.protocol.PluginsValues;
+
+/**
+ * @author Pawel Wrzeszcz (pawel.wrzeszcz [at] gmail.com)
+ */
+ at Entity
+ at Table(name = "jblab_plugin_values")
+public class PluginValuesEntity extends ScoresEntity
+{
+
+ private long id;
+ private String pluginId;
+
+ /**
+ * Default constructor
+ */
+ public PluginValuesEntity () {}
+
+ /**
+ * Main constructor for PluginValuesEntity
+ * which takes all possible values to set all its attributes.
+ */
+ public PluginValuesEntity (String pluginId) {
+
+ this.pluginId = pluginId;
+ }
+
+ @Id
+ @GeneratedValue
+ @Column(name = "id")
+ public long getId() {
+ return id;
+ }
+
+ private void setId(long id) {
+ this.id = id;
+ }
+
+ @Column(name = "pluginId")
+ public String getPluginId() {
+ return pluginId;
+ }
+
+ public void setPluginId(String pluginId) {
+ this.pluginId = pluginId;
+ }
+}
Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/db/PluginsValuesEntity.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/db/PluginsValuesEntity.java 2006-07-15 12:46:54 UTC (rev 5111)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/db/PluginsValuesEntity.java 2006-07-15 14:32:38 UTC (rev 5112)
@@ -1,7 +1,7 @@
/*
* JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * Copyright 2006, JBoss Inc., and individual contributors as indicated
* by the @authors tag. See the copyright.txt in the distribution for a
* full listing of individual contributors.
*
@@ -27,6 +27,7 @@
import javax.persistence.Column;
import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
@@ -41,7 +42,7 @@
*/
@Entity
@Table(name = "jblab_plugins_values")
-public class PluginsValuesEntity
+public class PluginsValuesEntity extends ScoresEntity
{
private long id;
@@ -56,21 +57,22 @@
* Main constructor for PluginsValuesEntity
* which takes all possible values to set all its attributes.
*/
- public PluginsValuesEntity (PluginsValues pluginsValues)
- {
- date = pluginsValues.getDate();
+ public PluginsValuesEntity (Calendar date) {
+
+ this.date = date;
}
@Id
+ @GeneratedValue
@Column(name = "id")
public long getId() {
return id;
}
+
+ private void setId(long id) {
+ this.id = id;
+ }
- public void setId(long id) {
- this.id = id;
- }
-
@Column(name = "date")
public Calendar getDate() {
return date;
Added: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/db/ScoresEntity.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/db/ScoresEntity.java 2006-07-15 12:46:54 UTC (rev 5111)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/db/ScoresEntity.java 2006-07-15 14:32:38 UTC (rev 5112)
@@ -0,0 +1,36 @@
+
+ /*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package org.jboss.forge.status.service.impl.db;
+
+
+
+
+/**
+ * @author Pawel Wrzeszcz (pawel.wrzeszcz [at] gmail.com)
+ */
+
+public abstract class ScoresEntity
+{
+
+}
Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/protocol/PluginsValuesImpl.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/protocol/PluginsValuesImpl.java 2006-07-15 12:46:54 UTC (rev 5111)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/impl/protocol/PluginsValuesImpl.java 2006-07-15 14:32:38 UTC (rev 5112)
@@ -23,6 +23,7 @@
package org.jboss.forge.status.service.impl.protocol;
import java.util.Calendar;
+import java.util.Collection;
import java.util.Map;
import java.util.HashMap;
import java.util.Set;
@@ -112,4 +113,8 @@
public PluginValues getPluginValues(String pluginId) {
return values.get(pluginId);
}
+
+ public Collection<String> getPluginsIds() {
+ return values.keySet();
+ }
}
Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/protocol/PluginValues.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/protocol/PluginValues.java 2006-07-15 12:46:54 UTC (rev 5111)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/protocol/PluginValues.java 2006-07-15 14:32:38 UTC (rev 5112)
@@ -26,7 +26,6 @@
/**
* @author Pawel Wrzeszcz (pawel.wrzeszcz [at] gmail.com)
-* A class used to store plugin values in shotoku.
*/
public interface PluginValues extends Serializable {
Modified: labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/protocol/PluginsValues.java
===================================================================
--- labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/protocol/PluginsValues.java 2006-07-15 12:46:54 UTC (rev 5111)
+++ labs/jbosslabs/trunk/portal-extensions/forge-status/src/java/org/jboss/forge/status/service/protocol/PluginsValues.java 2006-07-15 14:32:38 UTC (rev 5112)
@@ -23,6 +23,7 @@
package org.jboss.forge.status.service.protocol;
import java.util.Calendar;
+import java.util.Collection;
import java.io.Serializable;
import org.jboss.forge.status.exceptions.GetScoresException;
@@ -30,7 +31,6 @@
/**
* @author Pawel Wrzeszcz (pawel.wrzeszcz [at] gmail.com)
-* A class used to store plugins values in shotoku.
*/
public interface PluginsValues extends Serializable {
@@ -56,4 +56,6 @@
public PluginValues getPluginValues(String pluginId);
+ public Collection<String> getPluginsIds();
+
}
More information about the jboss-svn-commits
mailing list