Sie sind auf Seite 1von 93

[DataContract]

[KnownType(typeof(Interview))]
[KnownType(typeof(DigitalCaseFolder))]
[KnownType(typeof(Task))]
[KnownType(typeof(Attachment))]
[KnownType(typeof(Recording))]
[KnownType(typeof(Bookmark))]
[KnownType(typeof(SystemObject))]
[KnownType(typeof(Role))]
[KnownType(typeof(Email))]
[KnownType(typeof(DiscPublisher))]
[KnownType(typeof(BurningRobot))]
[KnownType(typeof(BurningTaskItem))]
[KnownType(typeof(BurningTaskOrder))]
[KnownType(typeof(DiscTemplate))]
[KnownType(typeof(EditData))]
[KnownType(typeof(EditRectangle))]
[KnownType(typeof(EditSelection))]
[KnownType(typeof(EmailPublished))]
[KnownType(typeof(NotificationEmailType))] public abstract class
BaseObject
/// <summary>
/// Gets/Sets ID
/// </summary>
[Column(Name = "id", IsDbGenerated = true, DbType = "Int")]
[DataMember]
public int ID
{
get;
set;
}

/// <summary>
/// Convert DataRow object to BaseObject
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <param name="objectForFilling">Target object</param>
/// <param name="extraFields">True - if field doesn't belong to object, exception
will not be raised </param>
/// <returns>BaseObject</returns>
public static void ReadValuesFromDataRow(Object objectForFilling, DataRow row, bool
extraFields)

/// <summary>
/// Convert DataRow object to BaseObject
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <param name="objectForFilling">Target object</param>
/// <param name="extraFields">True - if field doesn't belong to object, exception
will not be raised </param>
/// <returns>BaseObject</returns>
public static void ReadValuesFromDataRow(Object objectForFilling, SqlDataReader row,
bool extraFields)

[DataContract]
public abstract class BaseObjectCredentialData : BaseObject
1
/// <summary>
/// Gets/Sets User's/Group's SID
/// </summary>
[Column(Name = "idUser", DbType = "VarChar", Storage = "68")]
[DataMember]
public string CredentialSID
{
get;
set;
}

/// <summary>
/// Gets/Sets Name of User's/Group's
/// </summary>
[Column(Name = "userName", DbType = "NVarChar", Storage = "104")]
[DataMember]
public string CredentialName
{
get;
set;
}

[DataContract]
public abstract partial class BaseObjectPermissions :
BaseObjectCredentialData
/// <summary>
/// Gets/Sets Name
/// </summary>
[Column(Name = "name", DbType = "NVarChar", Storage = "255")]
[DataMember]
public string Name
{
get;
set;
}

/// <summary>
/// Gets/Sets Comment
/// </summary>
[Column(Name = "comment", CanBeNull = true, DbType = "NVarChar", Storage = "255")]
[DataMember]
public string Comment
{
get;
set;
}

/// <summary>
/// Gets/Sets Creation time
/// </summary>
[Column(Name = "creationTime", DbType = "DateTime2")]
[DataMember]
public DateTime CreationTime
{
get;
set;
}
2
/// <summary>
/// Gets/Sets True - disposed object by retention policy
/// </summary>
[Column(Name = "disposed", DbType = "Bit")]
[DataMember]
public bool Disposed
{
get;
set;
}

3
/// <summary>
/// Gets/Sets True - the object can be visible in UI
/// </summary>
[Column(Name = "visible", DbType = "Bit")]
[DataMember]
public bool IsVisible
{
get;
set;
}

/// <summary>
/// Gets/Sets Permissions
/// </summary>
[DataMember]
public List<CommonParent> Permissions
{
get;
set;
}

/// <summary>
/// Gets/Sets Effective permissions for the current user
/// </summary>
[DataMember]
[System.Xml.Serialization.XmlIgnore]
public Permissions EffectivePermissions
{
get;
set;
}

/// <summary>
/// Gets/Sets Nested Metadata
/// </summary>
[DataMember]
[System.Xml.Serialization.XmlIgnore]
public Dictionary<MetaDataNames, MetaData> MetaData
{
get;
set;
}

4
/// <summary>
/// Gets/Sets True - object has been uploaded
/// </summary>
[Column(Name = "uploaded", DbType = "Bit")]
[DataMember]
public bool Uploaded
{
get;
set;
}

/// <summary>
/// Gets/Sets audit logs
/// </summary>
[DataMember]
public List<Log> AuditLogs
{
get;
set;
}

public BaseObjectPermissions()

[DataContract]
public partial class Interview (DigitalCase) :
BaseObjectPermissions
/// <summary>
/// Gets/Sets Media type of object
/// </summary>
[Column(Name = "mediaType", DbType = "TinyInt")]
[DataMember]
public MediaType Type
{
get;
set;
}

/// <summary>
/// Gets/Sets PC name
/// </summary>
[Column(Name = "clientName", DbType = "NVarChar", Storage = "63")]
[DataMember]
public string ClientName
{
get;
set;
}

/// <summary>
/// Gets/Sets Nested recordings
/// </summary>
[DataMember]
public List<Recording> Recordings
{
get;
set;
}

5
/// <summary>
/// Gets/Sets Nested attachments
/// </summary>
[DataMember]
public List<Attachment> Attachments
{
get;
set;
}

/// <summary>
/// Gets/Sets Nested burning tasks
/// </summary>
[DataMember]
public List<BurningTask> BurningTasks
{
get;
set;
}

/// <summary>
/// Gets/Sets Retention time
/// </summary>
[Column(Name = "retentionTime", CanBeNull = true, DbType = "DateTime")]
[DataMember]
public DateTime? RetentionTime
{
get;
set;
}

/// <summary>
/// Gets/Sets Retetion option
/// </summary>
[Column(Name = "retentionOption", DbType = "TinyInt")]
[DataMember]
public RetentionOption RetentionOption
{
get;
set;
}

/// <summary>
/// Gets/Sets Retetion type
/// </summary>
[Column(Name = "retentionType", DbType = "TinyInt")]
[DataMember]
public RetentionType RetentionType
{
get;
set;
}

/// <summary>
/// Gets/Sets Retetion rule
/// </summary>
[DataMember]
public RetentionRule RetentionRule
{
get;
6
set;
}

/// <summary>
/// Gets/Sets Path
/// </summary>
[Column(Name = "path", DbType = "NVarChar", Storage = "260")]
[DataMember]
public string Path
{
get;
set;
}

/// <summary>
/// Gets/Sets Directory name
/// </summary>
[Column(Name = "directoryName", DbType = "NVarChar", Storage = "255")]
[DataMember]
public string DirectoryName
{
get;
set;
}

/// <summary>
/// Gets/Sets Notified flag
/// </summary>
[Column(Name = "notified", DbType = "Bit")]
[DataMember]
public bool Notified
{
get;
set;
}

/// <summary>
/// Gets/Sets Modified time
/// </summary>
[Column(Name = "modifiedTime", CanBeNull = true, DbType = "DateTime")]
[DataMember]
public DateTime? ModifiedTime
{
get;
set;
}

/// <summary>
/// Gets/Sets Username - who disposed an object
/// </summary>
[Column(Name = "disposeByUserName", CanBeNull = true, DbType = "NVarChar", Storage =
"104")]
[DataMember]
public string DisposeByUserName
{
get;
set;
}

7
/// <summary>
/// Gets/Sets User SID - who disposed an object
/// </summary>
[Column(Name = "disposeBySID", CanBeNull = true, DbType = "VarChar", Storage =
"68")]
[DataMember]
public string DisposeBySID
{
get;
set;
}

/// <summary>
/// Gets/Sets GUID
/// </summary>
[Column(Name = "guid", DbType = "VarChar", Storage = "56")]
[DataMember]
public string GUID
{
get;
set;
}

/// <summary>
/// Gets/Sets Link history
/// </summary>
[DataMember]
public List<LinkHistory> LinkHistory
{
get;
set;
}

/// <summary>
/// Gets/Sets Link history
/// </summary>
[DataMember]
public bool FilesExported
{
get;
set;
}

/// <summary>
/// Gets/Sets publish history
/// </summary>
[DataMember]
public List<PublishJob> PublishHistory
{
get;
set;
}

public Interview()

/// <summary>
/// Convert DataRow object to Interview
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns> Interview </returns>
8
public static explicit operator Interview(DataRow row)

/// <summary>
/// Convert DataRow object to shallow Attachment
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>Attachment</returns>
public static Interview GetShallowItemFromDataRow(DataRow row)

/// <summary>
/// Returns recording by its Guid
/// </summary>
/// <param name="guid"></param>
/// <returns></returns>
public Recording GetRecordingByGuid(string guid)

/// <summary>
/// Returns attachment by its Guid
/// </summary>
/// <param name="guid"></param>
/// <returns></returns>
public Attachment GetAttachmentByGuid(string guid)

[DataContract]
public abstract class BaseObjectParent : BaseObjectPermissions

/// <summary>
/// Gets/Sets PK of a parent object
/// </summary>
[Column(Name = "idParent", DbType = "Int")]
[DataMember]
public int ParentID
{
get;
set;
}

/// <summary>
/// Gets/Sets Media type of an object
/// </summary>
[Column(Name = "mediaType", DbType = "TinyInt")]
[DataMember]
public MediaType Type
{
get;
set;
}

9
[DataContract]
public abstract class BaseObjectFile : BaseObjectParent
/// <summary>
/// Gets/Sets CRC
/// </summary>
[Column(Name = "crc", CanBeNull = true, DbType = "Char", Storage = "96")]
[DataMember]
public string CRC
{
get;
set;
}

/// <summary>
/// Gets/Sets MimeType
/// </summary>
[Column(Name = "mimeType", CanBeNull = true, DbType = "VarChar", Storage = "255")]
[DataMember]
public string MimeType
{
get;
set;
}

/// <summary>
/// Gets/Sets File size
/// </summary>
[Column(Name = "fileSize", CanBeNull = true, DbType = "BigInt")]
[DataMember]
public long FileSize
{
get;
set;
}

/// <summary>
/// Gets/Sets File name
/// </summary>
[Column(Name = "fileName", CanBeNull = true, DbType = "NVarChar", Storage = "255")]
[DataMember]
public string FileName
{
get;
set;
}

/// <summary>
/// Gets/Sets File storage path
/// </summary>
[Column(Name = "path", CanBeNull = true, DbType = "NVarChar", Storage = "260")]
[DataMember]
public string FilePath
{
get;
set;
}

10
[DataContract]
public partial class Recording (RecordingG4) : BaseObjectFile
/// <summary>
/// Gets/Sets Time when capturing has been stopped
/// </summary>
[Column(Name = "finishTime", CanBeNull = true, DbType = "DateTime")]
[DataMember]
public DateTime? FinishTime
{
get;
set;
}

/// <summary>
/// Gets/Sets Recording duration
/// </summary>
[Column(Name = "duration", CanBeNull = true, DbType = "Int")]
[DataMember]
public int Duration
{
get;
set;
}

/// <summary>
/// Gets/Sets PC name
/// </summary>
[Column(Name = "clientName", DbType = "NVarChar", Storage = "63")]
[DataMember]
public string ClientName
{
get;
set;
}

/// <summary>
/// Gets/Sets True - live stream is being watched
/// </summary>
[Column(Name = "watched", DbType = "Bit")]
[DataMember]
public bool Watched
{
get;
set;
}

/// <summary>
/// Gets/Sets Publishing point
/// </summary>
[Column(Name = "publishingPoint", CanBeNull = true, DbType = "Char", Storage =
"20")]
[DataMember]
public string PublishingPoint
{
get;
set;
}

11
/// <summary>
/// Gets/Sets True - live stream
/// </summary>
[Column(Name = "isLiveFeed", DbType = "Bit")]
[DataMember]
public bool IsLiveFeed
{
get;
set;
}

/// <summary>
/// Gets/Sets Nested attachments
/// </summary>
[DataMember]
public List<Attachment> Attachments
{
get;
set;
}

/// <summary>
/// Gets/Sets Nested bookmarks
/// </summary>
[DataMember]
public List<Bookmark> Bookmarks
{
get;
set;
}

