Class NamedQuery
- java.lang.Object
 - 
- com.inductiveautomation.ignition.common.db.namedquery.NamedQuery
 
 
- 
- All Implemented Interfaces:
 java.io.Serializable
public class NamedQuery extends java.lang.Object implements java.io.SerializableThis class represents a single named query. Instances of this class are serialized using the default Ignition XML serialization and stored as project resources.- See Also:
 - Serialized Form
 
 
- 
- 
Nested Class Summary
Nested Classes Modifier and Type Class Description static classNamedQuery.Parameterstatic classNamedQuery.ParameterTypestatic classNamedQuery.Type 
- 
Field Summary
Fields Modifier and Type Field Description static intCURRENT_RESOURCE_VERSIONStored as a 'query.sql' file with the main query body, and all other aspects of the query as resource attributes.static java.lang.StringDATABASE_PARAM_IDENTIFIERstatic java.lang.StringDATABASE_PARAM_OPTIONstatic intLEGACY_RESOURCE_VERSIONOriginal resource version; a simple default 'data.bin' on diskstatic java.util.Set<DataType>PARAMETER_TYPESSuggested list of acceptable data types for named query parametersstatic ResourceTypeRESOURCE_TYPE 
- 
Constructor Summary
Constructors Constructor Description NamedQuery()Public empty ctor for xml serializationNamedQuery(NamedQuery nq)Copy constructor. 
- 
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static NamedQueryfromResource(ProjectResource resource, XMLDeserializer deserializer)Create a named query from a Project Resource - can be stored in legacy data.bin file, or modern query.sql + attributes;intgetCacheAmount()longgetCacheInMillis()TimeUnitsgetCacheUnit()java.lang.StringgetDatabase()java.lang.StringgetDescription()java.lang.StringgetFallbackValue()longgetMaxReturnSize()NamedThemegetNamedTheme()Deprecated.java.util.List<NamedQuery.Parameter>getParameters()java.util.List<ZoneRoleRequirement>getPermissions()java.lang.StringgetQuery()java.lang.StringgetSyntaxProvider()NamedQuery.TypegetType()booleanisAutoBatchEnabled()booleanisCachingEnabled()booleanisEnabled()booleanisFallbackEnabled()booleanisUseMaxReturnSize()static booleanisValidParamName(java.lang.String paramName)Checks to make sure a name is at least one character long and doesn't contain special characters Does not check for duplicates.voidsetAutoBatchEnabled(boolean autoBatchEnabled)voidsetCacheAmount(int cacheAmount)voidsetCacheUnit(TimeUnits cacheUnit)voidsetCachingEnabled(boolean cachingEnabled)voidsetDatabase(java.lang.String database)voidsetDescription(java.lang.String description)voidsetEnabled(boolean enabled)voidsetFallbackEnabled(boolean fallbackEnabled)voidsetFallbackValue(java.lang.String fallbackValue)voidsetMaxReturnSize(long maxReturnSize)voidsetNamedTheme(NamedTheme ignored)Deprecated.voidsetParameters(java.util.List<NamedQuery.Parameter> parameters)voidsetPermissions(java.util.List<ZoneRoleRequirement> permissions)voidsetQuery(java.lang.String query)voidsetSyntaxProvider(java.lang.String syntax)voidsetType(NamedQuery.Type type)voidsetUseMaxReturnSize(boolean useMaxReturnSize)static java.util.function.Consumer<ProjectResourceBuilder>toResource(NamedQuery nq)Provides a function to operate on a ProjectResourceBuilder in order to properly store a named query. 
 - 
 
- 
- 
Field Detail
- 
RESOURCE_TYPE
public static final ResourceType RESOURCE_TYPE
 
- 
LEGACY_RESOURCE_VERSION
public static final int LEGACY_RESOURCE_VERSION
Original resource version; a simple default 'data.bin' on disk- See Also:
 - Constant Field Values
 
 
- 
CURRENT_RESOURCE_VERSION
public static final int CURRENT_RESOURCE_VERSION
Stored as a 'query.sql' file with the main query body, and all other aspects of the query as resource attributes.- See Also:
 - Constant Field Values
 
 
- 
PARAMETER_TYPES
public static final java.util.Set<DataType> PARAMETER_TYPES
Suggested list of acceptable data types for named query parameters 
- 
DATABASE_PARAM_IDENTIFIER
public static final java.lang.String DATABASE_PARAM_IDENTIFIER
- See Also:
 - Constant Field Values
 
 
