using System;
using System.IO;
using System.CodeDom.Compiler;
using System.Diagnostics;
namespace AnticipatingMinds.Genesis.CodeDOM{
/// <summary>
/// Represents an assembly resource file. (.resx)
/// </summary>
public class CodeResourceFile : CodeAssemblyFile
{
public CodeResourceFile():this(null)
{
}
public CodeResourceFile(string sourceFileName):base()
{
SourceFileName = sourceFileName;
Language = CodeLanguage.Resx;
}
/// <summary>
/// Gets a collection of defined resources.
/// </summary>
public CodeResourceCollection Resources
{
get
{
return resources;
}
}
/// <summary>
/// Gets or sets default resources namespace.
/// </summary>
public string Namespace
{
get
{
return resourceNamespace;
}
set
{
resourceNamespace = value;
}
}
/// <summary>
/// Gets the .resource file full name (extended with default namespace)
/// </summary>
public string FullName
{
get
{
if(Namespace != null && Namespace.Length != 0)
return Namespace + "."+ Path.GetFileNameWithoutExtension(SourceFileName) + ".resources";
else
return Path.GetFileNameWithoutExtension(SourceFileName) + ".resources";
}
}
private string resourceNamespace;
private CodeResourceCollection resources = new CodeResourceCollection();
}
}
|