Package com._1c.g5.v8.dt.form.model.impl
Class PropertyInfoProviderRegistryImpl
- java.lang.Object
-
- com._1c.g5.v8.dt.form.model.impl.PropertyInfoProviderRegistryImpl
-
- All Implemented Interfaces:
IPropertyInfoProvider
,IPropertyInfoProvider.Registry
public class PropertyInfoProviderRegistryImpl extends Object implements IPropertyInfoProvider.Registry
PropertyInfo
provider registry implementation.This implementation uses
ReentrantReadWriteLock
to synchronize access to underlyingIPropertyInfoProvider
registry.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com._1c.g5.v8.dt.form.model.IPropertyInfoProvider
IPropertyInfoProvider.Registry
-
-
Field Summary
Fields Modifier and Type Field Description protected Lock
readLock
protected ReentrantReadWriteLock
rwLock
protected Lock
writeLock
-
Fields inherited from interface com._1c.g5.v8.dt.form.model.IPropertyInfoProvider
FORM_PROPERTY_INFO_PROVIDER
-
Fields inherited from interface com._1c.g5.v8.dt.form.model.IPropertyInfoProvider.Registry
INSTANCE
-
-
Constructor Summary
Constructors Constructor Description PropertyInfoProviderRegistryImpl()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addDataInfoProvider(IPropertyInfoProvider provider)
AddsIPropertyInfoProvider
to registry.List<PropertyInfo>
getPropertyInfo(Form form)
GetsPropertyInfo
forForm
List<PropertyInfo>
getPropertyInfo(PropertyInfo propertyInfoSource)
Returns List ofPropertyInfo
fields for givenPropertyInfoSource
.Set<String>
getProvidedTypeNames()
Set of type prefix names that are supported by the providerboolean
hasPropertyInfoProvider(PropertyInfo propertyInfo)
Checks thatPropertyInfo
hasIPropertyInfoProvider
-
-
-
Field Detail
-
rwLock
protected final ReentrantReadWriteLock rwLock
-
writeLock
protected final Lock writeLock
-
readLock
protected final Lock readLock
-
-
Method Detail
-
addDataInfoProvider
public void addDataInfoProvider(IPropertyInfoProvider provider)
Description copied from interface:IPropertyInfoProvider.Registry
AddsIPropertyInfoProvider
to registry.- Specified by:
addDataInfoProvider
in interfaceIPropertyInfoProvider.Registry
- Parameters:
provider
-IPropertyInfoProvider
instance (notnull
).
-
getPropertyInfo
public List<PropertyInfo> getPropertyInfo(Form form)
GetsPropertyInfo
forForm
- Specified by:
getPropertyInfo
in interfaceIPropertyInfoProvider
- Parameters:
form
- the parentPropertyInfoSource
- Returns:
- List of
DataInfo
fields for given type or emptyList, if there is no appropriate provider.
-
hasPropertyInfoProvider
public boolean hasPropertyInfoProvider(PropertyInfo propertyInfo)
Description copied from interface:IPropertyInfoProvider.Registry
Checks thatPropertyInfo
hasIPropertyInfoProvider
- Specified by:
hasPropertyInfoProvider
in interfaceIPropertyInfoProvider.Registry
- Parameters:
propertyInfo
- checkingPropertyInfo
, can't benull
- Returns:
true
ifPropertyInfo
hasIPropertyInfoProvider
,false
otherwise
-
getPropertyInfo
public List<PropertyInfo> getPropertyInfo(PropertyInfo propertyInfoSource)
Description copied from interface:IPropertyInfoProvider
Returns List ofPropertyInfo
fields for givenPropertyInfoSource
.- Specified by:
getPropertyInfo
in interfaceIPropertyInfoProvider
- Parameters:
propertyInfoSource
- the parentPropertyInfoSource
- Returns:
- List of
DataInfo
fields for given type or emptyList, if there is no appropriate provider.
-
getProvidedTypeNames
public Set<String> getProvidedTypeNames()
Description copied from interface:IPropertyInfoProvider
Set of type prefix names that are supported by the provider- Specified by:
getProvidedTypeNames
in interfaceIPropertyInfoProvider
- Returns:
- the set of type prefix names
-
-