- 
DATABASE_PARAM_OPTION
public static final java.lang.String DATABASE_PARAM_OPTION
- See Also:
 - Constant Field Values
 
 
 - 
 
- 
Constructor Detail
- 
NamedQuery
public NamedQuery()
Public empty ctor for xml serialization 
- 
NamedQuery
public NamedQuery(@Nonnull NamedQuery nq)Copy constructor. Used by reports to override query limits and caching- Parameters:
 nq- Named Query to copy. Not null.
 
 - 
 
- 
Method Detail
- 
getType
public NamedQuery.Type getType()
 
- 
setType
public void setType(NamedQuery.Type type)
 
- 
getQuery
public java.lang.String getQuery()
 
- 
setQuery
public void setQuery(java.lang.String query)
 
- 
getFallbackValue
@Nullable public java.lang.String getFallbackValue()
 
- 
setFallbackValue
public void setFallbackValue(java.lang.String fallbackValue)
 
- 
isFallbackEnabled
public boolean isFallbackEnabled()
 
- 
setFallbackEnabled
public void setFallbackEnabled(boolean fallbackEnabled)
 
- 
getDatabase
public java.lang.String getDatabase()
 
- 
setDatabase
public void setDatabase(java.lang.String database)
 
- 
getDescription
@Nullable public java.lang.String getDescription()
 
- 
setDescription
public void setDescription(java.lang.String description)
 
- 
isEnabled
public boolean isEnabled()
 
- 
setEnabled
public void setEnabled(boolean enabled)
 
- 
isCachingEnabled
public boolean isCachingEnabled()
 
- 
setCachingEnabled
public void setCachingEnabled(boolean cachingEnabled)
 
- 
getCacheAmount
public int getCacheAmount()
 
- 
setCacheAmount
public void setCacheAmount(int cacheAmount)
 
- 
getCacheUnit
public TimeUnits getCacheUnit()
 
- 
setCacheUnit
public void setCacheUnit(TimeUnits cacheUnit)
 
- 
getCacheInMillis
public long getCacheInMillis()
 
- 
isAutoBatchEnabled
public boolean isAutoBatchEnabled()
 
- 
setAutoBatchEnabled
public void setAutoBatchEnabled(boolean autoBatchEnabled)
 
- 
isUseMaxReturnSize
public boolean isUseMaxReturnSize()
 
- 
setUseMaxReturnSize
public void setUseMaxReturnSize(boolean useMaxReturnSize)
 
- 
getMaxReturnSize
public long getMaxReturnSize()
 
- 
setMaxReturnSize
public void setMaxReturnSize(long maxReturnSize)
 
- 
getPermissions
public java.util.List<ZoneRoleRequirement> getPermissions()
 
- 
setPermissions
public void setPermissions(java.util.List<ZoneRoleRequirement> permissions)
 
- 
getSyntaxProvider
@Nullable public java.lang.String getSyntaxProvider()
 
- 
setSyntaxProvider
public void setSyntaxProvider(java.lang.String syntax)
 
- 
getParameters
public java.util.List<NamedQuery.Parameter> getParameters()
 
- 
setParameters
public void setParameters(java.util.List<NamedQuery.Parameter> parameters)
 
- 
getNamedTheme
@Deprecated(since="8.1.6") public NamedTheme getNamedTheme()
Deprecated.Deprecated. Was used to persist a chosen code editor theme in the designer. 
- 
setNamedTheme
@Deprecated(since="8.1.6") public void setNamedTheme(NamedTheme ignored)
Deprecated.Deprecated. Was used to persist a chosen code editor theme in the designer. 
- 
isValidParamName
public static boolean isValidParamName(java.lang.String paramName)
Checks to make sure a name is at least one character long and doesn't contain special characters Does not check for duplicates. See the isUniqueParamName method in ParameterTable.java- Parameters:
 paramName- String parameter name to check. Do not include the key characters "{", ":", etc.- Returns:
 - true if the name is valid, false if the name is invalid (likely due to special characters)
 
 
- 
toResource
public static java.util.function.Consumer<ProjectResourceBuilder> toResource(@Nonnull NamedQuery nq)
Provides a function to operate on a ProjectResourceBuilder in order to properly store a named query. 
- 
fromResource
@Nonnull public static NamedQuery fromResource(ProjectResource resource, XMLDeserializer deserializer) throws java.lang.Exception
Create a named query from a Project Resource - can be stored in legacy data.bin file, or modern query.sql + attributes;- Returns:
 - The deserialized query, an empty default query, or an exception.
 - Throws:
 java.lang.Exception
 
 - 
 
 -