public SupportedValueFromPropertyDataProducer(ISupportedValuePropertiesAvailableStatus properties)
 {
     _properties = properties;
 }
Exemple #2
0
        public static IEntityValue CreateSupportedValue(IEntityRuntimeModel runtimeModel, ProjectSystem.Properties.IEnumValue enumValue, ISupportedValuePropertiesAvailableStatus requestedProperties)
        {
            var newSupportedValue = new SupportedValueValue(runtimeModel, new SupportedValuePropertiesAvailableStatus());

            if (requestedProperties.DisplayName)
            {
                newSupportedValue.DisplayName = enumValue.DisplayName;
            }

            if (requestedProperties.Value)
            {
                newSupportedValue.Value = enumValue.Name;
            }

            return(newSupportedValue);
        }
Exemple #3
0
        public static async Task <IEnumerable <IEntityValue> > CreateSupportedValuesAsync(IEntityValue parent, ProjectSystem.Properties.IProperty property, ISupportedValuePropertiesAvailableStatus requestedProperties)
        {
            if (property is ProjectSystem.Properties.IEnumProperty enumProperty)
            {
                ReadOnlyCollection <ProjectSystem.Properties.IEnumValue> enumValues = await enumProperty.GetAdmissibleValuesAsync();

                return(createSupportedValues(enumValues));
            }

            return(Enumerable.Empty <IEntityValue>());

            IEnumerable <IEntityValue> createSupportedValues(ReadOnlyCollection <ProjectSystem.Properties.IEnumValue> enumValues)
            {
                foreach (ProjectSystem.Properties.IEnumValue value in enumValues)
                {
                    IEntityValue supportedValue = CreateSupportedValue(parent.EntityRuntime, value, requestedProperties);
                    yield return(supportedValue);
                }
            }
        }
        public static async Task <IEnumerable <IEntityValue> > CreateSupportedValuesAsync(IEntityRuntimeModel runtimeModel, ProjectSystem.Properties.IEnumProperty enumProperty, ISupportedValuePropertiesAvailableStatus requestedProperties)
        {
            ReadOnlyCollection <ProjectSystem.Properties.IEnumValue> enumValues = await enumProperty.GetAdmissibleValuesAsync();

            return(createSupportedValues());

            IEnumerable <IEntityValue> createSupportedValues()
            {
                foreach (ProjectSystem.Properties.IEnumValue value in enumValues)
                {
                    IEntityValue supportedValue = CreateSupportedValue(runtimeModel, value, requestedProperties);
                    yield return(supportedValue);
                }
            }
        }