internal ContentManifestAsset(ContentManifestGroup group, ContentManifestAssetDescription desc) { Contract.Require(group, nameof(group)); Contract.Require(desc, nameof(desc)); if (String.IsNullOrEmpty(desc.Name)) throw new InvalidDataException(UltravioletStrings.InvalidContentManifestAssetName); if (String.IsNullOrEmpty(desc.Path)) throw new InvalidDataException(UltravioletStrings.InvalidContentManifestAssetPath.Format(desc.Name)); this.ManifestGroup = group; this.Name = desc.Name; this.RelativePath = desc.Path; this.AbsolutePath = Path.Combine(group.Directory, desc.Path); this.Type = group.Type; }
/// <summary> /// Initializes a new instance of the <see cref="ContentManifestAsset"/> class. /// </summary> /// <param name="group">The <see cref="ContentManifestGroup"/> that owns the asset.</param> /// <param name="desc">The manifest asset description.</param> internal ContentManifestAsset(ContentManifestGroup group, ContentManifestAssetDescription desc) { Contract.Require(group, nameof(group)); Contract.Require(desc, nameof(desc)); if (String.IsNullOrEmpty(desc.Name)) { throw new InvalidDataException(UltravioletStrings.InvalidContentManifestAssetName); } if (String.IsNullOrEmpty(desc.Path)) { throw new InvalidDataException(UltravioletStrings.InvalidContentManifestAssetPath.Format(desc.Name)); } this.ManifestGroup = group; this.Name = desc.Name; this.RelativePath = desc.Path; this.AbsolutePath = Path.Combine(group.Directory, desc.Path); this.Type = group.Type; }