Interface IMdObjectAvailabilityDelegate

All Known Implementing Classes:
MdObjectAvailabilityDelegate, MdObjectExtensionAvailability_v8_3_10, MdObjectExtensionAvailability_v8_3_11, MdObjectExtensionAvailability_v8_3_12, MdObjectExtensionAvailability_v8_3_13, MdObjectExtensionAvailability_v8_3_14, MdObjectExtensionAvailability_v8_3_15, MdObjectExtensionAvailability_v8_3_16, MdObjectExtensionAvailability_v8_3_17, MdObjectExtensionAvailability_v8_3_18, MdObjectExtensionAvailability_v8_3_19, MdObjectExtensionAvailability_v8_3_20, MdObjectExtensionAvailability_v8_3_21, MdObjectExtensionAvailability_v8_3_22, MdObjectExtensionAvailability_v8_3_23, MdObjectExtensionAvailability_v8_3_24, MdObjectExtensionAvailability_v8_3_25, MdObjectExtensionAvailability_v8_3_26, MdObjectExtensionAvailability_v8_3_27, MdObjectExtensionAvailability_v8_3_8, MdObjectExtensionAvailability_v8_3_9, MdObjectMobileAvailability

public interface IMdObjectAvailabilityDelegate
Describes an availability if metadata objects. Metadata objects availabilities are defined by extensions. An availability extension is defined in plugin.xml.

Following is an example definition of a metadata object availability:

 <extension point="com._1c.g5.v8.dt.md.objectAvailability">
    <delegate class="com.example.ExampleMdObjectAvailability">
       <supportedRuntimes runtime="com._1c.g5.v8.dt.platform.runtime.8.3.9"/>
       <supportedRuntimes runtime="com._1c.g5.v8.dt.platform.runtime.8.3.10"/>
    </delegate>
 </extension>
 

Metadata objects availability describes some restrictions of metadata objects usage in DT IDE. All delegates are contributed and used by the IMdObjectAvailability service.

This interface is intended to be implemented and registered by clients. Instances are not intended to be explicitly used by client.

See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    isAvailable(org.eclipse.emf.ecore.EClass eClass, IV8Project v8project)
    Returns whether the provided metadata class is currently available in the provided V8 project.
    boolean
    isAvailable(org.eclipse.emf.ecore.EObject eObject, IV8Project v8project)
    Returns whether the provided metadata class is currently available in the provided V8 project.
    boolean
    isAvailable(org.eclipse.emf.ecore.EObject eObject, org.eclipse.emf.ecore.EStructuralFeature feature, IV8Project v8project)
    Returns whether the feature of the provided metadata class is currently available in the provided V8 project.
  • Method Details

    • isAvailable

      boolean isAvailable(org.eclipse.emf.ecore.EClass eClass, IV8Project v8project)
      Returns whether the provided metadata class is currently available in the provided V8 project.
      Parameters:
      eClass - the metadata class to check availability, cannot be null
      v8project - the V8 project to check in, cannot be null
      Returns:
      whether the provided metadata class is currently available in the provided V8 project
    • isAvailable

      boolean isAvailable(org.eclipse.emf.ecore.EObject eObject, IV8Project v8project)
      Returns whether the provided metadata class is currently available in the provided V8 project.
      Parameters:
      eObject - the metadata object to check availability, cannot be null
      v8project - the V8 project to check in, cannot be null
      Returns:
      whether the provided metadata class is currently available in the provided V8 project
    • isAvailable

      boolean isAvailable(org.eclipse.emf.ecore.EObject eObject, org.eclipse.emf.ecore.EStructuralFeature feature, IV8Project v8project)
      Returns whether the feature of the provided metadata class is currently available in the provided V8 project. Feature may be not available even if object itself is available.
      Parameters:
      eObject - the metadata object to check feature availability in, cannot be null
      feature - the context feature to check availability, cannot be null
      v8project - the V8 project to check in, cannot be null
      Returns:
      whether the provided metadata class is currently available in the provided V8 project