/// <summary>
/// Gets/Sets Nested shadow recordings
/// </summary>
[DataMember]
public List<ShadowRecording> Recordings
{
get;
set;
}

/// <summary>
/// Gets/Sets Nested chat messages
/// </summary>
[DataMember]
public List<ChatMessage> Messages
{
get;
set;
}

/// <summary>
/// Gets/Sets Nested tasks
/// </summary>
[DataMember]
public List<Task> Tasks
{
get;
set;
}
12
/// <summary>
/// Gets/Sets Guid
/// </summary>
[Column(Name = "guid", DbType = "Char", Storage = "255")]
[DataMember]
public string GUID
{
get;
set;
}
/// <summary>
/// Gets/Sets If edited
/// </summary>
[Column(Name = "isEdited", DbType = "Bit", CanBeNull = true)]
[DataMember]
public bool? IsEdited
{
get;
set;
}

/// <summary>
/// Gets/Sets Parent type of this recording
/// </summary>
[Column(Name = "parentType", DbType = "TinyInt")]
[DataMember]
public ObjectType ParentType
{
get;
set;
}

/// <summary>
/// Gets/Sets Link history
/// </summary>
[DataMember]
public List<LinkHistory> LinkHistory
{
get;
set;
}

/// <summary>
/// Gets/Sets Edit history
/// </summary>
[DataMember]
public List<EditJob> EditHistory
{
get;
set;
}

/// <summary>
/// Gets/Sets publish history. This property was left because ExportImport tool use.
This property must be deleted because this property was moved to Interview and
DigitalCaseFolder objects.
/// </summary>
[DataMember]
public List<PublishJob> PublishHistory { get; set; }
13
public Recording()

14
/// <summary>
/// Convert DataRow object to Recording
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>Recording</returns>
public static explicit operator Recording(DataRow row)

/// <summary>
/// Convert DataRow object to Recording
/// </summary>
/// <param name="row">Source SqlDataReader object</param>
/// <returns>Recording</returns>
public static explicit operator Recording(SqlDataReader row)

/// <summary>
/// Convert DataRow object to shallow Recording
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>Recording</returns>
public static Recording GetShallowItemFromDataRow(DataRow row)

/// <summary>
/// Returns attachment by its Guid
/// </summary>
/// <param name="guid"></param>
/// <returns></returns>
public Attachment GetAttachmentByGuid(string guid)

/// <summary>
/// Returns bookmark by its Guid
/// </summary>
/// <param name="guid"></param>
/// <returns></returns>
public Bookmark GetBookmarkByGuid(string guid)

[DataContract]
public partial class Attachment (AttachmentG4) :
BaseObjectFile
/// <summary>
/// Gets/Sets Interview ID
/// </summary>
[Column(Name = "idRoot", DbType = "Int")]
[DataMember]
public int RootID
{
get;
set;
}

15
[Column(Name = "type", DbType = "TinyInt")]
[DataMember]
/// <summary>
/// Gets/Sets Parent type of this attachment
/// </summary>
public ObjectType ParentType
{
get;
set;
}

/// <summary>
/// Gets/Sets Guid
/// </summary>
[Column(Name = "guid", DbType = "Char", Storage = "36")]
[DataMember]
public string GUID
{
get;
set;
}

[Column(Name = "rootType", DbType = "TinyInt")]


[DataMember]
/// <summary>
/// Gets/Sets Root type of this attachment
/// </summary>
public ObjectType RootType
{
get;
set;
}

/// <summary>
/// Gets/Sets PDF Path where pdf file is
/// </summary>
[Column(Name = "pdfPath", CanBeNull = true, DbType = "NVarChar", Storage = "260")]
[DataMember]
public string PDFPath
{
get;
set;
}

public Attachment()

/// <summary>
/// Convert DataRow object to Attachment
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>Attachment</returns>
public static explicit operator Attachment(DataRow row)

/// <summary>
/// Convert DataRow object to shallow Attachment
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>Attachment</returns>
public static Attachment GetShallowItemFromDataRow(DataRow row)

16
[DataContract]
public class BurningTask : BaseObjectCredentialData
/// <summary>
/// Gets/Sets PK of a parent object
/// </summary>
[DataMember]
[Column(Name = "idParent", DbType = "Int")]
public int ParentID
{
get;
set;
}

/// <summary>
/// Gets/Sets Status of a burning task
/// </summary>
[DataMember]
[Column(Name = "status", DbType = "TinyInt")]
public BurningTaskStatus Status
{
get;
set;
}

/// <summary>
/// Gets/Sets Creation time
/// </summary>
[Column(Name = "creationTime", DbType = "DateTime")]
[DataMember]
public DateTime CreationTime
{
get;
set;
}

/// <summary>
/// Gets/Sets Modified time
/// </summary>
[Column(Name = "modifiedTime", DbType = "DateTime")]
[DataMember]
public DateTime ModifiedTime
{
get;
set;
}

/// <summary>
/// Gets/Sets Burning type
/// </summary>
[Column(Name = "type", DbType = "TinyInt")]
[DataMember]
public BurningType Type
{
get;
set;
}

/// <summary>

17
/// Gets/Sets Service PC name
/// </summary>
[DataMember]
[Column(Name = "pcName", CanBeNull = true, DbType = "NVarChar", Storage = "63")]
public string PCname
{
get;
set;
}

/// <summary>
/// Gets/Sets List of objects for burning
/// </summary>
[DataMember]
public List<BurningTaskItem> Items
{
get;
set;
}

/// <summary>
/// Gets/Sets List of orders
/// </summary>
[DataMember]
public List<BurningTaskOrder> Orders
{
get;
set;
}

/// <summary>
/// Gets/Sets GUID
/// </summary>
[Column(Name = "guid", DbType = "VarChar", Storage = "56")]
[DataMember]
public string GUID
{
get;
set;
}

[Column(Name = "parentType", DbType = "TinyInt")]


[DataMember]
/// <summary>
/// Gets/Sets Parent type of this burning task
/// </summary>
public ObjectType ParentType
{
get;
set;
}

public BurningTask()

/// <summary>
/// Convert DataRow object to BurningTask
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>BurningTask</returns>
public static explicit operator BurningTask(System.Data.DataRow row)
18
/// <summary>
/// Option of retention.
/// </summary>
[DataContract]
public enum RetentionOption : byte
{
[EnumMember]
Automated = 1,
[EnumMember]
Manual,
[EnumMember]
None
}

/// <summary>
/// Type of retention.
/// </summary>
[DataContract]
public enum RetentionType : byte
{
[EnumMember]
Calculated = 1,
[EnumMember]
Permanent,
[EnumMember]
Custom
}

public class RetentionRule


/// <summary>
/// Gets/Sets ID
/// </summary>
[Column(Name = "id", IsDbGenerated = true, DbType = "BigInt")]
[DataMember]
public long ID
{
get;
set;
}

/// <summary>
/// Gets/Sets how many days to store an interview
/// </summary>
[Column(Name = "days", DbType = "Int")]
[DataMember]
public int DaysToStore
{
get;
set;
}

/// <summary>
/// Gets/Sets Name
/// </summary>
[Column(Name = "name", DbType = "NVarChar", Storage = "1000")]
[DataMember]
public string Name { get; set; }

19
/// <summary>
/// Gets/Sets Comment
/// </summary>
[Column(Name = "comment", CanBeNull = true, DbType = "NVarChar", Storage = "255")]
[DataMember]
public string Comment
{
get;
set;
}

/// <summary>
/// Gets/Sets Retention condition list
/// </summary>
[DataMember]
public List<RetentionCondition> Conditions
{
get;
set;
}

public RetentionRule()

/// <summary>
/// Convert DataRow object to RetentionRule
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>RetentionRule</returns>
public static explicit operator RetentionRule(DataRow row)

[DataContract]
public partial class Bookmark (BookmarkG4) : BaseObjectParent,
IComparable
/// <summary>
/// Gets/Sets Position
/// </summary>
[Column(Name = "position", DbType = "Int")]
[DataMember]
public int Position
{
get;
set;
}

/// <summary>
/// Gets/Sets ID root case
/// </summary>
[Column(Name = "idRoot", DbType = "Int")]
[DataMember]
public int RootID
{
get;
set;
}

20
/// <summary>
/// Gets/Sets Guid
/// </summary>
[Column(Name = "guid", DbType = "Char", Storage = "36")]
[DataMember]
public string GUID
{
get;
set;
}

[Column(Name = "rootType", DbType = "TinyInt")]


[DataMember]
/// <summary>
/// Gets/Sets Root type of this attachment
/// </summary>
public ObjectType RootType
{
get;
set;
}

public Bookmark()

/// <summary>
/// Convert DataRow object to Bookmark
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>Bookmark</returns>
public static explicit operator Bookmark(DataRow row)

/// <summary>
/// Convert DataRow object to shallow Bookmark
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>Bookmark</returns>
public static Bookmark GetShallowItemFromDataRow(DataRow row)

[DataContract]
public class ShadowRecording : BaseObjectFile
/// <summary>
/// Convert DataRow object to ShadowRecordings
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>ShadowRecordings</returns>
public static explicit operator ShadowRecording(DataRow row)

public class ChatMessage:BaseObjectCredentialData


/// <summary>
/// Gets/Sets Creation time
/// </summary>
[DataMember]
[Column(Name = "time", DbType = "DateTime")]
public DateTime CreationTime
{
get;
set;
21
}

/// <summary>
/// Gets/Sets Parent ID
/// </summary>
[DataMember]
[Column(Name = "idParent", DbType = "Int")]
public int ParentID
{
get;
set;
}

/// <summary>
/// Gets/Sets Message
/// </summary>
[DataMember]
[Column(Name = "message", DbType = "NVarChar", Storage = "255")]
public string Message
{
get;
set;
}

/// <summary>
/// Convert DataRow object to ChatMessage
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>ChatMessage</returns>
public static explicit operator ChatMessage(DataRow row)

[DataContract]
public partial class Task : BaseObjectFile
/// <summary>
/// Gets/Sets ID root case
/// </summary>
[Column(Name = "idRoot", DbType = "Int")]
[DataMember]
public int RootID
{
get;
set;
}
/// <summary>
/// Gets/Sets Time when task has been taken
/// </summary>
[Column(Name = "takenTime", CanBeNull = true, DbType = "DateTime")]
[DataMember]
public DateTime? TakenTime
{
get;
set;
}

22
/// <summary>
/// Gets/Sets Time when task has been finished
/// </summary>
[Column(Name = "finishTime", CanBeNull = true, DbType = "DateTime")]
[DataMember]
public DateTime? FinishTime
{
get;
set;
}

/// <summary>
/// Gets/Sets Transcriber's ID
/// </summary>
[Column(Name = "idTranscriber", DbType = "VarChar", Storage = "68")]
[DataMember]
public string TranscriberSID
{
get;
set;
}

/// <summary>
/// Gets/Sets Transcriber name
/// </summary>
[Column(Name = "transriberName", DbType = "NVarChar", Storage = "104")]
[DataMember]
public string TranscriberName
{
get;
set;
}

/// <summary>
/// Gets/Sets Assigner's ID
/// </summary>
[Column(Name = "idAssigner", DbType = "VarChar", Storage = "68")]
[DataMember]
public string AssignerSID
{
get;
set;
}

/// <summary>
/// Gets/Sets Assigner name
/// </summary>
[Column(Name = "assignerName", DbType = "NVarChar", Storage = "104")]
[DataMember]
public string AssignerName
{
get;
set;
}

23
/// <summary>
/// Gets/Sets Status
/// </summary>
[Column(Name = "status", DbType = "TinyInt")]
[DataMember]
public TaskStatus Status
{
get;
set;
}
/// <summary>
/// Gets/Sets Priority
/// </summary>
[Column(Name = "priority", DbType = "TinyInt")]
[DataMember]
public TaskPriority Priority
{
get;
set;
}

/// <summary>
/// Gets/Sets Pre-field
/// </summary>
[Column(Name = "preField", DbType = "NVarChar", Storage = "50", CanBeNull = true)]
[DataMember]
public string PreField
{
get;
set;
}

/// <summary>
/// Gets/Sets True - task transcriber is an AD group
/// </summary>
[Column(Name = "isGroup", DbType = "Bit")]
[DataMember]
public bool IsGroup
{
get;
set;
}

