Esempio n. 1
0
 /// <summary>
 /// Implements <see cref="IVerbalizeCustomChildren.GetCustomChildVerbalizations"/>.
 /// Explicitly verbalizes extension elements
 /// </summary>
 protected IEnumerable <CustomChildVerbalizer> GetCustomChildVerbalizations(IVerbalizeFilterChildren filter, IDictionary <string, object> verbalizationOptions, VerbalizationSign sign)
 {
     foreach (ModelElement extensionElement in ExtensionCollection)
     {
         IVerbalize verbalizeExtension = extensionElement as IVerbalize;
         if (verbalizeExtension != null)
         {
             yield return(CustomChildVerbalizer.VerbalizeInstance(verbalizeExtension));
         }
     }
 }
Esempio n. 2
0
 IEnumerable <CustomChildVerbalizer> IVerbalizeCustomChildren.GetCustomChildVerbalizations(IVerbalizeFilterChildren filter, IDictionary <string, object> verbalizationOptions, VerbalizationSign sign)
 {
     return(GetCustomChildVerbalizations(filter, verbalizationOptions, sign));
 }
Esempio n. 3
0
 /// <summary>
 /// Implements IVerbalizeCustomChildren.GetCustomChildVerbalizations. Hides
 /// implementation in <see cref="FactType"/>
 /// </summary>
 protected static new IEnumerable <CustomChildVerbalizer> GetCustomChildVerbalizations(IVerbalizeFilterChildren filter, IDictionary <string, object> verbalizationOptions, VerbalizationSign sign)
 {
     yield break;
 }
Esempio n. 4
0
                IEnumerable <CustomChildVerbalizer> IVerbalizeExtensionChildren.GetExtensionChildVerbalizations(object parentElement, IVerbalizeFilterChildren filter, VerbalizationSign sign)
                {
                    // Get the instance data local and release the cached iterator
                    IORMExtendableElement propertyOwner = parentElement as IORMExtendableElement;

                    if (propertyOwner != null)
                    {
                        PropertyDefinitionFilter propertyFilter           = myPropertyFilter;
                        LinkedElementCollection <ModelElement> extensions = null;
                        foreach (CustomPropertyDefinition customPropertyDefinition in propertyOwner.Store.ElementDirectory.FindElements <CustomPropertyDefinition>())
                        {
                            object defaultValue;
                            string defaultValueString;
                            if (!customPropertyDefinition.VerbalizeDefaultValue ||
                                null == (defaultValue = customPropertyDefinition.DefaultValue) ||
                                (null != (defaultValueString = defaultValue as string) && defaultValueString.Length == 0) ||
                                (propertyFilter != null && !propertyFilter(propertyOwner, customPropertyDefinition)))
                            {
                                continue;
                            }
                            bool haveMatchingProperty = false;
                            foreach (ModelElement extensionElement in extensions ?? (extensions = propertyOwner.ExtensionCollection))
                            {
                                CustomProperty customProperty = extensionElement as CustomProperty;
                                if (customProperty != null && customProperty.CustomPropertyDefinition == customPropertyDefinition)
                                {
                                    haveMatchingProperty = true;
                                    break;
                                }
                            }
                            if (!haveMatchingProperty)
                            {
                                DefaultPropertyValueVerbalizer verbalizer = DefaultPropertyValueVerbalizer.GetVerbalizer();
                                verbalizer.Attach(customPropertyDefinition);
                                yield return(CustomChildVerbalizer.VerbalizeInstance(verbalizer, true));
                            }
                        }
                    }
                }
