Class NullDataSource
- java.lang.Object
-
- org.jetbrains.mps.openapi.persistence.NullDataSource
-
- All Implemented Interfaces:
DataSource
public final class NullDataSource extends Object implements DataSource
An empty implementation of the DataSource interface.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classNullDataSource.NullDataSourceType
-
Constructor Summary
Constructors Constructor Description NullDataSource()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddListener(DataSourceListener listener)Registers listeners who need to be notified about changes in the underlying data source.StringgetLocation()Yields a string representation for the location of the data source (if applicable)longgetTimestamp()Retrieves the last modification timestamp.DataSourceTypegetType()Defines a data source type for this kind of data sources.booleanisReadOnly()Sometimes there is a possibility to editDataSource, though it is not available on this level.voidremoveListener(DataSourceListener listener)
-
-
-
Method Detail
-
getLocation
@NotNull public String getLocation()
Description copied from interface:DataSourceYields a string representation for the location of the data source (if applicable)- Specified by:
getLocationin interfaceDataSource
-
addListener
public void addListener(@NotNull DataSourceListener listener)
Description copied from interface:DataSourceRegisters listeners who need to be notified about changes in the underlying data source. It is the responsibility of the DataSource to detect such updates and notify the listeners.- Specified by:
addListenerin interfaceDataSource
-
removeListener
public void removeListener(@NotNull DataSourceListener listener)
- Specified by:
removeListenerin interfaceDataSource
-
getTimestamp
public long getTimestamp()
Description copied from interface:DataSourceRetrieves the last modification timestamp. The timestamp should reliably reflect all external changes to the data source.- Specified by:
getTimestampin interfaceDataSource- Returns:
- 0 if timestamp is not supported for the source, or -1 if the source is dead (like when file is deleted)
-
isReadOnly
public boolean isReadOnly()
Description copied from interface:DataSourceSometimes there is a possibility to editDataSource, though it is not available on this level. For examples please seeStreamDataSource,MultiStreamDataSource.- Specified by:
isReadOnlyin interfaceDataSource- Returns:
- whether this data source can be changed.
-
getType
@NotNull public DataSourceType getType()
Description copied from interface:DataSourceDefines a data source type for this kind of data sources. The data source type notion is strongly associated with the possibility to provideDataSourceFactoryandModelFactorycustom mappings. SeeDataSourceFactoryRuleServiceandModelFactoryServicefor the implementation details.- Specified by:
getTypein interfaceDataSource- Returns:
- the unique data source type for this instance of data source if the developer wants others to be able to change the default behavior of this data source (register with the same key) or if he desires to associate this data source with some specific model factory.
-
-