You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@wookie.apache.org by sc...@apache.org on 2014/02/07 16:55:16 UTC
svn commit: r1565697 -
/wookie/trunk/wookie-services/wookie-jpa/src/main/java/org/apache/wookie/beans/jpa/impl/WidgetInstanceImpl.java
Author: scottbw
Date: Fri Feb 7 15:55:16 2014
New Revision: 1565697
URL: http://svn.apache.org/r1565697
Log:
Decoupled the JPA WidgetInstance and Widget implementations to make it easier to keep the SPIs separate
Modified:
wookie/trunk/wookie-services/wookie-jpa/src/main/java/org/apache/wookie/beans/jpa/impl/WidgetInstanceImpl.java
Modified: wookie/trunk/wookie-services/wookie-jpa/src/main/java/org/apache/wookie/beans/jpa/impl/WidgetInstanceImpl.java
URL: http://svn.apache.org/viewvc/wookie/trunk/wookie-services/wookie-jpa/src/main/java/org/apache/wookie/beans/jpa/impl/WidgetInstanceImpl.java?rev=1565697&r1=1565696&r2=1565697&view=diff
==============================================================================
--- wookie/trunk/wookie-services/wookie-jpa/src/main/java/org/apache/wookie/beans/jpa/impl/WidgetInstanceImpl.java (original)
+++ wookie/trunk/wookie-services/wookie-jpa/src/main/java/org/apache/wookie/beans/jpa/impl/WidgetInstanceImpl.java Fri Feb 7 15:55:16 2014
@@ -22,12 +22,10 @@ import javax.persistence.Basic;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
-import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToMany;
@@ -40,6 +38,7 @@ import org.apache.openjpa.persistence.Ty
import org.apache.wookie.beans.IPreference;
import org.apache.wookie.beans.IWidget;
import org.apache.wookie.beans.IWidgetInstance;
+import org.apache.wookie.services.WidgetMetadataService;
/**
* WidgetInstanceImpl - JPA IWidgetInstance implementation.
@@ -49,7 +48,7 @@ import org.apache.wookie.beans.IWidgetIn
*/
@Entity(name="WidgetInstance")
@Table(name="WidgetInstance")
-@NamedQueries({@NamedQuery(name="WIDGET_INSTANCE_GUID", query="SELECT wi FROM WidgetInstance wi JOIN wi.widget w WHERE wi.apiKey = :apiKey AND wi.userId = :userId AND wi.sharedDataKey = :sharedDataKey AND w.guid = :guid"),
+@NamedQueries({@NamedQuery(name="WIDGET_INSTANCE_GUID", query="SELECT wi FROM WidgetInstance wi WHERE wi.apiKey = :apiKey AND wi.userId = :userId AND wi.sharedDataKey = :sharedDataKey AND wi.widgetId = :guid"),
@NamedQuery(name="WIDGET_INSTANCE_ID", query="SELECT wi FROM WidgetInstance wi WHERE wi.idKey = :idKey")})
public class WidgetInstanceImpl implements IWidgetInstance
{
@@ -86,10 +85,10 @@ public class WidgetInstanceImpl implemen
@Basic(optional=false)
@Column(name="opensocialToken", nullable=false)
private String opensocialToken;
-
- @ManyToOne(fetch=FetchType.LAZY, optional=false)
- @JoinColumn(name="widget_id", referencedColumnName="id", nullable=false)
- private WidgetImpl widget;
+
+ @Basic
+ @Column(name="widget_id")
+ private String widgetId;
@Basic
@Column(name="updated")
@@ -276,7 +275,7 @@ public class WidgetInstanceImpl implemen
*/
public IWidget getWidget()
{
- return widget;
+ return WidgetMetadataService.Factory.getInstance().getWidget(this.widgetId);
}
/* (non-Javadoc)
@@ -284,7 +283,7 @@ public class WidgetInstanceImpl implemen
*/
public void setWidget(IWidget widget)
{
- this.widget = (WidgetImpl)widget;
+ this.widgetId = widget.getIdentifier();
}
/* (non-Javadoc)