/// <summary>
/// Gets/Sets GUID
/// </summary>
[Column(Name = "guid", DbType = "VarChar", Storage = "56")]
[DataMember]
public string GUID
{
get;
set;
}

24
[Column(Name = "rootType", DbType = "TinyInt")]
[DataMember]
/// <summary>
/// Gets/Sets Root type of this task
/// </summary>
public ObjectType RootType
{
get;
set;
}

/// <summary>
/// Gets/Sets PDF Path where pdf file is
/// </summary>
[Column(Name = "pdfPath", CanBeNull = true, DbType = "NVarChar", Storage = "260")]
[DataMember]
public string PDFPath
{
get;
set;
}

public Task()
/// <summary>
/// Convert DataRow object to Task
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>Task</returns>
public static explicit operator Task(DataRow row)

/// <summary>
/// Convert DataRow object to shallow Task
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>Task</returns>
public static Task GetShallowItemFromDataRow(DataRow row)

/// <summary>
/// Enums of base classes which can be parent
/// </summary>
[DataContract]
public enum ObjectType : byte
{
[EnumMember]
Interview = 1,
[EnumMember]
Recording = 2,
[EnumMember]
RecordingAttachment = 4,
[EnumMember]
ContainerAttachment = 5,
[EnumMember]
Task = 6,
[EnumMember]
Bookmark = 7,
[EnumMember]
System = 8,
[EnumMember]
DigitalCaseFolder =9,

25
}

/// <summary>
/// Task status
/// </summary>
[DataContract]
public enum TaskStatus : byte
{
[EnumMember]
NotAssigned = 1,
[EnumMember]
NotStarted,
[EnumMember]
InProgress,
[EnumMember]
Finished
}

/// <summary>
/// Task priority
/// </summary>
[DataContract]
public enum TaskPriority : byte
{
[EnumMember]
Normal = 1,
[EnumMember]
High
}

/// <summary>
/// Burning task status
/// </summary>
[DataContract]
public enum BurningTaskStatus : byte
{
[EnumMember]
Pending = 1,
[EnumMember]
InProgress,
[EnumMember]
Sent,
[EnumMember]
Delayed,
[EnumMember]
Failed
}

/// <summary>
/// Burning type
/// </summary>
public enum BurningType : byte
{
Data,
CDA,
DVDVideo
}

26
[DataContract]
public class BurningTaskItem : BaseObject
/// <summary>
/// Gets/Sets PK of a parent object
/// </summary>
[DataMember]
[Column(Name = "idParent", DbType = "Int")]
public int ParentID
{
get;
set;
}

/// <summary>
/// Gets/Sets Nested object
/// </summary>
[DataMember]
[System.Xml.Serialization.XmlIgnore]
public BaseObjectPermissions Item
{
get;
set;
}

/// <summary>
/// Gets/Sets ID of a nested object
/// </summary>
[DataMember]
[Column(Name = "idObject", DbType = "Int")]
public int ObjectID
{
get;
set;
}

/// <summary>
/// Gets/Sets Name
/// </summary>
[DataMember]
[Column(Name = "name", DbType = "NVarChar", Storage = "255")]
public string Name
{
get;
set;
}

/// <summary>
/// Gets/Sets Related object type
/// </summary>
[DataMember]
[Column(Name = "parentType", DbType = "TinyInt")]
public ObjectType ObjectType
{
get;
set;
}

27
/// <summary>
/// Gets/Sets Error type
/// </summary>
[DataMember]
[Column(Name = "burnError", DbType = "TinyInt")]
public BurningTaskError Error
{
get;
set;
}

public BurningTaskItem()

/// <summary>
/// Convert DataRow object to BurningTaskItem
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>BurningTaskItem</returns>
public static explicit operator BurningTaskItem(System.Data.DataRow row)

/// <summary>
/// Burning task error
/// </summary>
DataContract]
public enum BurningTaskError : byte
{
[EnumMember]
None = 1,
[EnumMember]
NotFound,
[EnumMember]
Network,
[EnumMember]
NoFreeSpace
}

[DataContract]
public class BurningTaskOrder : BaseObject
/// <summary>
/// Gets/Sets PK of a parent object
/// </summary>
[DataMember]
[Column(Name = "idParent", DbType = "Int")]
public int ParentID
{
get;
set;
}

/// <summary>
/// Gets/Sets Recipient
/// </summary>
[DataMember]
[Column(Name = "recipient", CanBeNull = true, DbType = "NVarChar", Storage = "255")]
public string Recipient
{
get;
set;
28
}

/// <summary>
/// Gets/Sets Disc type
/// </summary>
[DataMember]
[Column(Name = "discType", DbType = "VarChar", Storage = "15")]
public DiscMediaType DiscType
{
get;
set;
}

/// <summary>
/// Gets/Sets Amount of needed discs
/// </summary>
[DataMember]
[Column(Name = "discsAmount", DbType = "TinyInt")]
public byte DiscsAmount
{
get;
set;
}

/// <summary>
/// Gets/Sets Burning robot ID
/// </summary>
[DataMember]
[Column(Name = "idBurningRobot", DbType = "Int")]
public int BurningRobotID
{
get;
set;
}

/// <summary>
/// Gets/Sets Burning robot department name
/// </summary>
[DataMember]
[Column(Name = "department", DbType = "NVarChar", Storage = "255")]
public string Department
{
get;
set;
}

/// <summary>
/// Gets/Sets BurningRobot
/// </summary>
[DataMember]
public BurningRobot BurningRobot
{
get;
set;
}

29
/// <summary>
/// Gets/Sets Disc Publisher
/// </summary>
[DataMember]
public DiscPublisher Publisher
{
get;
set;
}

/// <summary>
/// Gets/Sets Disc template ID
/// </summary>
[DataMember]
[Column(Name = "idDiscTemplate", DbType = "Int")]
public int TemplateID
{
get;
set;
}

/// <summary>
/// Gets/Sets Template
/// </summary>
[DataMember]
public DiscTemplate Template
{
get;
set;
}

/// <summary>
/// Gets/Sets Status of a burning task order
/// </summary>
[DataMember]
[Column(Name = "status", DbType = "TinyInt")]
public BurningTaskStatus Status
{
get;
set;
}

/// <summary>
/// Gets/Sets Error type
/// </summary>
[DataMember]
[Column(Name = "burnError", DbType = "TinyInt")]
public BurningTaskError Error
{
get;
set;
}

public BurningTaskOrder()

30
/// <summary>
/// Convert DataRow object to BurningTaskBurningRobot
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>BurningTaskBurningRobot</returns>
public static explicit operator BurningTaskOrder(System.Data.DataRow row)

/// <summary>
/// Disc types
/// </summary>
[DataContract]
public enum DiscMediaType : ulong
{
[EnumMember]
CD = 681574400,
[EnumMember]
DVD = 4404019200,
[EnumMember]
DVD_DL = 8428873318,
}

public class LinkHistory : BaseObjectCredentialData

/// <summary>
/// Gets/Sets Recipient
/// </summary>
[DataMember]
[Column(Name = "recipient", CanBeNull = false, DbType = "NVarChar", Storage =
"255")]
public string Recipient
{
get;
set;
}

/// <summary>
/// Gets/Sets Send Date
/// </summary>
[Column(Name = "sendDate", CanBeNull = false, DbType = "DateTime")]
[DataMember]
public DateTime SendDate
{
get;
set;
}

/// <summary>
/// Gets/Sets Description
/// </summary>
[DataMember]
[Column(Name = "description", CanBeNull = true, DbType = "NVarChar", Storage =
"255")]
public string Description
{
get;
set;
}

31
/// <summary>
/// Gets/Sets Parent type
/// </summary>
[DataMember]
[Column(Name = "parentType", DbType = "TinyInt")]
public ObjectType ParentType
{
get;
set;
}

/// <summary>
/// Gets/Sets ObjectName
/// </summary>
[DataMember]
[Column(Name = "objectName", CanBeNull = true, DbType = "NVarChar", Storage =
"255")]
public string ObjectName
{
get;
set;
}

/// <summary>
/// Gets/Sets GUID
/// </summary>
[Column(Name = "guid", DbType = "VarChar", Storage = "56")]
[DataMember]
public string GUID
{
get;
set;
}

/// <summary>
/// Gets/Sets PK of parent object
/// </summary>
[Column(Name = "idParent", DbType = "Int")]
[DataMember]
public int ParentID
{
get;
set;
}

/// <summary>
/// Convert DataRow object to LinkHistory
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>LinkHistory</returns>
public static explicit operator LinkHistory(DataRow row)

public class EditJob : BaseObjectCredentialData

32
/// <summary>
/// Gets/Sets Edit time
/// </summary>
[Column(Name = "editTime", CanBeNull = true, DbType = "DateTime")]
[DataMember]
public DateTime? EditTime
{
get;
set;
}
/// <summary>
/// Gets/Sets PK of a parent object
/// </summary>
[DataMember]
[Column(Name = "idParent", DbType = "Int")]
public int ParentID
{
get;
set;
}

/// <summary>
/// Gets/Sets job status for editing service
/// </summary>
[DataMember]
[Column(Name = "status", DbType = "TinyInt")]
public EditStatus Status
{
get;
set;
}

/// <summary>
/// Gets/Sets Service pc name
/// </summary>
[DataMember]
[Column(Name = "pcName", CanBeNull = true, DbType = "NVarChar", Storage = "63")]
public string PCName
{
get;
set;
}

/// <summary>
/// Gets/Sets Edit job's data
/// </summary>
[DataMember]
public EditData EditData
{
get;
set;
}

33
/// <summary>
/// Gets/Sets GUID
/// </summary>
[Column(Name = "guid", DbType = "VarChar", Storage = "56")]
[DataMember]
public string GUID
{
get;
set;
}

public EditJob()

/// <summary>
/// Convert DataRow object to EditJob
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>EditJob</returns>
public static explicit operator EditJob (DataRow row)

