本文整理汇总了C#中IAsset.GetEncryptionState方法的典型用法代码示例。如果您正苦于以下问题:C# IAsset.GetEncryptionState方法的具体用法?C# IAsset.GetEncryptionState怎么用?C# IAsset.GetEncryptionState使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IAsset
的用法示例。
在下文中一共展示了IAsset.GetEncryptionState方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ExportAssetExcel
private void ExportAssetExcel(IAsset asset, Excel.Worksheet xlWorkSheet, int row, bool detailed, bool localtime)
{
int index = 1;
xlWorkSheet.Cells[row, index++] = asset.Name;
xlWorkSheet.Cells[row, index++] = asset.Id;
xlWorkSheet.Cells[row, index++] = localtime ? asset.LastModified.ToLocalTime() : asset.LastModified;
xlWorkSheet.Cells[row, index++] = AssetInfo.GetAssetType(asset);
xlWorkSheet.Cells[row, index++] = AssetInfo.GetSize(asset);
int backindex = index;
var urls = AssetInfo.GetURIs(asset);
if (urls!=null)
{
foreach (var url in urls)
{
xlWorkSheet.Cells[row, index++] = url != null ? url.ToString() : string.Empty;
}
}
index = backindex + _context.StreamingEndpoints.Count();
if (localtime)
{
xlWorkSheet.Cells[row, index++] = asset.Locators.Any() ? (DateTime?)asset.Locators.Max(l => l.ExpirationDateTime).ToLocalTime() : null;
}
else
{
xlWorkSheet.Cells[row, index++] = asset.Locators.Any() ? (DateTime?)asset.Locators.Max(l => l.ExpirationDateTime) : null;
}
if (detailed)
{
xlWorkSheet.Cells[row, index++] = asset.AlternateId;
xlWorkSheet.Cells[row, index++] = asset.StorageAccount.Name;
var streamingloc = asset.Locators.Where(l => l.Type == LocatorType.OnDemandOrigin);
xlWorkSheet.Cells[row, index++] = streamingloc.Count();
if (localtime)
{
xlWorkSheet.Cells[row, index++] = streamingloc.Any() ? (DateTime?)streamingloc.Min(l => l.ExpirationDateTime).ToLocalTime() : null;
xlWorkSheet.Cells[row, index++] = streamingloc.Any() ? (DateTime?)streamingloc.Max(l => l.ExpirationDateTime).ToLocalTime() : null;
}
else
{
xlWorkSheet.Cells[row, index++] = streamingloc.Any() ? (DateTime?)streamingloc.Min(l => l.ExpirationDateTime) : null;
xlWorkSheet.Cells[row, index++] = streamingloc.Any() ? (DateTime?)streamingloc.Max(l => l.ExpirationDateTime) : null;
}
var sasloc = asset.Locators.Where(l => l.Type == LocatorType.Sas);
xlWorkSheet.Cells[row, index++] = sasloc.Count();
if (localtime)
{
xlWorkSheet.Cells[row, index++] = sasloc.Any() ? (DateTime?)sasloc.Min(l => l.ExpirationDateTime).ToLocalTime() : null;
xlWorkSheet.Cells[row, index++] = sasloc.Any() ? (DateTime?)sasloc.Max(l => l.ExpirationDateTime).ToLocalTime() : null;
}
else
{
xlWorkSheet.Cells[row, index++] = sasloc.Any() ? (DateTime?)sasloc.Min(l => l.ExpirationDateTime) : null;
xlWorkSheet.Cells[row, index++] = sasloc.Any() ? (DateTime?)sasloc.Max(l => l.ExpirationDateTime) : null;
}
xlWorkSheet.Cells[row, index++] = asset.GetEncryptionState(AssetDeliveryProtocol.SmoothStreaming | AssetDeliveryProtocol.HLS | AssetDeliveryProtocol.Dash).ToString();
xlWorkSheet.Cells[row, index++] = asset.AssetFilters.Count().ToString();
}
}
示例2: ExportAssetExcel
private void ExportAssetExcel(IAsset asset, Excel.Worksheet xlWorkSheet, int row, bool detailed, bool localtime)
{
int index = 1;
xlWorkSheet.Cells[row, index++] = asset.Name;
xlWorkSheet.Cells[row, index++] = asset.Id;
xlWorkSheet.Cells[row, index++] = localtime ? asset.LastModified.ToLocalTime() : asset.LastModified;
xlWorkSheet.Cells[row, index++] = AssetInfo.GetAssetType(asset);
xlWorkSheet.Cells[row, index++] = AssetInfo.GetSize(asset);
int backindex = index;
var urls = AssetInfo.GetURIs(asset);
if (urls != null)
{
foreach (var url in urls)
{
xlWorkSheet.Cells[row, index++] = url != null ? url.ToString() : string.Empty;
}
}
index = backindex + _context.StreamingEndpoints.Count();
var streamlocators = asset.Locators.Where(l => l.Type == LocatorType.OnDemandOrigin);
if (streamlocators.Any())
{
if (localtime)
{
xlWorkSheet.Cells[row, index++] = (DateTime?)streamlocators.Max(l => l.ExpirationDateTime).ToLocalTime();
}
else
{
xlWorkSheet.Cells[row, index++] = (DateTime?)streamlocators.Max(l => l.ExpirationDateTime);
}
}
else
{
xlWorkSheet.Cells[row, index++] = string.Empty;
}
// SAS locator
var saslocators = asset.Locators.Where(l => l.Type == LocatorType.Sas);
var saslocator = saslocators.ToList().OrderByDescending(l => l.ExpirationDateTime).FirstOrDefault();
if (saslocator != null && asset.AssetFiles.Count() > 0)
{
var ProgressiveDownloadUri = asset.AssetFiles.ToList().OrderByDescending(af => af.ContentFileSize).FirstOrDefault().GetSasUri(saslocator);
xlWorkSheet.Cells[row, index++] = ProgressiveDownloadUri.AbsoluteUri;
if (localtime)
{
xlWorkSheet.Cells[row, index++] = saslocator.ExpirationDateTime.ToLocalTime();
}
else
{
xlWorkSheet.Cells[row, index++] = saslocator.ExpirationDateTime;
}
}
else
{
xlWorkSheet.Cells[row, index++] = string.Empty;
xlWorkSheet.Cells[row, index++] = string.Empty;
}
if (detailed)
{
xlWorkSheet.Cells[row, index++] = asset.AlternateId;
xlWorkSheet.Cells[row, index++] = asset.StorageAccount.Name;
xlWorkSheet.Cells[row, index++] = asset.Uri == null ? string.Empty : asset.Uri.ToString();
var streamingloc = asset.Locators.Where(l => l.Type == LocatorType.OnDemandOrigin);
xlWorkSheet.Cells[row, index++] = streamingloc.Count();
if (localtime)
{
xlWorkSheet.Cells[row, index++] = streamingloc.Any() ? (DateTime?)streamingloc.Min(l => l.ExpirationDateTime).ToLocalTime() : null;
xlWorkSheet.Cells[row, index++] = streamingloc.Any() ? (DateTime?)streamingloc.Max(l => l.ExpirationDateTime).ToLocalTime() : null;
}
else
{
xlWorkSheet.Cells[row, index++] = streamingloc.Any() ? (DateTime?)streamingloc.Min(l => l.ExpirationDateTime) : null;
xlWorkSheet.Cells[row, index++] = streamingloc.Any() ? (DateTime?)streamingloc.Max(l => l.ExpirationDateTime) : null;
}
// SAS
xlWorkSheet.Cells[row, index++] = saslocators.Count();
if (localtime)
{
xlWorkSheet.Cells[row, index++] = saslocators.Any() ? (DateTime?)saslocators.Min(l => l.ExpirationDateTime).ToLocalTime() : null;
xlWorkSheet.Cells[row, index++] = saslocators.Any() ? (DateTime?)saslocators.Max(l => l.ExpirationDateTime).ToLocalTime() : null;
}
else
{
xlWorkSheet.Cells[row, index++] = saslocators.Any() ? (DateTime?)saslocators.Min(l => l.ExpirationDateTime) : null;
xlWorkSheet.Cells[row, index++] = saslocators.Any() ? (DateTime?)saslocators.Max(l => l.ExpirationDateTime) : null;
}
xlWorkSheet.Cells[row, index++] = asset.GetEncryptionState(AssetDeliveryProtocol.SmoothStreaming | AssetDeliveryProtocol.HLS | AssetDeliveryProtocol.Dash).ToString();
xlWorkSheet.Cells[row, index++] = asset.AssetFilters.Count().ToString();
}
}
示例3: ValidateAssetEncryptionState
private void ValidateAssetEncryptionState(IAsset asset, AssetDeliveryProtocol protocolsToTest, AssetEncryptionState expectedState)
{
AssetEncryptionState actualState = asset.GetEncryptionState(protocolsToTest);
Assert.AreEqual(expectedState, actualState);
}
示例4: BuildBitmapDynEncryption
private static AssetBitmapAndText BuildBitmapDynEncryption(IAsset asset)
{
AssetBitmapAndText ABT = new AssetBitmapAndText();
AssetEncryptionState assetEncryptionState = asset.GetEncryptionState(AssetDeliveryProtocol.SmoothStreaming | AssetDeliveryProtocol.HLS | AssetDeliveryProtocol.Dash);
switch (assetEncryptionState)
{
case AssetEncryptionState.DynamicCommonEncryption:
ABT.bitmap = commonencryptedimage;
ABT.MouseOverDesc = "Dynamic Common Encryption (CENC)";
break;
case AssetEncryptionState.DynamicEnvelopeEncryption:
ABT.bitmap = envelopeencryptedimage;
ABT.MouseOverDesc = "Dynamic Envelope Encryption (AES)";
break;
case AssetEncryptionState.NoDynamicEncryption:
ABT.bitmap = storagedecryptedimage;
ABT.MouseOverDesc = "No Dynamic Encryption";
break;
case AssetEncryptionState.NoSinglePolicyApplies:
AssetEncryptionState assetEncryptionStateHLS = asset.GetEncryptionState(AssetDeliveryProtocol.HLS);
AssetEncryptionState assetEncryptionStateSmooth = asset.GetEncryptionState(AssetDeliveryProtocol.SmoothStreaming);
AssetEncryptionState assetEncryptionStateDash = asset.GetEncryptionState(AssetDeliveryProtocol.Dash);
bool CENCEnable = (assetEncryptionStateHLS == AssetEncryptionState.DynamicCommonEncryption || assetEncryptionStateSmooth == AssetEncryptionState.DynamicCommonEncryption || assetEncryptionStateDash == AssetEncryptionState.DynamicCommonEncryption);
bool EnvelopeEnable = (assetEncryptionStateHLS == AssetEncryptionState.DynamicEnvelopeEncryption || assetEncryptionStateSmooth == AssetEncryptionState.DynamicEnvelopeEncryption || assetEncryptionStateDash == AssetEncryptionState.DynamicEnvelopeEncryption);
if (CENCEnable && EnvelopeEnable)
{
ABT.bitmap = new Bitmap((envelopeencryptedimage.Width + commonencryptedimage.Width), envelopeencryptedimage.Height);
using (Graphics graphicsObject = Graphics.FromImage(ABT.bitmap))
{
graphicsObject.DrawImage(envelopeencryptedimage, new Point(0, 0));
graphicsObject.DrawImage(commonencryptedimage, new Point(envelopeencryptedimage.Width, 0));
}
}
else
{
ABT.bitmap = CENCEnable ? commonencryptedimage : envelopeencryptedimage;
}
ABT.MouseOverDesc = "Multiple policies";
break;
default:
break;
}
return ABT;
}
示例5: ExportAssetExcel
private void ExportAssetExcel(IAsset asset, Excel.Worksheet xlWorkSheet, int row, bool detailed, bool localtime)
{
xlWorkSheet.Cells[row, 1] = asset.Name;
xlWorkSheet.Cells[row, 2] = asset.Id;
xlWorkSheet.Cells[row, 3] = localtime ? asset.LastModified.ToLocalTime() : asset.LastModified;
xlWorkSheet.Cells[row, 4] = AssetInfo.GetAssetType(asset);
xlWorkSheet.Cells[row, 5] = AssetInfo.GetSize(asset);
var url = AssetInfo.GetValidOnDemandURI(asset);
xlWorkSheet.Cells[row, 6] = url != null ? url.ToString() : string.Empty;
if (localtime)
{
xlWorkSheet.Cells[row, 7] = asset.Locators.Any() ? (DateTime?)asset.Locators.Max(l => l.ExpirationDateTime).ToLocalTime() : null;
}
else
{
xlWorkSheet.Cells[row, 7] = asset.Locators.Any() ? (DateTime?)asset.Locators.Max(l => l.ExpirationDateTime) : null;
}
if (detailed)
{
xlWorkSheet.Cells[row, 8] = asset.AlternateId;
xlWorkSheet.Cells[row, 9] = asset.StorageAccount.Name;
var streamingloc = asset.Locators.Where(l => l.Type == LocatorType.OnDemandOrigin);
xlWorkSheet.Cells[row, 10] = streamingloc.Count();
if (localtime)
{
xlWorkSheet.Cells[row, 11] = streamingloc.Any() ? (DateTime?)streamingloc.Min(l => l.ExpirationDateTime).ToLocalTime() : null;
xlWorkSheet.Cells[row, 12] = streamingloc.Any() ? (DateTime?)streamingloc.Max(l => l.ExpirationDateTime).ToLocalTime() : null;
}
else
{
xlWorkSheet.Cells[row, 11] = streamingloc.Any() ? (DateTime?)streamingloc.Min(l => l.ExpirationDateTime) : null;
xlWorkSheet.Cells[row, 12] = streamingloc.Any() ? (DateTime?)streamingloc.Max(l => l.ExpirationDateTime) : null;
}
var sasloc = asset.Locators.Where(l => l.Type == LocatorType.Sas);
xlWorkSheet.Cells[row, 13] = sasloc.Count();
if (localtime)
{
xlWorkSheet.Cells[row, 14] = sasloc.Any() ? (DateTime?)sasloc.Min(l => l.ExpirationDateTime).ToLocalTime() : null;
xlWorkSheet.Cells[row, 15] = sasloc.Any() ? (DateTime?)sasloc.Max(l => l.ExpirationDateTime).ToLocalTime() : null;
}
else
{
xlWorkSheet.Cells[row, 14] = sasloc.Any() ? (DateTime?)sasloc.Min(l => l.ExpirationDateTime) : null;
xlWorkSheet.Cells[row, 15] = sasloc.Any() ? (DateTime?)sasloc.Max(l => l.ExpirationDateTime) : null;
}
xlWorkSheet.Cells[row, 16] = asset.GetEncryptionState(AssetDeliveryProtocol.SmoothStreaming | AssetDeliveryProtocol.HLS | AssetDeliveryProtocol.Dash).ToString();
}
}