ArchiMetrics.Analysis.Model.SolutionVertexRepository.CreateNamespaceReferenceNode C# (CSharp) Method

CreateNamespaceReferenceNode() private static method

private static CreateNamespaceReferenceNode ( ITypeDefinition definition, IEnumerable projectMetrics ) : IModelNode
definition ITypeDefinition
projectMetrics IEnumerable
return IModelNode
		private static IModelNode CreateNamespaceReferenceNode(ITypeDefinition definition, IEnumerable<IProjectMetric> projectMetrics)
		{
			var actualNs = (from project in projectMetrics
							where project.Name == definition.Assembly
							from ns in project.NamespaceMetrics
							where ns.Name == definition.Namespace
							select ns)
				.FirstOrDefault();

			var children = actualNs == null
							   ? new List<IModelNode> { new ModelNode(definition.TypeName, definition.Namespace, CodeQuality.Good, 0, 100, 0) }
							   : new List<IModelNode>();
			return new StaticModelNode(
				definition.Namespace,
				NodeKind.Namespace,
				CodeQuality.Good,
				actualNs == null ? 0 : actualNs.LinesOfCode,
				actualNs == null ? 100 : actualNs.MaintainabilityIndex,
				actualNs == null ? 0 : actualNs.CyclomaticComplexity,
				children);
		}
	}