/// <summary>
/// Enums of job status for edit services
/// </summary>
[DataContract]
public enum EditStatus : byte
{
[EnumMember]
Order,
[EnumMember]
InProgress,
[EnumMember]
Done,
[EnumMember]
Error,

/// <summary>
/// Enums of job status for publish services
/// </summary>
[DataContract]
public enum PublishStatus : byte
{
[EnumMember]
Order,
[EnumMember]
InProgress,
[EnumMember]
Done,
[EnumMember]
Error,
}

34
public partial class PublishJob : BaseObjectCredentialData
/// <summary>
/// Gets/Sets Published time
/// </summary>
[Column(Name = "publishedDay", CanBeNull = true, DbType = "DateTime")]
[DataMember]
public DateTime? PublishedTime
{
get;
set;
}

/// <summary>
/// Gets/Sets PK of parent object
/// </summary>
[DataMember]
[Column(Name = "idParent", DbType = "Int")]
public int ParentID
{
get;
set;
}

[Column(Name = "parentType", DbType = "TinyInt")]


[DataMember]
/// <summary>
/// Gets/Sets Parent type of this attachment
/// </summary>
public ObjectType ParentType
{
get;
set;
}

/// <summary>
/// Gets/Sets job status for edit service
/// </summary>
[DataMember]
[Column(Name = "status", DbType = "TinyInt")]
public PublishStatus Status
{
get;
set;
}

/// <summary>
/// Gets/Sets Number of days when recording may be played by external access
/// </summary>
[Column(Name = "publishingDaysNumber", CanBeNull = true, DbType = "TinyInt")]
[DataMember]
public byte? PublishingDaysNumber
{
get;
set;
}

35
/// <summary>
/// Gets/Sets Amount of download before recording become unacessable
/// </summary>
[Column(Name = "downloadNumber", CanBeNull = true, DbType = "TinyInt")]
[DataMember]
public byte? DownloadNumber
{
get;
set;
}

/// <summary>
/// Gets/Sets pin
/// </summary>
[DataMember]
[Column(Name = "pin", CanBeNull = true, DbType = "NVarChar", Storage = "30")]
public string Pin
{
get;
set;
}

/// <summary>
/// Gets/Sets Creator name
/// </summary>
[DataMember]
[Column(Name = "creatorName", CanBeNull = true, DbType = "NVarChar", Storage =
"255")]
public string CreatorName
{
get;
set;
}

/// <summary>
/// Gets/Sets Service pc name
/// </summary>
[DataMember]
[Column(Name = "pcName", CanBeNull = true, DbType = "NVarChar", Storage = "63")]
public string PCName
{
get;
set;
}

/// <summary>
/// Gets/Sets List of emails
/// </summary>
[DataMember]
public List<EmailPublished> Emails
{
get;
set;
}

36
/// <summary>
/// Gets/Sets Publish items
/// </summary>
[DataMember]
public List<PublishItem> Items
{
get;
set;
}

/// <summary>
/// Gets/Sets GUID
/// </summary>
[Column(Name = "guid", DbType = "VarChar", Storage = "56")]
[DataMember]
public string GUID
{
get;
set;
}

public PublishJob() : base()

/// <summary>
/// Convert DataRow object to PublishJob
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>PublishJob</returns>
public static explicit operator PublishJob(DataRow row)

public class EmailPublished : BaseObject


/// <summary>
/// Gets/Sets PK of a parent object
/// </summary>
[DataMember]
[Column(Name = "idParent", DbType = "Int")]
public int ParentID
{
get;
set;
}

/// <summary>
/// Gets/Sets Pin
/// </summary>
[DataMember]
[Column(Name = "address", CanBeNull = true, DbType = "NVarChar", Storage = "255")]
public string Address
{
get;
set;
}

37
/// <summary>
/// Gets/Sets True - email was sent
/// </summary>
[Column(Name = "sended", DbType = "Bit")]
[DataMember]
public bool Sent
{
get;
set;
}

/// <summary>
/// Convert DataRow object to EmailPublished
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>EmailPublished</returns>
public static explicit operator EmailPublished(DataRow row)

[DataContract]
public class EditData:BaseObject
/// <summary>
/// Gets/Sets PK of a parent object
/// </summary>
[DataMember]
[Column(Name = "idParent", DbType = "Int")]
public int ParentID
{
get;
set;
}

/// <summary>
/// Gets/Sets True - video part of a recording will be edited
/// </summary>
[Column(Name = "editVideo", DbType = "Bit")]
[DataMember]
public bool EditVideo
{
get;
set;
}

/// <summary>
/// Gets/Sets True - audio part of a recording will be edited
/// </summary>
[Column(Name = "editAudio", DbType = "Bit")]
[DataMember]
public bool EditAudio
{
get;
set;
}

38
/// <summary>
/// Gets/Sets True - makes a copy
/// </summary>
[Column(Name = "makeCopy", DbType = "Bit")]
[DataMember]
public bool MakeCopy
{
get;
set;
}

/// <summary>
/// Gets/Sets True - Make full screen
/// </summary>
[Column(Name = "fullScreen", DbType = "Bit")]
[DataMember]
public bool FullScreen
{
get;
set;
}

/// <summary>
/// Gets/Sets Contains nested selections
/// </summary>
[DataMember]
public List<EditSelection> Selections
{
get;
set;
}

/// <summary>
/// Gets/Sets Contains nested rectangles
/// </summary>
[DataMember]
public List<EditRectangle> Rectangles
{
get;
set;
}

public EditData():base()

/// <summary>
/// Convert DataRow object to EditData
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>EditData</returns>
public static explicit operator EditData(DataRow row)

public class EditSelection:BaseObject

39
/// <summary>
/// Gets/Sets PK of a parent object
/// </summary>
[DataMember]
[Column(Name = "idParent", DbType = "Int")]
public int ParentID
{
get;
set;
}

/// <summary>
/// Gets/Sets Start position
/// </summary>
[DataMember]
[Column(Name = "start", DbType = "Real")]
public float Start
{
get;
set;
}

/// <summary>
/// Gets/Sets Stop position
/// </summary>
[DataMember]
[Column(Name = "stop", DbType = "Real")]
public float Stop
{
get;
set;
}
/// <summary>
/// Convert DataRow object to EditSelection
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>EditSelection</returns>
public static explicit operator EditSelection(DataRow row)

public class EditRectangle:BaseObject


/// <summary>
/// Gets/Sets PK of a parent object
/// </summary>
[DataMember]
[Column(Name = "idParent", DbType = "Int")]
public int ParentID
{
get;
set;
}

40
/// <summary>
/// Gets/Sets X coordinate
/// </summary>
[DataMember]
[Column(Name = "x", DbType = "Int")]
public int X
{
get;
set;
}

/// <summary>
/// Gets/Sets Y coordinate
/// </summary>
[DataMember]
[Column(Name = "y", DbType = "Int")]
public int Y
{
get;
set;
}

/// <summary>
/// Gets/Sets Width
/// </summary>
[DataMember]
[Column(Name = "width", DbType = "Int")]
public int Width
{
get;
set;
}

/// <summary>
/// Gets/Sets Height
/// </summary>
[DataMember]
[Column(Name = "height", DbType = "Int")]
public int Height
{
get;
set;
}

public EditRectangle()

/// <summary>
/// Convert DataRow object to EditRectangle
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>EditRectangle</returns>
public static explicit operator EditRectangle(DataRow row)

41
[DataContract]
[KnownType(typeof(User))]
[KnownType(typeof(Group))]
[System.Xml.Serialization.XmlInclude(typeof(User))]
[System.Xml.Serialization.XmlInclude(typeof(Group))]
public abstract class CommonParent : BaseObjectCredentialData
/// <summary>
/// Gets/Sets Global Permissions
/// </summary>
[DataMember]
public Permissions Permissions { get; set; }

/// <summary>
/// Gets/Sets PowerUserPermissions Permissions
/// </summary>
[DataMember]
[System.Xml.Serialization.XmlIgnore]
public PowerUserPermissions PowerUserPermissions { get; set; }

/// <summary>
/// Gets/Sets True – a user and his/her permissions will be used in offline mode
/// </summary>
[DataMember]
[System.Xml.Serialization.XmlIgnore]
public bool IsOfflineCreator { get; set; }

[DataContract]
public class Permissions:BaseObject
/// <summary>
/// Gets/Sets Parent type
/// </summary>
[Column(Name = "parentType", DbType = "TinyInt")]
[DataMember]
public ObjectType ParentType { get; set; }

/// <summary>
/// Gets/Sets Parent ID
/// </summary>
[Column(Name = "idParent", DbType = "Int")]
[DataMember]
public int ParentID { get; set; }

/// <summary>
/// Gets/Sets See
/// </summary>
[Column(Name = "see", DbType = "Bit")]
[DataMember]
public bool See { get; set; }

/// <summary>
/// Gets/Sets Play
/// </summary>
[Column(Name = "play", DbType = "Bit")]
[DataMember]
public bool Play { get; set; }

42
/// <summary>
/// Gets/Sets Play Audio
/// </summary>
[Column(Name = "playAudio", DbType = "Bit")]
[DataMember]
public bool PlayAudio { get; set; }

/// <summary>
/// Gets/Sets Rename
/// </summary>
[Column(Name = "rename", DbType = "Bit")]
[DataMember]
public bool Rename { get; set; }

/// <summary>
/// Gets/Sets Edit Metadata
/// </summary>
[Column(Name = "editMetadata", DbType = "Bit")]
[DataMember]
public bool EditMetadata { get; set; }

/// <summary>
/// Gets/Sets Add items
/// </summary>
[Column(Name = "addItems", DbType = "Bit")]
[DataMember]
public bool AddItems { get; set; }

/// <summary>
/// Gets/Sets Order task
/// </summary>
[Column(Name = "orderTask", DbType = "Bit")]
[DataMember]
public bool OrderTask { get; set; }

/// <summary>
/// Gets/Sets Assign task
/// </summary>
[Column(Name = "assign", DbType = "Bit")]
[DataMember]
public bool AssignTask { get; set; }

/// <summary>
/// Gets/Sets Trancribe
/// </summary>
[Column(Name = "transcribe", DbType = "Bit")]
[DataMember]
public bool TranscribeTask { get; set; }

/// <summary>
/// Gets/Sets Create bookmarks
/// </summary>
[Column(Name = "createBookmarks", DbType = "Bit")]
[DataMember]
public bool CreateBookmarks { get; set; }

43
/// <summary>
/// Gets/Sets Download
/// </summary>
[Column(Name = "download", DbType = "Bit")]
[DataMember]
public bool DownloadContent { get; set; }

/// <summary>
/// Gets/Sets Burn
/// </summary>
[Column(Name = "burn", DbType = "Bit")]
[DataMember]
public bool BurnContent { get; set; }

/// <summary>
/// Gets/Sets Edit content
/// </summary>
[Column(Name = "edit", DbType = "Bit")]
[DataMember]
public bool EditContent { get; set; }

/// <summary>
/// Gets/Sets Publish content
/// </summary>
[Column(Name = "publish", DbType = "Bit")]
[DataMember]
public bool PublishContent { get; set; }

/// <summary>
/// Gets/Sets Delete
/// </summary>
[Column(Name = "deleteVersions", DbType = "Bit")]
[DataMember]
public bool DeleteVersions { get; set; }

/// <summary>
/// Gets/Sets Edit retention
/// </summary>
[Column(Name = "editRetention", DbType = "Bit")]
[DataMember]
public bool EditRetentionPolicy { get; set; }

/// <summary>
/// Gets/Sets Edit retention
/// </summary>
[Column(Name = "editPermissions", DbType = "Bit")]
[DataMember]
public bool EditPermissions { get; set; }

public Permissions()

/// <summary>
/// Convert DataRow object to Permissions
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>Permissions</returns>
public static explicit operator Permissions(System.Data.DataRow row)

44
/// <summary>
/// Calculate permissions
/// </summary>
/// <param name="target">Target permission</param>
/// <param name="source">Source permission</param>
/// <returns>Effective permissions</returns>
public static Permissions operator &(Permissions target, Permissions source)

/// <summary>
/// Calculate permissions
/// </summary>
/// <param name="target">Target permission</param>
/// <param name="source">Source permission</param>
/// <returns>Effective permissions</returns>
public static Permissions operator |(Permissions target, Permissions source)

[DataContract]
public class LocalPermissions : BaseObject
/// <summary>
/// Gets/Sets Parent ID
/// </summary>
[Column(Name = "idParent", DbType = "Int")]
[DataMember]
public int ParentID { get; set; }

/// <summary>
/// Gets/Sets View other sessions
/// </summary>
[DataMember]
[Column(Name = "viewOtherUsersSessions", DbType = "Bit")]
public bool ViewOtherSessions
{
get;
set;
}

/// <summary>
/// Gets/Sets Delete recordings
/// </summary>
[DataMember]
[Column(Name = "deleteRecordings", DbType = "Bit")]
public bool DeleteRecordings
{
get;
set;
}

/// <summary>
/// Gets/Sets Delete burned session
/// </summary>
[DataMember]
[Column(Name = "deleteBurnedSession", DbType = "Bit")]
public bool DeleteSessionWhenBurnt
{
get;
set;
}

45
/// <summary>
/// Gets/Sets Delete not burned session
/// </summary>
[DataMember]
[Column(Name = "deleteNotBurnedSession", DbType = "Bit")]
public bool DeleteSessionWhenNotBurnt
{
get;
set;
}

/// <summary>
/// Gets/Sets Burn session
/// </summary>
[DataMember]
[Column(Name = "burn", DbType = "Bit")]
public bool Burn
{
get;
set;
}

/// <summary>
/// Gets/Sets Access network settings
/// </summary>
[DataMember]
[Column(Name = "accessIndicoNetworkSettings", DbType = "Bit")]
public bool AccessNetworkSettings
{
get;
set;
}

/// <summary>
/// Gets/Sets Access recorder`s settings
/// </summary>
[DataMember]
[Column(Name = "accessIndicoSettings", DbType = "Bit")]
public bool AccessAllSettings
{
get;
set;
}

/// <summary>
/// Convert DataRow object to LocalPermissions
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>LocalPermissions</returns>
public static explicit operator LocalPermissions(System.Data.DataRow row)

46
/// <summary>
/// Calculate local permissions
/// </summary>
/// <param name="target">Target permission</param>
/// <param name="source">Source permission</param>
/// <returns>Effective permissions</returns>
public static LocalPermissions operator &(LocalPermissions target, LocalPermissions
source)

/// <summary>
/// Calculate local permissions
/// </summary>
/// <param name="target">Target permission</param>
/// <param name="source">Source permission</param>
/// <returns>Effective permissions</returns>
public static LocalPermissions operator |(LocalPermissions target, LocalPermissions
source)

[DataContract]
public class PowerUserPermissions (AuditPermissions) :
BaseObject
/// <summary>
/// Gets/Sets Has an access to audit logs page
/// </summary>
[Column(Name = "log", DbType = "Bit")]
[DataMember]
public bool HasAccessLog
{
get; set; }

/// <summary>
/// Gets/Sets Has an access to reports page
/// </summary>
[Column(Name = "report", DbType = "Bit")]
[DataMember]
public bool HasAccessReport { get; set; }

/// <summary>
/// Gets/Sets Has an access to disposal objects page
/// </summary>
[Column(Name = "disposal", DbType = "Bit")]
[DataMember]
public bool HasAccessDisposal { get; set; }

/// <summary>
/// Gets/Sets Has an access to system status page
/// </summary>
[Column(Name = "systemStatus", DbType = "Bit")]
[DataMember]
public bool HasAccessSystemStatus { get; set; }

/// <summary>
/// Gets/Sets Has an access to preferences
/// </summary>
[Column(Name = "preferences", DbType = "Bit")]
[DataMember]
public bool HasAccessPreferences { get; set; }

47
/// <summary>
/// Gets/Sets True - all actions will NOT be logged
/// </summary>
[Column(Name = "invisibleMode", DbType = "Bit")]
[DataMember]
public bool InvisibleMode { get; set; }

/// <summary>
/// Convert DataRow object to PowerUserPermissions
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns> PowerUserPermissions </returns>
public static explicit operator PowerUserPermissions(System.Data.DataRow row)

/// <summary>
/// Calculate PowerUserPermissions
/// </summary>
/// <param name="target">Target PowerUserPermissions </param>
/// <param name="source">Source PowerUserPermissions </param>
/// <returns>Effective PowerUserPermissions </returns>
public static PowerUserPermissions operator &( PowerUserPermissions target,
PowerUserPermissions source)

/// <summary>
/// Calculate PowerUserPermissions
/// </summary>
/// <param name="target">Target PowerUserPermissions </param>
/// <param name="source">Source PowerUserPermissions </param>
/// <returns>Effective PowerUserPermissions </returns>
public static PowerUserPermissions operator |( PowerUserPermissions target,
PowerUserPermissions source)

/// <summary>
/// Type of objects.
/// </summary>
[DataContract]
public enum MediaType : byte
{
[EnumMember]
Audio = 1,
[EnumMember]
Video
}

[DataContract]
[KnownType(typeof(MetaDataText))]
[KnownType(typeof(MetaDataDateTime))]
[System.Xml.Serialization.XmlInclude(typeof(MetaDataText))]
[System.Xml.Serialization.XmlInclude(typeof(MetaDataDateTime))]
public abstract class MetaData : BaseObject

48
[Column(Name = "idParent", DbType = "Int")]
[DataMember]
/// <summary>
/// Gets/Sets PK of a parent object
/// </summary>
public int ParentID
{
get;
set;
}

[Column(Name = "name", DbType = "VarChar", Storage = "20")]


[DataMember]
/// <summary>
/// Gets/Sets Name
/// </summary>
public string Name
{
get;
set;
}

[Column(Name = "visualName", CanBeNull = true, DbType = "NVarChar", Storage = "50")]


[DataMember]
/// <summary>
/// Gets/Sets Visual name
/// </summary>
public string VisualName
{
get;
set;
}

[Column(Name = "isMandatory", DbType = "Bit")]


[DataMember]
/// <summary>
/// Gets/Sets True - unable to change value
/// </summary>
public bool IsMandatory
{
get;
set;
}

[Column(Name = "tabIndex", DbType = "TinyInt")]


[DataMember]
/// <summary>
/// Gets/Sets Tab index
/// </summary>
public byte TabIndex
{
get;
set;
}

49
[Column(Name = "parentType", DbType = "TinyInt")]
[DataMember]
/// <summary>
/// Gets/Sets Tab index
/// </summary>
public ObjectType ParentType
{
get;
set;
}

public MetaData()

[DataContract]
public class MetaDataText : MetaData
[Column(Name = "value", CanBeNull = true, DbType = "NVarChar", Storage = "1000")]
[DataMember]
/// <summary>
/// Gets/Sets Text value
/// </summary>
public string Value
{
get;
set;
}

/// <summary>
/// Convert DataRow object to MetaDataText
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>MetaDataText</returns>
public static explicit operator MetaDataText(DataRow row)

[DataContract]
public class MetaDataDateTime : MetaData
[Column(Name = "value", CanBeNull = true, DbType = "DateTime")]
[DataMember]
/// <summary>
/// Gets/Sets DateTime value
/// </summary>
public DateTime ? Value
{
get;
set;
}

/// <summary>
/// Convert DataRow object to MetaDataDateTime
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>MetaDataDateTime</returns>
public static explicit operator MetaDataDateTime(DataRow row)

50
[DataContract]
public class Email : BaseObject
/// <summary>
/// Gets/Sets Comment
/// </summary>
[Column(Name = "comment", CanBeNull = true, DbType = "NVarChar", Storage = "255")]
[DataMember]
public string Comment
{
get;
set;
}

/// <summary>
/// Gets/Sets Email address
/// </summary>
[Column(Name = "address", DbType = "VarChar", Storage = "255")]
[DataMember]
public string Address
{
get;
set;
}

/// <summary>
/// Gets/Sets List of notification types
/// </summary>
[DataMember]
public List<NotificationEmailType> Types
{
get;
set;
}

/// <summary>
/// Is Body HTML
/// </summary>
[DataMember]
public bool IsBodyHTML
{
get;
set;
}

public Email()

/// <summary>
/// Convert DataRow object to Email
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>Email</returns>
public static explicit operator Email(DataRow row)

51
[DataContract]
public class NotificationEmailType : BaseObject
/// <summary>
/// Gets/Sets Notification type
/// </summary>
[Column(Name = "type", DbType = "TinyInt")]
[DataMember]
public NotificationType Type
{
get;
set;
}

/// <summary>
/// Gets/Sets PK of a parent object
/// </summary>
[Column(Name = "idParent", DbType = "Int")]
[DataMember]
public int ParentID
{
get;
set;
}

/// <summary>
/// Gets/Sets Value
/// </summary>
[Column(Name = "value", CanBeNull = true, DbType = "SmallInt")]
[DataMember]
public short? Value
{
get;
set;
}

public NotificationEmailType()

/// <summary>
/// Convert DataRow object to NotificationEmailType
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>NotificationEmailType</returns>
public static explicit operator NotificationEmailType(DataRow row)

/// <summary>
/// Type of notification.
/// </summary>
[DataContract]
public enum NotificationType : byte
{
[EnumMember]
RetentionExpired = 1,
[EnumMember]
LowSpace
}

52
[DataContract]
public class Group : CommonParent
/// <summary>
/// Gets/Sets SID group who nest this one
/// </summary>
[DataMember]
public string ParentGroupSID
{
get;
set;
}

public Group()

/// <summary>
/// Convert Principal object to Group
/// </summary>
/// <param name="principal">Source Principal object</param>
/// <returns>Group</returns>
public static explicit operator Group(Principal principal)

/// <summary>
/// Convert DataRow object to Group
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>Group</returns>
public static explicit operator Group(System.Data.DataRow row)

[DataContract]
public class User : CommonParent
public User()

/// <summary>
/// Gets/Sets User's role name from web config
/// </summary>
[DataMember]
[System.Xml.Serialization.XmlIgnore]
public SystemUserRoles Role { get; set; }

/// <summary>
/// Gets/Sets E-mail address for this account
/// </summary>
[DataMember]
[System.Xml.Serialization.XmlIgnore]
public string Email { get; set; }

/// <summary>
/// Convert Principal object to User
/// </summary>
/// <param name="principal">Source Principal object</param>
/// <returns>User</returns>
public static explicit operator User(Principal principal)

53
/// <summary>
/// Convert DataRow object to User
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>User</returns>
public static explicit operator User(System.Data.DataRow row)

[DataContract]
public class DiscTemplate : BaseObject
/// <summary>
/// Gets/Sets Template's data in binary format
/// </summary>
[DataMember]
[Column(Name = "data", DbType = "VarBinary", Storage = "-1")]
public byte[] Data { get; set; }

/// <summary>
/// Gets/Sets Name
/// </summary>
[DataMember]
[Column(Name = "name", DbType = "NVarChar", Storage = "100")]
public string Name { get; set; }

/// <summary>
/// Gets/Sets Type
/// </summary>
[DataMember]
[Column(Name = "type", DbType = "VarChar", Storage = "50")]
public DiscTemplateType Type { get; set; }

/// <summary>
/// Convert DataRow object to PublisherTemplate
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>PublisherTemplate</returns>
public static explicit operator DiscTemplate(System.Data.DataRow row)

public DiscTemplate()

/// <summary>
/// Disc template type
/// </summary>
[DataContract]
public enum DiscTemplateType : byte
{
[EnumMember]
Original = 1,
[EnumMember]
Copy
}

public enum WcfADService.OperationResult


{
OK,
Exception,
SqlException
}

54
/// <summary>
/// Represents key for settings database table
/// </summary>
[DataContract]
public enum SettingsKeys : byte
{
[EnumMember]
FileStoragePath,
[EnumMember]
UsePermanentDelete,
[EnumMember]
PlayerOffset,
[EnumMember]
PlayerRewindInterval,
[EnumMember]
EnableChat,
[EnumMember]
SystemIPAddress,
[EnumMember]
SystemServerName,
[EnumMember]
SystemDatabaseName,
[EnumMember]
SystemDatabaseTimeout,
[EnumMember]
SystemLogin,
[EnumMember]
SystemPassword,
[EnumMember]
ReportServerWebService,
[EnumMember]
ReportServerWebServicePort,
[EnumMember]
ServiceDatabaseName,
[EnumMember]
ServiceLogin,
[EnumMember]
ServicePassword,
[EnumMember]
DomainName,
[EnumMember]
DomainUserName,
[EnumMember]
DomainPassword,
[EnumMember]
ImpersonationUsername,
[EnumMember]
ImpersonationPassword,
[EnumMember]
UseImpersonation,
[EnumMember]
WMSIPAddress,
[EnumMember]
WMSPort,
[EnumMember]
WcfServiceAddress,
[EnumMember]
WcfExternalServiceAddress,

55
[EnumMember]
AudioProfileVisibleValue,
[EnumMember]
AudioProfileContent,
[EnumMember]
VideoProfileVisibleValue,
[EnumMember]
VideoProfileContent,
[EnumMember]
ApplicationLogoPath,
[EnumMember]
UILanguage,
[EnumMember]
SiteTitle,
[EnumMember]
UseHotKeys,
[EnumMember]
HotKeyPlayPause,
[EnumMember]
HotKeyStop,
[EnumMember]
HotKeyReset,
[EnumMember]
HotKeyRW,
[EnumMember]
HotKeyFF,
[EnumMember]
HotKeyInsertBookmark,
[EnumMember]
HotKeyNextBookmark,
[EnumMember]
HotKeyPrevBookmark,
[EnumMember]
HotKeySpeedNormal,
[EnumMember]
HotKeySpeedPlus,
[EnumMember]
HotKeySpeedMinus,
[EnumMember]
RetentionType,
[EnumMember]
RetentionOption,
[EnumMember]
RetentionTime,
[EnumMember]
EmailFromName,
[EnumMember]
EmailFromAddress,
[EnumMember]
EmailSMTPServer,
[EnumMember]
EmailSMTPPort,
[EnumMember]
EmailUseSMTPAuth,
[EnumMember]
EmailEnableSSL,
[EnumMember]
EmailSMTPUserName,
[EnumMember]
EmailSMTPPassword,
56
[EnumMember]
UseADEmailNotification,
[EnumMember]
ChiefTypistMembers,
[EnumMember]
DBVersion,
[EnumMember]
ShowReportsPage,
[EnumMember]
RetentionTimeBurningHistory,
[EnumMember]
RetentionTimeJobs,
[EnumMember]
RetentionTimeObjectsAndLogs,
[EnumMember]
BurnStatusReport,
[EnumMember]
BurnAutoRun,
[EnumMember]
BurnIndicoPlayer,
[EnumMember]
BurnIndicoPlayerSSN,
[EnumMember]
BurnChecksumCalculator,
[EnumMember]
BurnMetadaXML,
[EnumMember]
StatusReportDateTimeCulture,
[EnumMember]
DaysBeforeBurningTaskFailed,
[EnumMember]
PublisherServicePort,
[EnumMember]
ExternalStoragePath,
[EnumMember]
ExternalSiteAddress,
[EnumMember]
ExternalWmsAddress,
[EnumMember]
ExternalWmsPort,
[EnumMember]
DiscSizeDVD,
[EnumMember]
DiscSizeDVDDL,
[EnumMember]
DiscSizeCD,
[EnumMember]
IsExpandedSearch,
[EnumMember]
UseCompleteWithOutFile,
[EnumMember]
PreFields,
[EnumMember]
UsePredefinedPublishEmails,
[EnumMember]
UseCustomPublishEmails,
[EnumMember]
PredefinedPublishEmails,
[EnumMember]
DeniedPriority,
57
[EnumMember]
ColumnsOrderDC,
[EnumMember]
ColumnsOrderRec,
[EnumMember]
ColumnsOrderTask,
[EnumMember]
ColumnsOrderBookmark,
[EnumMember]
ColumnsOrderAttachment,
[EnumMember]
UseSoundexSearch,
}

[DataContract]
public class ReportField :BaseObject
/// <summary>
/// Gets/Sets Name of a field
/// </summary>
[Column(Name = "name", DbType = "VarChar", Storage = "20")]
[DataMember]
public MetaDataNames Name { get; set; }

58
/// <summary>
/// Gets/Sets VisualName of a field
/// </summary>
[Column(Name = "visualName",DbType = "NVarChar", Storage = "50")]
[DataMember]
public string VisualName { get; set; }

/// <summary>
/// Gets/Sets visibility of a field
/// </summary>
[Column(Name = "isVisible", DbType = "Bit")]
[DataMember]
public bool IsVisible { get; set; }

/// <summary>
/// Gets/Sets Parent type
/// </summary>
[Column(Name = "parentType", DbType = "TinyInt")]
[DataMember]
public ObjectType Type { get; set; }

/// <summary>
/// Public _ctor
/// </summary>
public ReportField()

/// <summary>
/// Convert DataRow object to ReportFields
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>ReportFields</returns>
public static explicit operator ReportField(DataRow row)

public enum WcfSqlCommunicatorService.OperationResult


{
OK,
Exception,
SqlException,
AccessDenied,
NoPermissions,
}

[DataContract]
public class PagingOptions
/// <summary>
/// Gets/Sets Number of a set
/// </summary>
[DataMember]
public long? Number
{
get;
set;
}

59
/// <summary>
/// Gets/Sets Size of a set. Null - no limit
/// </summary>
[DataMember]
public int? Size
{
get;
set;
}

/// <summary>
/// Gets/Sets Name of sorting column
/// </summary>
[DataMember]
public string ColumnName
{
get;
set;
}

/// <summary>
/// Gets/Sets Sorting direciton
/// </summary>
[DataMember]
public SortDirection? Direction
{
get;
set;
}

/// <summary>
/// Gets/Sets Count of found items
/// </summary>
[DataMember]
public long TotalSize
{
get;
set;
}

public PagingOptions()

/// <summary>
/// Type of sort direction.
/// </summary>
[DataContract]
public enum SortDirection : byte
{
[EnumMember]
Ascending,
[EnumMember]
Descending
}

60
[DataContract]
public class SearchOptions
/// <summary>
/// Gets/Sets Text for searching
/// </summary>]
[DataMember]
public string Text
{
get;
set;
}

/// <summary>
/// Gets/Sets Text for soundex searching
/// </summary>]
[DataMember]
public string TextSoundex
{
get;
set;
}

/// <summary>
/// Gets/Sets List of column names where searching will be
/// </summary>
[DataMember]
public List<string> Fields
{
get;
set;
}

/// <summary>
/// Gets/Sets Start time
/// </summary>
[DataMember]
public DateTime? StartTime
{
get;
set;
}

/// <summary>
/// Gets/Sets End time
/// </summary>
[DataMember]
public DateTime? EndTime
{
get;
set;
}

61
/// <summary>
/// Gets/Sets Type of searching
/// </summary>
[DataMember]
public SearchType Type
{
get;
set;
}

/// <summary>
/// Gets/Sets Place of searching
/// </summary>
[DataMember]
public SearchPlace Place
{
get;
set;
}

/// <summary>
/// Gets/Sets Use soundex
/// </summary>
[DataMember]
public bool UseSoundex
{
get;
set;
}

/// <summary>
/// Gets/Sets Ignore visible
/// </summary>
[DataMember]
public bool IgnoreVisible
{
get;
set;
}

public SearchOptions()

/// <summary>
/// Search type
/// </summary>
[DataContract]
public enum SearchType : byte
{
[EnumMember]
AllWords,
[EnumMember]
ExactWord,
[EnumMember]
OneOrMore
}

62
/// <summary>
/// Search place
/// </summary>
[DataContract]
public enum SearchPlace : byte
{
[EnumMember]
Item,
[EnumMember]
Metadata,
[EnumMember]
Username,
[EnumMember]
LogContent,
[EnumMember]
ItemContent
}

[DataContract]
public class Report
/// <summary>
/// Gets/Sets Name of report
/// </summary>
[Column(Name = "name",DbType = "NVarChar", Storage = "-1")]
[DataMember]
public string Name { get; set; }

/// <summary>
/// Gets/Sets Path to report file
/// </summary>
[Column(Name = "Description", CanBeNull = true, DbType = "NVarChar", Storage = "-
1")]
[DataMember]
public string Comment { get; set; }

/// <summary>
/// Convert DataRow object to Report
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>Report</returns>
public static explicit operator Report(DataRow row)

public class ConfigurationFile (SettingFile)


/// <summary>
/// Gets/Sets Key of setting
/// </summary>
[DataMember]
[Column(Name = "key", DbType = "VarChar", Storage = "50")]
public SettingFilesKeys Key
{
get;
set;
}

63
/// <summary>
/// Gets/Sets Language for setting
/// </summary>
[DataMember]
[Column(Name = "language", DbType = "VarChar", Storage = "50")]
public string Language
{
get;
set;
}

/// <summary>
/// Gets/Sets Setting's file data in binary format
/// </summary>
[DataMember]
[Column(Name = "value", DbType = "VarBinary", Storage = "-1")]
public byte[] Value
{
get;
set;
}

/// <summary>
/// Gets/Sets Interview type
/// </summary>
[DataMember]
[Column(Name = "interviewType", DbType = "NVarChar", Storage = "50")]
public string InterviewType
{
get;
set;
}

public ConfigurationFile()

/// <summary>
/// Convert DataRow object to ConfigurationFile
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns> ConfigurationFile </returns>
public static explicit operator ConfigurationFile(System.Data.DataRow row)

public enum PreferenceSection


{
ActiveDirectory,
ReportingServiceDatabase,
DefaultRetentionPolicy,
DiscCocerAndFiles,
EmailNotifications,
ExternalSite,
General,
Hotkeys,
Interface,
Publishers,
Streaming,
Restore,
}

64
[DataContract]
public class ConnectionOptions
{
[DataMember]
/// <summary>
/// Gets/Sets Connection timeout in seconds
/// </summary>
public int ConnectionTimeOut
{
get;
set;
}

[DataMember]
/// <summary>
/// SystemIP
/// </summary>
public string SystemIPAddress { get; set; }

[DataMember]
/// <summary>
/// SystemServer
/// </summary>
public string SystemServerName { get; set; }

[DataMember]
/// <summary>
/// SystemDatabase
/// </summary>
public string SystemDatabaseName { get; set; }

[DataMember]
/// <summary>
/// SystemLogin
/// </summary>
public string SystemLogin { get; set; }

[DataMember]
/// <summary>
/// SystemPassword
/// </summary>
public string SystemPassword { get; set; }

[DataMember]
/// <summary>
/// Determines right's of current user
/// </summary>
public bool IsUserFromWebConfig { get; set; }

[DataMember]
/// <summary>
/// Determines database version (2005 or 2008)
/// </summary>
public bool IsDatabaseVersion2008 { get; set; }

65
[DataMember]
/// <summary>
/// Determines WCF services address
/// </summary>
public string WCFServicesAddress { get; set; }

[DataMember]
/// <summary>
/// Determines deny priority
/// </summary>
public bool DenyPriority { get; set; }

[DataMember]
/// <summary>
/// Determines invisible mode
/// </summary>
public bool InvisibleMode { get; set; }
}

[DataContract]
public class Role : BaseObject
/// <summary>
/// Gets/Sets Name
/// </summary>
[Column(Name = "name", DbType = "NVarChar", Storage = "255")]
[DataMember]
public string Name { get; set; }

/// <summary>
/// Gets/Sets Comment
/// </summary>
[Column(Name = "comment", CanBeNull = true, DbType = "NVarChar", Storage = "255")]
[DataMember]
public string Comment
{
get;
set;
}

/// <summary>
/// Gets/Sets Global Permissions
/// </summary>
[DataMember]
public List<Permissions> GlobalPermissions { get; set; }

/// <summary>
/// Gets/Sets Local Permissions
/// </summary>
[DataMember]
public LocalPermissions LocalPermissions { get; set; }

public Role()

66
/// <summary>
/// Convert DataRow object to Role
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>Role</returns>
public static explicit operator Role(System.Data.DataRow row)

[DataContract]
public class Client (IndicoClient)
/// <summary>
/// Gets/Sets ID
/// </summary>
[Column(Name = "id", IsDbGenerated = true, DbType = "BigInt")]
[DataMember]
public long ID
{
get;
set;
}

/// <summary>
/// Gets/Sets Comment
/// </summary>
[Column(Name = "comment", CanBeNull = true, DbType = "NVarChar", Storage = "255")]
[DataMember]
public string Comment
{
get;
set;
}

/// <summary>
/// Gets/Sets PC name
/// </summary>
[DataMember]
[Column(Name = "name", DbType = "NVarChar", Storage = "255")]
public string Name { get; set; }

/// <summary>
/// Gets/Sets List of user roles
/// </summary>
[DataMember]
public Dictionary<CommonParent, Role> UserRoles { get; set; }

/// <summary>
/// Gets/Sets Creator's role
/// </summary>
[DataMember]
public Role CreatorRole { get; set; }

public Client()

67
/// <summary>
/// Returns a default user
/// </summary>
/// <returns></returns>
public List<CommonParent> GetDefaultUser()

/// <summary>
/// Convert Principal object to Client
/// </summary>
/// <param name="principal">Source Principal object</param>
/// <returns>Client</returns>
public static explicit operator Client(Principal principal)

/// <summary>
/// Convert DataRow object to Client
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>Client</returns>
public static explicit operator Client(System.Data.DataRow row)

[DataContract]
public class DiscPublisher (Publisher) : BaseObject
/// <summary>
/// Gets/Sets Comment
/// </summary>
[Column(Name = "comment", CanBeNull = true, DbType = "NVarChar", Storage = "255")]
[DataMember]
public string Comment { get; set; }

/// <summary>
/// Gets/Sets Network address
/// </summary>
[DataMember]
[Column(Name = "address", DbType="NVarChar", Storage="255")]
public string Address { get; set; }

/// <summary>
/// Gets/Sets Monitoring folder name
/// </summary>
[DataMember]
[Column(Name = "monitoringFolderName", DbType = "NVarChar", Storage = "255")]
public string Folder { get; set; }

/// <summary>
/// Gets/Sets BurningRobots
/// </summary>
[DataMember]
public List<BurningRobot> BurningRobots { get; set; }

public DiscPublisher()

/// <summary>
/// Convert DataRow object to DiscProducer
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>DiscProducer</returns>
public static explicit operator DiscPublisher(System.Data.DataRow row)

68
[DataContract]
public class BurningRobot : BaseObject
/// <summary>
/// Gets/Sets PK of a parent object
/// </summary>
[DataMember]
[Column(Name = "idParent", DbType = "Int")]
public int ParentID { get; set; }

/// <summary>
/// Gets/Sets Disc Publisher model
/// </summary>
[DataMember]
[Column(Name = "model", DbType = "VarChar", Storage = "100")]
public string Model { get; set; }

/// <summary>
/// Gets/Sets Department name
/// </summary>
[DataMember]
[Column(Name = "department", DbType = "NVarChar", Storage = "255")]
public string Department { get; set; }

/// <summary>
/// Gets/Sets True - possible to write onto CD discs
/// </summary>
[DataMember]
[Column(Name = "cd", DbType = "Bit")]
public bool CD { get; set; }

/// <summary>
/// Gets/Sets True - possible to write onto DVD discs
/// </summary>
[DataMember]
[Column(Name = "dvd", DbType = "Bit")]
public bool DVD { get; set; }

/// <summary>
/// Gets/Sets True - possible to write onto DVD double layer discs
/// </summary>
[DataMember]
[Column(Name = "dvdDL", DbType = "Bit")]
public bool DVDDL { get; set; }

/// <summary>
/// Gets/Sets True - possible to write onto DVD double layer discs
/// </summary>
[DataMember]
[Column(Name = "isVisible", DbType = "Bit")]
public bool IsVisible { get; set; }

/// <summary>
/// Convert DataRow object to burning robot
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>Burning robot</returns>
public static explicit operator BurningRobot(System.Data.DataRow row)

69
public class PredefinedRetentionValueContainer
(RetentionValueContainerPredefined)
/// <summary>
/// Gets/Sets ID
/// </summary>
[Column(Name = "id", IsDbGenerated = true, DbType = "BigInt")]
[DataMember]
public long ID
{
get;
set;
}

/// <summary>
/// Gets/Sets Name
/// </summary>
[Column(Name = "name", DbType = "NVarChar", Storage = "1000")]
[DataMember]
public string Name { get; set; }

/// <summary>
/// Gets/Sets Comment
/// </summary>
[Column(Name = "comment", CanBeNull = true, DbType = "NVarChar", Storage = "255")]
[DataMember]
public string Comment
{
get;
set;
}

/// <summary>
/// Gets/Sets Predefined retention value list
/// </summary>
[DataMember]
public List<RetentionValue> Values
{
get;
set;
}

public PredefinedRetentionValueContainer ()
/// <summary>
/// Convert DataRow object to PredefinedRetentionValueContainer
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns> PredefinedRetentionValueContainer </returns>
public static explicit operator PredefinedRetentionValueContainer (DataRow row)

[System.Runtime.Serialization.DataContract]
public class EmailSettings
[System.Runtime.Serialization.DataMember]
public string EmailEnableSSL
{
get;
set;

70
}

[System.Runtime.Serialization.DataMember]
public string EmailFromAddress
{
get;
set;
}

[System.Runtime.Serialization.DataMember]
public string EmailFromName
{
get;
set;
}

[System.Runtime.Serialization.DataMember]
public string EmailSMTPPassword
{
get;
set;
}

[System.Runtime.Serialization.DataMember]
public string EmailSMTPPort
{
get;
set;
}

[System.Runtime.Serialization.DataMember]
public string EmailSMTPServer
{
get;
set;
}

[System.Runtime.Serialization.DataMember]
public string EmailSMTPUserName
{
get;
set;
}

[System.Runtime.Serialization.DataMember]
public string EmailUseSMTPAuth
{
get;
set;
}

[DataContract]
public class SystemUser
[DataMember]
public string ID
{
get;
set;

71
}

[DataMember]
public string Name
{
get;
set;
}

[DataMember]
public string Password
{
get;
set;
}

[DataMember]
public SystemUserRole Role
{
get;
set;
}

[DataContract]
public class SystemUserRole
[DataMember]
public string Name
{
get;
set;
}

[DataMember]
public string VisibleName
{
get;
set;
}
[DataMember]
public string Description
{
get;
set;
}

[DataMember]
public SystemUserRoles Role
{
get;
set;
}

/// <summary>
/// Predefined system users' roles
/// </summary>
[DataContract]
public enum SystemUserRoles
{
72
[EnumMember]
Administrator,
[EnumMember]
PowerUser
}

public enum SystemUserOperationResult


{
Added,
Edited,
Deleted,
DeletedFromConcurrentThread,
Duplicated,
ErrorWhileAdding,
ErrorWhileEditing,
ErrorWhileDeleting
}

public enum ItemOperationResult


{
Added,
Edited,
Deleted,
DeletedFromConcurrentThread,
Duplicated,
ErrorWhileAdding,
ErrorWhileEditing,
ErrorWhileDeleting
}

[DataContract]
public class SystemObject : BaseObject

/// <summary>
/// Gets/Sets name
/// </summary>
[Column(Name = "name")]
[DataMember]
public string Name
{
get;
set;
}

public enum SearchFor : byte


{
None = 0x0,
Interviews = 0x1,
LiveStreams = 0x2,
Recordings = 0x4,
Tasks = 0x8,
Bookmarks = 0x10,
Attachments = 0x20
}

73
public class PublishItem (RecordingPublished) :
BaseObjectCredentialData
/// <summary>
/// Gets/Sets PK of a parent object
/// </summary>
[Column(Name = "idParent", DbType = "Int")]
[DataMember]
public int ParentID
{
get;
set;
}

/// <summary>
/// Gets/Sets PK of parent object
/// </summary>
[Column(Name = "idObject", DbType = "Int")]
[DataMember]
public int ObjectID
{
get;
set;
}

/// <summary>
/// Gets/Sets Recording`s duration
/// </summary>
[Column(Name = "duration", CanBeNull = true, DbType = "Int")]
[DataMember]
public int Duration
{
get;
set;
}

/// <summary>
/// Gets/Sets PK of parent object
/// </summary>
[Column(Name = "objectType", DbType = "TinyInt")]
[DataMember]
public ObjectType ObjectType
{
get;
set;
}

/// <summary>
/// Gets/Sets Comment
/// </summary>
[Column(Name = "name", DbType = "NVarChar", Storage = "-1")]
[DataMember]
public string Name
{
get;
set;
}

74
/// <summary>
/// Gets/Sets CRC
/// </summary>
[Column(Name = "crc", CanBeNull = true, DbType = "NVarChar", Storage = "-1")]
[DataMember]
public string CRC
{
get;
set;
}

/// <summary>
/// Gets/Sets MimeType
/// </summary>
[Column(Name = "mimeType", CanBeNull = true, DbType = "NVarChar", Storage = "-1")]
[DataMember]
public string MimeType
{
get;
set;
}

/// <summary>
/// Gets/Sets File size
/// </summary>
[Column(Name = "fileSize", CanBeNull = true, DbType = "BigInt")]
[DataMember]
public long FileSize
{
get;
set;
}

/// <summary>
/// Gets/Sets File name
/// </summary>
[Column(Name = "fileName", CanBeNull = true, DbType = "NVarChar", Storage = "-1")]
[DataMember]
public string FileName
{
get;
set;
}

/// <summary>
/// Gets/Sets Storage file path
/// </summary>
[Column(Name = "path", CanBeNull = true, DbType = "NVarChar", Storage = "-1")]
[DataMember]
public string Path
{
get;
set;
}

75
/// <summary>
/// Gets/Sets Media type of an interview
/// </summary>
[Column(Name = "mediaType", DbType = "VarChar", Storage = "10")]
[DataMember]
public MediaType Type
{
get;
set;
}

/// <summary>
/// Gets/Sets Time when capturing has been stopped
/// </summary>
[Column(Name = "finishTime", DbType = "DateTime")]
[DataMember]
public DateTime FinishTime
{
get;
set;
}

/// <summary>
/// Gets/Sets PC name
/// </summary>
[Column(Name = "clientName", DbType = "NVarChar", Storage = "255")]
[DataMember]
public string ClientName
{
get;
set;
}

/// <summary>
/// Gets/Sets Creation time
/// </summary>
[Column(Name = "creationTime", DbType = "DateTime")]
[DataMember]
public DateTime CreationTime
{
get;
set;
}

/// <summary>
/// Gets/Sets job for
/// </summary>
[DataMember]
public PublishJob Job
{
get;
set;
}

76
/// <summary>
/// Gets/Sets Nested Shadow items
/// </summary>
public List<ShadowPublishedItem> ShadowItems
{
get;
set;
}

public PublishItem ()

/// <summary>
/// Convert DataRow object to PublishItem
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns> PublishItem </returns>
public static explicit operator PublishItem (DataRow row)

[DataContract]
public enum ExternalService.OperationResult
{
[EnumMember]
OK,
[EnumMember]
Exception,
[EnumMember]
SqlException
}

[DataContract]
public enum ExternalService.SystemUserOperationResult
{
[EnumMember]
Added,
[EnumMember]
Edited,
[EnumMember]
Deleted,
[EnumMember]
DeletedFromConcurrentThread,
[EnumMember]
Duplicated,
[EnumMember]
ErrorWhileAdding,
[EnumMember]
ErrorWhileEditing,
[EnumMember]
ErrorWhileDeleting
}

public enum PublisherService.OperationResult


{
OK,
Exception,
SqlException,
}

77
public enum WcfSqlCommunicatorService.UsedResult
{
NotUsed,
OneUsed,
SomeUsed,
AllUsed,
}

[DataContract]
public class Log : BaseObjectCredentialData
/// <summary>
/// Gets/Sets Creation time
/// </summary>
[DataMember]
[Column(Name = "time",DbType ="DateTime2")]
public DateTime CreationTime
{
get;
set;
}

/// <summary>
/// Gets/Sets Parent id
/// </summary>
[DataMember]
[Column(Name = "idParent", CanBeNull = true, DbType = "Int")]
public int ? ParentID
{
get;
set;
}

78
/// <summary>
/// Gets/Sets Message
/// </summary>
[DataMember]
[Column(Name = "message", DbType = "NVarChar", Storage = "1000")]
public string Message
{
get;
set;
}

/// <summary>
/// Gets/Sets Parent type
/// </summary>
[DataMember]
[Column(Name = "parentType", DbType = "TinyInt")]
public ObjectType ParentType
{
get;
set;
}

/// <summary>
/// Gets/Sets Object name
/// </summary>
[DataMember]
[System.Xml.Serialization.XmlIgnore]
[Column(Name = "name", CanBeNull = true, DbType = "NVarChar", Storage = "255")]
public string ObjectName
{
get;
set;
}

/// <summary>
/// Gets/Sets Object creation time
/// </summary>
[DataMember]
[System.Xml.Serialization.XmlIgnore]
[Column(Name = "creationTime", CanBeNull = true, DbType = "DateTime2")]
public DateTime ? ObjectCreationTime
{
get;
set;
}

/// <summary>
/// Gets/Sets Root id
/// </summary>
[DataMember]
[System.Xml.Serialization.XmlIgnore]
[Column(Name = "idRoot", CanBeNull = true, DbType = "Int")]
public int RootID
{
get;
set;
}
public Log()

79
/// <summary>
/// Convert DataRow object to Log
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>Log</returns>
public static explicit operator Log(DataRow row)

[DataContract]
public class SystemStatus
/// <summary>
/// Gets/Sets Active live feeds
/// </summary>
[Column(Name = "activeLiveFeeds", DbType = "Int")]
[DataMember]
public int ActiveLiveFeeds
{
get;
set;
}

/// <summary>
/// Gets/Sets Active audio live feeds
/// </summary>
[Column(Name = "activeLiveFeedsAudio", DbType = "Int")]
[DataMember]
public int ActiveAudioLiveFeeds
{
get;
set;
}

/// <summary>
/// Gets/Sets Active video live feeds
/// </summary>
[Column(Name = "activeLiveFeedsVideo", DbType = "Int")]
[DataMember]
public int ActiveVideoLiveFeeds
{
get;
set;
}

/// <summary>
/// Gets/Sets Total interviews
/// </summary>
[Column(Name = "interviews", DbType = "Int")]
[DataMember]
public int TotalInterviews
{
get;
set;
}

80
/// <summary>
/// Gets/Sets Total audio interviews
/// </summary>
[Column(Name = "interviewsAudio", DbType = "Int")]
[DataMember]
public int TotalAudioInterviews
{
get;
set;
}

/// <summary>
/// Gets/Sets Total video interviews
/// </summary>
[Column(Name = "interviewsVideo", DbType = "Int")]
[DataMember]
public int TotalVideoInterviews
{
get;
set;
}

/// <summary>
/// Gets/Sets Total digital case folders
/// </summary>
[Column(Name = "digitalCaseFolders", DbType = "Int")]
[DataMember]
public int TotalDigitalCaseFolders
{
get;
set;
}

/// <summary>
/// Gets/Sets Total recordings
/// </summary>
[Column(Name = "recordings", DbType = "Int")]
[DataMember]
public int TotalRecordings
{
get;
set;
}

/// <summary>
/// Gets/Sets Total audio recordings
/// </summary>
[Column(Name = "recordingsAudio", DbType = "Int")]
[DataMember]
public int TotalAudioRecordings
{
get;
set;
}

81
/// <summary>
/// Gets/Sets Total video recordings
/// </summary>
[Column(Name = "recordingsVideo", DbType = "Int")]
[DataMember]
public int TotalVideoRecordings
{
get;
set;
}

/// <summary>
/// Gets/Sets Total tasks
/// </summary>
[Column(Name = "tasks", DbType = "Int")]
[DataMember]
public int TotalTasks
{
get;
set;
}

/// <summary>
/// Gets/Sets Total not assigned tasks
/// </summary>
[Column(Name = "tasksNotAssigned", DbType = "Int")]
[DataMember]
public int TotalTasksNotAssigned
{
get;
set;
}

/// <summary>
/// Gets/Sets Total not started tasks
/// </summary>
[Column(Name = "tasksNotStarted", DbType = "Int")]
[DataMember]
public int TotalTasksNotStarted
{
get;
set;
}

/// <summary>
/// Gets/Sets Total in progress tasks
/// </summary>
[Column(Name = "tasksInProgres", DbType = "Int")]
[DataMember]
public int TotalTasksInProgress
{
get;
set;
}

82
/// <summary>
/// Gets/Sets Total completed tasks
/// </summary>
[Column(Name = "tasksCompleted", DbType = "Int")]
[DataMember]
public int TotalTasksCompleted
{
get;
set;
}

/// <summary>
/// Gets/Sets Systems user count
/// </summary>
[DataMember]
public int SystemUsersCount
{
get;
set;
}

/// <summary>
/// Gets/Sets Total roles
/// </summary>
[Column(Name = "roles", DbType = "Int")]
[DataMember]
public int UserRolesCount
{
get;
set;
}

/// <summary>
/// Gets/Sets Total publishers
/// </summary>
[Column(Name = "publishers", DbType = "Int")]
[DataMember]
public int PublishersCount
{
get;
set;
}

/// <summary>
/// Gets/Sets Total burning robots
/// </summary>
[Column(Name = "burningRobots", DbType = "Int")]
[DataMember]
public int BurningRobotsCount
{
get;
set;
}

83
/// <summary>
/// Gets/Sets Total disc templates
/// </summary>
[Column(Name = "discTemplates", DbType = "Int")]
[DataMember]
public int DiscTemplatesCount
{
get;
set;
}

/// <summary>
/// Gets/Sets Space capacity on server
/// </summary>
[DataMember]
public long ServerCapacity
{
get;
set;
}

/// <summary>
/// Gets/Sets Free space on server
/// </summary>
[DataMember]
public long FreeSpaceOnServer
{
get;
set;
}

/// <summary>
/// Gets/Sets Used space on server
/// </summary>
[DataMember]
public long UsedSpaceOnServer
{
get;
set;
}

/// <summary>
/// Gets/Sets Total bookmarks
/// </summary>
[Column(Name = "bookmarks", DbType = "Int")]
[DataMember]
public int TotalBookmarks
{
get;
set;
}

84
/// <summary>
/// Gets/Sets Total attachments
/// </summary>
[Column(Name = "attachments", DbType = "Int")]
[DataMember]
public int TotalAttachments
{
get;
set;
}

/// <summary>
/// Gets/Sets Total disposed interviews
/// </summary>
[Column(Name = "interviewsDisposed", DbType = "Int")]
[DataMember]
public int TotalDisposedInterviews
{
get;
set;
}

/// <summary>
/// Gets/Sets Total not uploaded interviews
/// </summary>
[Column(Name = "interviewsNotUploaded", DbType = "Int")]
[DataMember]
public int TotalNotUploadedInterviews
{
get;
set;
}

/// <summary>
/// Gets/Sets Total not uploaded digital case folders
/// </summary>
[Column(Name = "digitalCaseFoldersNotUploaded", DbType = "Int")]
[DataMember]
public int TotalNotUploadedDigitalCaseFolders
{
get;
set;
}

/// <summary>
/// Gets/Sets Total disposed digital case folders
/// </summary>
[Column(Name = "digitalCaseFoldersDisposed", DbType = "Int")]
[DataMember]
public int TotalDisposedDigitalCaseFolders
{
get;
set;
}

85
/// <summary>
/// Gets/Sets Total audit logs
/// </summary>
[Column(Name = "auditLogs", DbType = "Int")]
[DataMember]
public int TotalAuditLogs
{
get;
set;
}

/// <summary>
/// Gets/Sets Total indico clients
/// </summary>
[Column(Name = "clients", DbType = "BigInt")]
[DataMember]
public long TotalClients
{
get;
set;
}

/// <summary>
/// Gets/Sets Total power users
/// </summary>
[Column(Name = "powerUsers", DbType = "Int")]
[DataMember]
public int TotalPowerUsers
{
get;
set;
}

/// <summary>
/// Convert DataRow object to SystemStatus
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>SystemStatus</returns>
public static explicit operator SystemStatus(DataRow row)

public class Profile


[DataContract]
public enum _Type
{
[EnumMember]
Video,
[EnumMember]
Audio
}

/// <summary>
/// Type of profile
/// </summary>
public _Type Type
{
get;
set;
}

86
/// <summary>
/// Profile name
/// </summary>
public string Name
{
get;
set;
}

/// <summary>
/// Description
/// </summary>
public string Description
{
get;
set;
}

/// <summary>
/// Bit rate for audio stream
/// </summary>
public string BitRateAudio
{
get;
set;
}

/// <summary>
/// Bit rate for video stream
/// </summary>
public string BitRateVideo
{
get;
set;
}

/// <summary>
/// Output width
/// </summary>
public string WidthVideo
{
get;
set;
}

/// <summary>
/// Output height
/// </summary>
public string HeightVideo
{
get;
set;
}

/// <summary>
/// Frame rate for video stream
/// </summary>
public string FrameRateVideo
{
get;
87
set;
}

/// <summary>
/// Sample rate for audio stream
/// </summary>
public string SampleRateAudio
{
get;
set;
}

/// <summary>
/// Full path to the file
/// </summary>
public string FilePath
{
get;
set;
}

/// <summary>
/// XML data
/// </summary>
public string XML
{
get;
set;
}

public Profile() { }

public Profile(string profileXML, _Type type)

public override string ToString()

public enum PlaybackProtocol : int


{
[EnumMember]
MMS = 1,
[EnumMember]
HTTP,
[EnumMember]
RTSP
}
/// <summary>
/// Represents interval of time
/// </summary>
public enum IntervalTime : byte
{
Year,
Month,
Day,
Hour,
Minute,
Second,
Millisecond
}

88
[DataContract]
public class ShadowPublishedItem: BaseObjectFile
/// <summary>
/// Convert DataRow object to ShadowPublishedItem
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>ShadowPublishedItem</returns>
public static explicit operator ShadowPublishedItem(DataRow row)

[DataContract]
public partial class DigitalCaseFolder : BaseObjectPermissions
{

/// <summary>
/// Gets/Sets PC name
/// </summary>
[Column(Name = "clientName", DbType = "NVarChar", Storage = "63")]
[DataMember]
public string ClientName
{
get;
set;
}

/// <summary>
/// Gets/Sets Nested recordings
/// </summary>
[DataMember]
public List<Recording> Recordings
{
get;
set;
}

/// <summary>
/// Gets/Sets Nested attachments
/// </summary>
[DataMember]
public List<Attachment> Attachments
{
get;
set;
}

/// <summary>
/// Gets/Sets Nested Interviews
/// </summary>
[DataMember]
public List<Interview> Interviews
{
get;
set;
}

89
/// <summary>
/// Gets/Sets Nested burning tasks
/// </summary>
[DataMember]
public List<BurningTask> BurningTasks
{
get;
set;
}

/// <summary>
/// Gets/Sets Retention time
/// </summary>
[Column(Name = "retentionTime", CanBeNull = true, DbType = "DateTime")]
[DataMember]
public DateTime? RetentionTime
{
get;
set;
}

/// <summary>
/// Gets/Sets Retetion option
/// </summary>
[Column(Name = "retentionOption", DbType = "TinyInt")]
[DataMember]
public RetentionOption RetentionOption
{
get;
set;
}

/// <summary>
/// Gets/Sets Retetion type
/// </summary>
[Column(Name = "retentionType", DbType = "TinyInt")]
[DataMember]
public RetentionType RetentionType
{
get;
set;
}

/// <summary>
/// Gets/Sets Retetion rule
/// </summary>
[DataMember]
public RetentionRule RetentionRule
{
get;
set;
}

90
/// <summary>
/// Gets/Sets Path
/// </summary>
[Column(Name = "path", DbType = "NVarChar", Storage = "260")]
[DataMember]
public string Path
{
get;
set;
}

/// <summary>
/// Gets/Sets Directory name
/// </summary>
[Column(Name = "directoryName", DbType = "NVarChar", Storage = "255")]
[DataMember]
public string DirectoryName
{
get;
set;
}

/// <summary>
/// Gets/Sets Notified
/// </summary>
[Column(Name = "notified", DbType = "Bit")]
[DataMember]
public bool Notified
{
get;
set;
}

/// <summary>
/// Gets/Sets Modified time
/// </summary>
[Column(Name = "modifiedTime", CanBeNull = true, DbType = "DateTime")]
[DataMember]
public DateTime? ModifiedTime
{
get;
set;
}

/// <summary>
/// Gets/Sets User name who dispose object
/// </summary>
[Column(Name = "disposeByUserName", CanBeNull = true, DbType = "NVarChar", Storage =
"104")]
[DataMember]
public string DisposeByUserName
{
get;
set;
}

91
/// <summary>
/// Gets/Sets User sid who dispose object
/// </summary>
[Column(Name = "disposeBySID", CanBeNull = true, DbType = "VarChar", Storage =
"68")]
[DataMember]
public string DisposeBySID
{
get;
set;
}

/// <summary>
/// Gets/Sets GUID
/// </summary>
[Column(Name = "guid", DbType = "VarChar", Storage = "56")]
[DataMember]
public string GUID
{
get;
set;
}

/// <summary>
/// Gets/Sets link history
/// </summary>
[DataMember]
public List<LinkHistory> LinkHistory { get; set; }

/// <summary>
/// Gets/Sets link history
/// </summary>
[DataMember]
public bool FilesExported { get; set; }

/// <summary>
/// Gets/Sets publish history
/// </summary>
[DataMember]
public List<PublishJob> PublishHistory { get; set; }

public DigitalCaseFolder()

/// <summary>
/// Convert DataRow object to DigitalCaseFolder
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>DigitalCaseFolder</returns>
public static explicit operator DigitalCaseFolder(DataRow row)

/// <summary>
/// Convert DataRow object to shallow AttachmentG4
/// </summary>
/// <param name="row">Source DataRow object</param>
/// <returns>AttachmentG4</returns>
public static DigitalCaseFolder GetShallowItemFromDataRow(DataRow row)

92
/// <summary>
/// Returns recording by its Guid
/// </summary>
/// <param name="guid"></param>
/// <returns></returns>
public Recording GetRecordingByGuid(string guid)

/// <summary>
/// Returns attachment by its Guid
/// </summary>
/// <param name="guid"></param>
/// <returns></returns>
public Attachment GetAttachmentByGuid(string guid)

93

Das könnte Ihnen auch gefallen