Esempio n. 5
0
				IEnumerable<CustomChildVerbalizer> IVerbalizeExtensionChildren.GetExtensionChildVerbalizations(object parentElement, IVerbalizeFilterChildren filter, VerbalizationSign sign)
				{
					// Get the instance data local and release the cached iterator
					IORMExtendableElement propertyOwner = parentElement as IORMExtendableElement;
					if (propertyOwner != null)
					{
						PropertyDefinitionFilter propertyFilter = myPropertyFilter;
						LinkedElementCollection<ModelElement> extensions = null;
						foreach (CustomPropertyDefinition customPropertyDefinition in propertyOwner.Store.ElementDirectory.FindElements<CustomPropertyDefinition>())
						{
							object defaultValue;
							if (!customPropertyDefinition.VerbalizeDefaultValue ||
								null == (defaultValue = customPropertyDefinition.DefaultValue) ||
								(propertyFilter != null && !propertyFilter(propertyOwner, customPropertyDefinition)))
							{
								continue;
							}
							bool haveMatchingProperty = false;
							foreach (ModelElement extensionElement in extensions ?? (extensions = propertyOwner.ExtensionCollection))
							{
								CustomProperty customProperty = extensionElement as CustomProperty;
								if (customProperty != null && customProperty.CustomPropertyDefinition == customPropertyDefinition)
								{
									haveMatchingProperty = true;
									break;
								}
							}
							if (!haveMatchingProperty)
							{
								DefaultPropertyValueVerbalizer verbalizer = DefaultPropertyValueVerbalizer.GetVerbalizer();
								verbalizer.Attach(customPropertyDefinition);
								yield return CustomChildVerbalizer.VerbalizeInstance(verbalizer, true);
							}
						}
					}
				}
Esempio n. 6
0
		IEnumerable<CustomChildVerbalizer> IVerbalizeCustomChildren.GetCustomChildVerbalizations(IVerbalizeFilterChildren filter, VerbalizationSign sign)
		{
			return GetCustomChildVerbalizations(filter, sign);
		}
Esempio n. 7
0
		/// <summary>
		/// Implements <see cref="IVerbalizeCustomChildren.GetCustomChildVerbalizations"/>
		/// Returns standalone error verbalizer.
		/// </summary>
		protected IEnumerable<CustomChildVerbalizer> GetCustomChildVerbalizations(IVerbalizeFilterChildren filter, VerbalizationSign sign)
		{
			ErrorReport verbalizer = ErrorReport.GetVerbalizer();
			verbalizer.Initialize(this);
			yield return CustomChildVerbalizer.VerbalizeInstance(verbalizer, true);
		}
Esempio n. 8
0
			/// <summary>
			/// Initializes a new instance of FactTypeVerbalizationWrapper
			/// </summary>
			/// <param name="verbalizationObject">The verbalization object.</param>
			/// <param name="filter">The filter.</param>
			public ObjectTypePageHeaderSummary(IVerbalize verbalizationObject, IVerbalizeFilterChildren filter)
			{
				myVerbalizationObject = verbalizationObject;
				myFilterChildren = filter;
			}
Esempio n. 9
0
			/// <summary>
			/// Implements IVerbalizeCustomChildren.GetCustomChildVerbalizations
			/// </summary>
			/// <param name="filter">A <see cref="IVerbalizeFilterChildren"/> instance. Can be <see langword="null"/>.
			/// If the <see cref="IVerbalizeFilterChildren.FilterChildVerbalizer">FilterChildVerbalizer</see> method returns
			/// <see cref="CustomChildVerbalizer.Block"/> for any constituent components used to create a <see cref="CustomChildVerbalizer"/>,
			/// then that custom child should not be created</param>
			/// <param name="sign">The preferred verbalization sign</param>
			/// <returns>
			/// IEnumerable of CustomChildVerbalizer structures
			/// </returns>
			protected IEnumerable<CustomChildVerbalizer> GetCustomChildVerbalizations(IVerbalizeFilterChildren filter, VerbalizationSign sign)
			{
				yield return CustomChildVerbalizer.VerbalizeInstance(new VerbalizationReportTableOfContentsWrapper(myReportContent, mySnippets));
				yield return CustomChildVerbalizer.VerbalizeInstance(new ModelContextWrapper(myModel, ReportVerbalizationSnippetType.ContextModelDescriptionOpen, ReportVerbalizationSnippetType.ContextModelDescriptionClose));
				yield return CustomChildVerbalizer.VerbalizeInstance(new ObjectTypeListWrapper(myObjectTypeList, myHeaderSnippet, myFooterSnippet));
			}
