Abstract interface for a class which may be used to filter the results displayed in a nested tree

Embeddable deprecated

An adapter which does not publicly expose protected files

Represents an AbstractAdapter which exposes its assets via public urls

Image_Backend

Represents a container for a specific asset.

Provides a mechanism for suggesting filename alterations to a file

Represents an abstract asset persistence layer. Acts as a backend to files.

Represents a store usable with ProtectedFileController to serve up non-direct file requests

Interface to define a handler for persistent generated files

An object which may have a thumbnail url

This interface lets us set up objects that will tell us what the current page is.

This represents a collection of config keys and values.

The Cookie_Backend interface for use with Cookie::$inst.

Indicator for a class which cannot handle requests directly, but is able to generate a delegate for those requests.

A bypass for manual confirmation by user (depending on some runtime conditions)

A rule for checking whether we need to protect a Request

Interface that is implemented by controllers that are designed to hand control over to another controller.

RequestFilter deprecated

A request filter is an object that's executed before and after a request occurs. By returning 'false' from the preRequest method, request execution will be stopped from continuing

Identifies a class as a root silverstripe application

Defines a service that can flush its cache for a list of members

Provides an interface for classes to implement their own flushing functionality whenever flush=1 is requested.

An AfterCallAspect is run after a method is executed

A BeforeCallAspect is run before a method is executed.

A factory which is used for creating service instances.

Used to locate configuration for a particular named service.

Represents the core state of a SilverStripe application Based loosely on symfony/http-kernel's KernelInterface component

Generate URLs for client-side assets and perform any preparation of those assets needed.

Represents a class with a local cache which normally invalidates itself between requests.

Public interface for startup flush discoverers

Interface for database helper classes.

Helper for resetting, booting, or cleaning up test state.

Classes that implement TestOnly are only to be used during testing

A service which can generate a form

Base interface for all components that can be added to GridField.

Defines a class that can create a key for a gridfield and apply its state to a request, and consume state from the request

GridField action menu item interface, this provides data so the action will be included if there is a {see GridField_ActionMenu}

Allows GridField_ActionMenuItem to act as a link

An action is defined by two things: an action name, and zero or more named arguments.

Add a new column to the table display body, or modify existing columns.

Can modify the data list.

A GridField manipulator that provides HTML for the header/footer rows, or f or before/after the template.

A component which is used to handle when a {@link GridField} is saved into a record.

Sometimes an action isn't enough: you need to provide additional support URLs for the {@link GridField}.

Declares a service which can generate a script URL for a given HTMLEditor config

Declares that a form field has the ability to accept and render Tips.

An AuthenticatorInterface is responsible for authenticating against a SilverStripe CMS Member from the given request data.

Represents middleware for evaluating a graphql query

Implementations of query persistence must use this interface. At a minimum, they must be able to fetch a query given an ID.

Implementations of query persistence must use this interface. At a minimum, they must be able to fetch a query given an ID.

Query handlers are responsible for applying a query as a string to a Schema object and returning a result.

Defines the interface used by all read filters for operations

Filters for queries are registered as services and retrieved by identifiers.

A special type of filter that accepts list values

Defines a model that provides required fields for all the types it creates

Applies an array of config to a class

A class that can store a generic array of context

For models that can provide a default set of fields

A class that is capable of expressing itself in generated code

For models that provide extra types to the schema

A plugin that applies to a Field abstraction

Used by any class that declares an identifier

Implementors of this interface provide input types back to the schema

Implementors of this interface can prevent a given set of fields from being added

A plugin that applies only to mutations created by models

Applies to an operation that was crated by a model

A plugin that applies only to queries generated by models

A plugin that only applies to types generated by models

A plugin that applies to a generic mutation

Implementors of this interface can create queries and mutations dynamically

Implementors of this interface provide a lookup for operations by identifiers

Base plugin interface. There is a lot of "duck programming" happening in this API that will go away once we have better type variance in PHP 7.4: https://wiki.php.net/rfc/covariant-returns-and-contravariant-parameters

Validates that a given plugin is acceptable for the implementing class

A plugin that is used for a generic query

Implementors of this class can create a model for a given classname, e.g. Blog -> DataObjectModel

Implementors of this interface can be models that generate types and operations

Given a name, create a SchemaStorageInterface implementation

Persists a graphql-php Schema object, and retrieves it

Implementors of this interface can make a one-time, context-free update to the schema, e.g. adding a shared Enum type

Implementors of this class that can validate that they are ready to be encoded into the schema

Any class that can represent its state as a string. Kind of like serialize, but doesn't need to support unserialization

A plugin that applies to a generic Type

Defines a service that can obfuscate classnames to make their files less discoverable

Core error handler for a SilverStripe application

Interface to provide enough information about a record to make it previewable through the CMS. It uses the record database ID, its "frontend" and "backend" links to link up the edit form with its preview.

Represents an object that is capable of controlling transactions.

DataObjectInterface is an interface that other data systems in your application can implement in order to behave in a manner similar to DataObject.

Allows middleware to modily finalised dataquery on a per-instance basis

Classes that implement the DBIndexable interface will provide options to set various index types and index contents, which will be processed by {@link \SilverStripe\ORM\DataObjectSchema}

Additional interface for {@link SS_List} classes that are filterable.

Anything that implements HiddenClass won't be shown in user-interface elements. For example, DataObjects that implement HiddenClass won't be showing in the "new page" dropdown.

Additional interface for {@link SS_List} classes that are limitable - able to have a subset of the list extracted.

Represents a where condition that is dynamically generated. Maybe be stored within a list of conditions, altered, and be allowed to affect the result of the parent sql query during future execution.

Represents a SQL expression which may have field values assigned (UPDATE/INSERT Expressions)

Abstract representation of a DB relation field, either saved or in memory

An interface that a class can implement to be treated as a list container.

Additional interface for {@link SS_List} classes that are sortable.

An AuthenticationHandler is responsible for providing an identity (in the form of a Member object) for a given HTTPRequest.

Abstract base class for an authentication method

Allows objects to enforce permissions for the "root" level, where permissions can not be tied to a particular database record.

Represents an authentication handler that can have identities logged into & out of it.

Calculates edit / view / delete permissions for one or more objects

Used to let classes provide new permission codes.

A provider of a view for the archive admin

Minimum level extra fields required by extensions that are versonable

Abstract interface for an embeddable resource

Abstract interface for a class which handles shortcodes

Provides an abstract interface for minifying content

Interface that is implemented by any classes that want to expose a method that can be called in any scope in a template.

Interface that is implemented by any classes that want to expose a method that can be called in any scope in a template that returns values dependant on the state of the iterator of the current scope.

This interface needs to be implemented by any template parser that is used in SSViewer

Contains references to any number of themes or theme directories

Locales data source

Provides localisation of messages

Message reader. Inverse of Writer

Allows serialization of entity definitions collected through {@link i18nTextCollector} into a persistent format, usually on the filesystem.

Dynamically provide translatable entites for the {@link i18n} logic.