package org.fluxtream.core.domain;
import javax.persistence.Entity;
import javax.persistence.Lob;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import org.hibernate.annotations.Index;
/**
*
* @author Candide Kemmler (candide@fluxtream.com)
*/
@Entity(name="WidgetSettings")
@NamedQueries( {
@NamedQuery( name="widgetSettings.delete.all",
query="DELETE FROM WidgetSettings settings " +
"WHERE settings.guestId=?"),
@NamedQuery( name="widgetSettings.delete.byDashboardAndName",
query="DELETE FROM WidgetSettings settings " +
"WHERE settings.guestId=? " +
"AND settings.dashboardId=? " +
"AND settings.widgetName=?"),
@NamedQuery( name="widgetSettings.delete.byDashboard",
query="DELETE FROM WidgetSettings settings " +
"WHERE settings.guestId=? " +
"AND settings.dashboardId=?"),
@NamedQuery( name="widgetSettings.byDashboardAndName",
query="SELECT settings FROM WidgetSettings settings " +
"WHERE settings.guestId=? " +
"AND settings.dashboardId=? " +
"AND settings.widgetName=?"),
@NamedQuery( name="widgetSettings.byDashboard",
query="SELECT settings FROM WidgetSettings settings " +
"WHERE settings.guestId=? " +
"AND settings.dashboardId=?")
})
public class WidgetSettings extends AbstractEntity {
public WidgetSettings() {}
@Index(name="guest_index")
public long guestId;
@Index(name="dashboardId")
public long dashboardId;
@Index(name="widgetName")
public String widgetName;
@Lob
public String settingsJSON;
}