using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.InformationProtection;
namespace AipGateway.AIP
{
public enum AipAssignmentMethod
{
Standard,
Privileged,
Auto,
}
public class AipContentLabel
{
public AipContentLabel(
AipLabel label,
DateTime creationTime,
AipAssignmentMethod assignmentMethod,
bool isProtectionAppliedFromLabel)
{
this.Label = label;
this.CreationTime = creationTime;
this.AssignmentMethod = assignmentMethod;
this.IsProtectionAppliedFromLabel = isProtectionAppliedFromLabel;
}
/// The actual label object applied on the content.
public AipLabel Label { get; private set; }
/// The creation time of the label.
public DateTime CreationTime { get; private set; }
/// The assignment method of the label.
public AipAssignmentMethod AssignmentMethod { get; private set; }
///
/// Returns true if protection was applied by the label or not.
///
public bool IsProtectionAppliedFromLabel { get; private set; }
}
public enum AipProtectionType
{
/// Protection was created from a template
TemplateBased,
/// Protection was created ad hoc
Custom,
}
public class AipProtectionHandler
{
ProtectionDescriptor ProtectionDescriptor { get; }
string Owner { get; }
string IssuedTo { get; }
bool IsIssuedToOwner { get; }
string ContentId { get; }
bool UseDeprecatedAlgorithms { get; }
bool AuditedExtractAllowed { get; }
}
public class AipFileInfo
{
public AipContentLabel Label;
}
}