DatasourceInterface
 interface Winter\Storm\Halcyon\Datasource\DatasourceInterfaceMethods
public delete (string $dirName, string $fileName, string $extension) : bool
Runs a delete statement against the datasource.
| Property | Type | Description | 
|---|---|---|
| $dirName | string | string The directory in which the model is stored. | 
| $fileName | string | string The filename of the model. | 
| $extension | string | string The file extension of the model. | 
If the delete operation completed successfully.
public forceDelete (string $dirName, string $fileName, string $extension) : bool
Runs a delete statement against the datasource, forcing the complete removal of the model (template).
| Property | Type | Description | 
|---|---|---|
| $dirName | string | string The directory in which the model is stored. | 
| $fileName | string | string The filename of the model. | 
| $extension | string | string The file extension of the model. | 
If the delete operation completed successfully.
public getAvailablePaths () : array
Get all available paths within this datasource.
This method returns an array, with all available paths as the key, and a boolean that represents whether the path can be handled or modified.
Example:
[
    'path/to/file.md' => true, // (this path is available, and can be handled)
    'path/to/file2.md' => false // (this path is available, but cannot be handled)
]
An array of available paths alongside whether they can be handled.
public getPathsCacheKey () : string
Gets the prefix of the cache keys.
This is based off a prefix including the base path for the model.
The cache key prefix.
public getPostProcessor () : Winter\Storm\Halcyon\Processors\Processor
Get the query post processor used by the connection.
public insert (string $dirName, string $fileName, string $extension, string $content) : int
Creates a new Halcyon model (template).
| Property | Type | Description | 
|---|---|---|
| $dirName | string | string The directory in which the model is stored. | 
| $fileName | string | string The filename of the model. | 
| $extension | string | string The file extension of the model. | 
| $content | string | string The content to store for the model. | 
The filesize of the created model.
public lastModified (string $dirName, string $fileName, string $extension) : integer | null
Returns the last modified date of a model (template).
| Property | Type | Description | 
|---|---|---|
| $dirName | string | string The directory in which the model is stored. | 
| $fileName | string | string The filename of the model. | 
| $extension | string | string The file extension of the model. | 
The last modified time as a timestamp, or null if the object doesn't exist.
            
            
            
                public
            
                        
            makeCacheKey (string $name = "")
                            : string
                    
        
        Generate a cache key unique to this datasource.
| Property | Type | Description | 
|---|---|---|
| $name | string | string The name of the key. | 
The hashed key.
            
            
            
                public
            
                        
            select (string $dirName, array $options = [])
                            : array
                    
        
        Returns all Halcyon models (templates) within a given directory.
You can provide multiple options with the $options property, in order to filter the retrieved records:
- 
columns: Only retrieve certain columns. Must be an array with any combination offileName,mtimeandcontent.
- 
extensions: Defines the accepted extensions as an array. Eg:['htm', 'md', 'twig']
- 
fileMatch: Defines a glob string to match filenames against. Eg:'*gr[ae]y'
- 
orders: Not implemented
- 
limit: Not implemented
- 
offset: Not implemented
| Property | Type | Description | 
|---|---|---|
| $dirName | string | string The directory in which the model is stored. | 
| $options | array | array Defines the options for this query. | 
An array of models found, with the columns defined as per the columns parameter for $options.
public selectOne (string $dirName, string $fileName, string $extension) : array | null
Returns a single Halcyon model (template).
| Property | Type | Description | 
|---|---|---|
| $dirName | string | string The directory in which the model is stored. | 
| $fileName | string | string The filename of the model. | 
| $extension | string | string The file extension of the model. | 
An array of template data (fileName, mtime and content), or null if the model does
not exist.
            
            
            
                public
            
                        
            update (string $dirName, string $fileName, string $extension, string $content, string | null $oldFileName = null, string | null $oldExtension = null)
                            : integer
                    
        
        Updates an existing Halcyon model (template).
| Property | Type | Description | 
|---|---|---|
| $dirName | string | string The directory in which the model is stored. | 
| $fileName | string | string The filename of the model. | 
| $extension | string | string The file extension of the model. | 
| $content | string | string The content to store for the model. | 
| $oldFileName | string | null | string | null Used for renaming templates. If specified, this will delete the "old" path. | 
| $oldExtension | string | null | string | null Used for renaming templates. If specified, this will delete the "old" path. | 
The filesize of the updated model.
Implemented by
| Class | Description | 
|---|---|
| AutoDatasource | Datasource that loads from other data sources automatically | 
| Datasource | Datasource base class. | 
| DbDatasource | Database based data source | 
| FileDatasource | File based datasource. |