//---------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner Microsoft
// @backupOwner Microsoft
//---------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.Data.Common;
using System.Diagnostics;
using System.Globalization;
using System.Text;
using System.Data.Common.Utils;
namespace System.Data.Metadata.Edm
{
///
/// Class representing the Documentation associated with an item
///
public sealed class Documentation: MetadataItem
{
#region Fields
private string _summary = "";
private string _longDescription = "";
#endregion
#region Constructors
///
/// Default constructor - primarily created for supporting usage of this Documentation class by SOM.
///
internal Documentation()
{
}
#endregion
#region Properties
///
/// Returns the kind of the type
///
public override BuiltInTypeKind BuiltInTypeKind { get { return BuiltInTypeKind.Documentation; } }
///
/// Gets the Summary for this Documentation instance.
///
///
public string Summary
{
get
{
return _summary;
}
internal set
{
if (value != null)
_summary = value;
else
_summary = "";
}
}
///
/// Gets the LongDescription for this Documentation instance.
///
///
public string LongDescription
{
get
{
return _longDescription;
}
internal set
{
if (value != null)
_longDescription = value;
else
_longDescription = "";
}
}
///
/// This property is required to be implemented for inheriting from MetadataItem. As there can be atmost one
/// instance of a nested-Documentation, return the constant "Documentation" as it's identity.
///
internal override string Identity
{
get
{
return "Documentation";
}
}
///
/// Returns true if this Documentation instance contains only null/empty summary and longDescription
///
///
public bool IsEmpty
{
get
{
if (string.IsNullOrEmpty(_summary) && string.IsNullOrEmpty(_longDescription) )
{
return true;
}
return false;
}
}
#endregion
#region Methods
///
///
public override string ToString()
{
return _summary;
}
#endregion
}
}