Class SnapSite
- java.lang.Object
-
- com.inductiveautomation.rm.base.RMListenerList
-
- com.inductiveautomation.rm.base.RMObject
-
- com.inductiveautomation.snap.web.WebSite
-
- com.inductiveautomation.snap.filedata.SnapSite
-
- All Implemented Interfaces:
RMJSONArchiver.GetKeys
,RMPropertyChanger
,java.beans.PropertyChangeListener
,java.lang.Cloneable
,java.util.EventListener
public class SnapSite extends WebSite
A class to manage resources for a Snap site (a data source subclass).
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.inductiveautomation.snap.web.WebSite
WebSite.Servlet
-
-
Field Summary
-
Fields inherited from class com.inductiveautomation.snap.web.WebSite
Refresh_Prop
-
-
Constructor Summary
Constructors Constructor Description SnapSite()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
addAutosaveRow(Row aRow)
Adds a Row to AutosaveRows set.protected SnapTable
createDataTableImpl()
Override to return SnapTable.protected WebFile
createFileImpl(java.lang.String aPath, boolean isDirectory)
Nobody should be asking for files from this site.protected Row
createRowImpl(Entity anEntity, java.lang.Object aPrimaryValue)
Creates a new row for source.protected void
deleteEntityImpl(Entity anEntity)
Override to delete entity from encapsulated source.protected void
deleteFileImpl(WebFile aFile)
Deletes a file.protected void
deleteRowImpl(Row aRow)
Deletes a given row.protected void
flushImpl()
Override to save SettingsFile and AutosaveRows.static SnapSite
get(WebSite aSite)
Returns the SnapSite for a given site.SnapTable
getDataTable(java.lang.String aName)
Override to return as SnapTable.protected Entity
getEntityImpl(java.lang.String aName)
Returns the entity for given name.protected byte[]
getFileBytesImpl(WebFile aFile)
Returns file bytes.protected WebFile
getFileImpl(java.lang.String aPath)
Returns a data source file for given path (if file exists).protected java.util.List<WebFile>
getFilesImpl(WebFile aFile)
Returns a list of files at path.protected Row
getRowImpl(Entity anEntity, java.lang.Object aPrimaryValue)
Returns a row for a given entity and primary value.protected java.util.List<Row>
getRowsImpl(Entity anEntity, Query aQuery)
Returns a set of rows for the given properties and condition.WebSite
getSite()
Returns the encapsulated WebSite.SnapTableView
getTableView(java.lang.String aName)
Returns a table view for given name.WebURL
getURL()
Returns the URL.void
propertyChange(java.beans.PropertyChangeEvent anEvent)
Override to track changed rows.void
refresh()
Override to forward to real data source.protected void
refreshFileImpl(WebFile aFile)
Reverts a file.protected void
saveEntityImpl(Entity anEntity)
Override to save entity to encapsulated source.protected void
saveFileImpl(WebFile aFile)
Saves a file.protected void
saveRowImpl(Row aRow)
Inserts or updates a given row.protected void
setSite(WebSite aSite)
Sets the encapsulated WebSite.-
Methods inherited from class com.inductiveautomation.snap.web.WebSite
addDeepChangeListener, bulkImport, createClassLoader, createDataTable, createEntity, createEntityImpl, createFile, createRow, createRow, createSandbox, createSandboxURL, createSandboxURLS, createSchema, createSite, createURL, deleteEntity, deleteFile, deleteRow, deleteSite, flush, getClassLoader, getDataTables, getEntity, getExists, getFile, getHostName, getJSONKeys, getModifiedTime, getName, getPassword, getPath, getProp, getRequest, getResponse, getRootDirectory, getRow, getRow, getRows, getSandbox, getSchema, getServlet, getStandardFile, getURL, getURLString, getUserName, handleDelete, handleGet, handleHead, handlePut, isRunning, refreshFile, removeDeepChangeListener, saveEntity, saveFile, saveRow, setClassLoader, setExists, setModifiedTime, setModifiedTimeImpl, setPassword, setProp, setSandbox, setServlet, setURL, setUserName, toString
-
Methods inherited from class com.inductiveautomation.rm.base.RMObject
addPropertyChangeListener, animUpdate, firePropertyChange, firePropertyChange, firePropertyChange, getPCEvent, removePropertyChangeListener, sendPropertyChange
-
Methods inherited from class com.inductiveautomation.rm.base.RMListenerList
addListener, clone, getListener, getListenerCount, getListenerCount, getListenerList, getListeners, hasListeners, removeListener
-
-
-
-
Method Detail
-
getSite
public WebSite getSite()
Returns the encapsulated WebSite.
-
setSite
protected void setSite(WebSite aSite)
Sets the encapsulated WebSite.
-
createFileImpl
protected WebFile createFileImpl(java.lang.String aPath, boolean isDirectory)
Nobody should be asking for files from this site.- Overrides:
createFileImpl
in classWebSite
-
getFileImpl
protected WebFile getFileImpl(java.lang.String aPath)
Description copied from class:WebSite
Returns a data source file for given path (if file exists).- Overrides:
getFileImpl
in classWebSite
-
getFilesImpl
protected java.util.List<WebFile> getFilesImpl(WebFile aFile)
Description copied from class:WebSite
Returns a list of files at path.- Overrides:
getFilesImpl
in classWebSite
-
getFileBytesImpl
protected byte[] getFileBytesImpl(WebFile aFile)
Description copied from class:WebSite
Returns file bytes.- Overrides:
getFileBytesImpl
in classWebSite
-
saveFileImpl
protected void saveFileImpl(WebFile aFile) throws java.lang.Exception
Description copied from class:WebSite
Saves a file.- Overrides:
saveFileImpl
in classWebSite
- Throws:
java.lang.Exception
-
deleteFileImpl
protected void deleteFileImpl(WebFile aFile) throws java.lang.Exception
Description copied from class:WebSite
Deletes a file.- Overrides:
deleteFileImpl
in classWebSite
- Throws:
java.lang.Exception
-
refreshFileImpl
protected void refreshFileImpl(WebFile aFile) throws java.lang.Exception
Description copied from class:WebSite
Reverts a file.- Overrides:
refreshFileImpl
in classWebSite
- Throws:
java.lang.Exception
-
getDataTable
public SnapTable getDataTable(java.lang.String aName)
Override to return as SnapTable.- Overrides:
getDataTable
in classWebSite
-
createDataTableImpl
protected SnapTable createDataTableImpl()
Override to return SnapTable.- Overrides:
createDataTableImpl
in classWebSite
-
getTableView
public SnapTableView getTableView(java.lang.String aName)
Returns a table view for given name.
-
getEntityImpl
protected Entity getEntityImpl(java.lang.String aName) throws java.lang.Exception
Returns the entity for given name.- Overrides:
getEntityImpl
in classWebSite
- Throws:
java.lang.Exception
-
saveEntityImpl
protected void saveEntityImpl(Entity anEntity) throws java.lang.Exception
Override to save entity to encapsulated source.- Overrides:
saveEntityImpl
in classWebSite
- Throws:
java.lang.Exception
-
deleteEntityImpl
protected void deleteEntityImpl(@Nullable Entity anEntity) throws java.lang.Exception
Override to delete entity from encapsulated source.- Overrides:
deleteEntityImpl
in classWebSite
- Throws:
java.lang.Exception
-
createRowImpl
@Nonnull protected Row createRowImpl(Entity anEntity, java.lang.Object aPrimaryValue)
Creates a new row for source.- Overrides:
createRowImpl
in classWebSite
-
getRowImpl
@Nullable protected Row getRowImpl(@Nonnull Entity anEntity, java.lang.Object aPrimaryValue)
Returns a row for a given entity and primary value.- Overrides:
getRowImpl
in classWebSite
-
getRowsImpl
@Nonnull protected java.util.List<Row> getRowsImpl(Entity anEntity, Query aQuery)
Returns a set of rows for the given properties and condition.- Specified by:
getRowsImpl
in classWebSite
-
saveRowImpl
protected void saveRowImpl(Row aRow) throws java.lang.Exception
Inserts or updates a given row.- Specified by:
saveRowImpl
in classWebSite
- Throws:
java.lang.Exception
-
deleteRowImpl
protected void deleteRowImpl(Row aRow) throws java.lang.Exception
Deletes a given row.- Specified by:
deleteRowImpl
in classWebSite
- Throws:
java.lang.Exception
-
propertyChange
public void propertyChange(java.beans.PropertyChangeEvent anEvent)
Override to track changed rows.- Specified by:
propertyChange
in interfacejava.beans.PropertyChangeListener
- Overrides:
propertyChange
in classWebSite
-
addAutosaveRow
protected void addAutosaveRow(Row aRow)
Adds a Row to AutosaveRows set.
-
refresh
public void refresh()
Override to forward to real data source.
-
flushImpl
protected void flushImpl() throws java.lang.Exception
Override to save SettingsFile and AutosaveRows.
-
-