Esempio n. 10
0
			/// <summary>
			/// Implements IVerbalizeCustomChildren.GetCustomChildVerbalizations
			/// </summary>
			protected IEnumerable<CustomChildVerbalizer> GetCustomChildVerbalizations(IVerbalizeFilterChildren filter, VerbalizationSign sign)
			{
				yield return CustomChildVerbalizer.VerbalizeInstance(new ObjectTypePageHeaderSummary(myObjectType, filter));
				yield return CustomChildVerbalizer.VerbalizeInstance(new ObjectTypePageFactTypeSection(myObjectType));
				yield return CustomChildVerbalizer.VerbalizeInstance(new ObjectTypePageRelationshipSection(myObjectType));
				yield return CustomChildVerbalizer.VerbalizeInstance(new GenericSuperTypeSection(myObjectType));
				yield return CustomChildVerbalizer.VerbalizeInstance(new GenericSubTypeSection(myObjectType));
			}
Esempio n. 11
0
			/// <summary>
			/// Implements IVerbalizeCustomChildren.GetCustomChildVerbalizations
			/// </summary>
			protected IEnumerable<CustomChildVerbalizer> GetCustomChildVerbalizations(IVerbalizeFilterChildren filter, VerbalizationSign sign)
			{
				yield return CustomChildVerbalizer.VerbalizeInstance(new VerbalizationReportTableOfContentsWrapper(myReportContent, mySnippets));
				yield return CustomChildVerbalizer.VerbalizeInstance(new ModelContextWrapper(myModel, ReportVerbalizationSnippetType.ContextModelDescriptionOpen, ReportVerbalizationSnippetType.ContextModelDescriptionClose));
				yield return CustomChildVerbalizer.VerbalizeInstance(new GenericSnippetVerbalizer(ReportVerbalizationSnippetType.FactTypeConstraintValidationHeader));
				int factTypeCount = myFactTypeList.Count;
				for (int i = 0; i < factTypeCount; ++i)
				{
					yield return CustomChildVerbalizer.VerbalizeInstance(new FactTypePageHeaderSummary(myFactTypeList[i], filter));
					yield return CustomChildVerbalizer.VerbalizeInstance(new FactTypePageObjectTypeSection(ReportVerbalizationSnippetType.ObjectTypeListObjectTypeValueLink, myFactTypeList[i]));
					yield return CustomChildVerbalizer.VerbalizeInstance(new ConstraintValidationSection(myReportContent, GetConstraintsFromFactType(myFactTypeList[i], myReportContent)));
				}
				yield return CustomChildVerbalizer.VerbalizeInstance(new GenericSnippetVerbalizer(ReportVerbalizationSnippetType.FactTypeConstraintValidationSignature));
			}
Esempio n. 12
0
			/// <summary>
			/// Implements IVerbalizeCustomChildren.GetCustomChildVerbalizations
			/// </summary>
			protected IEnumerable<CustomChildVerbalizer> GetCustomChildVerbalizations(IVerbalizeFilterChildren filter, VerbalizationSign sign)
			{
				yield return CustomChildVerbalizer.VerbalizeInstance(new FactTypePageHeaderSummary(myFactType, filter));
				yield return CustomChildVerbalizer.VerbalizeInstance(new FactTypePageObjectTypeSection(ReportVerbalizationSnippetType.ObjectTypeRelationshipValueLink, myFactType));
				yield return CustomChildVerbalizer.VerbalizeInstance(new GenericConstraintSection(myReportContent, GetConstraintsFromFactType(myFactType, myReportContent)));
				if (myFactType.Objectification != null)
				{
					yield return CustomChildVerbalizer.VerbalizeInstance(new GenericSuperTypeSection(myFactType.Objectification.NestingType));
					yield return CustomChildVerbalizer.VerbalizeInstance(new GenericSubTypeSection(myFactType.Objectification.NestingType));
				}
			}