Show / Hide Table of Contents

Class VersionableBase

Defines the basic identification of a repository-managed item: agency identifier, identifier, and item version. Implements the IVersionable interface.

Inheritance
object
NotificationObject
IdentifiableBase
VersionableBase
DescribableBase
OtherMaterial
Implements
INotifyPropertyChanged
IVersionable
IIdentifiable
IHasCustomFields
IVisitable
Inherited Members
IdentifiableBase.DefaultAgencyId
IdentifiableBase.AgencyId
IdentifiableBase.Identifier
IdentifiableBase.UserIds
IdentifiableBase.CustomFields
IdentifiableBase.UserAttributes
IdentifiableBase.GetUserIdValue(string)
IdentifiableBase.RemoveChildHelper(IdentifierTriple, params IList[])
NotificationObject.PropertyChanged
NotificationObject.RaisePropertyChanged(string)
NotificationObject.OnPropertyChanged(string)
NotificationObject.ResumePropertyEvents()
NotificationObject.SuspendPropertyEvents()
NotificationObject.PropertyEventsSuspended
NotificationObject.PropagateChildChanges(INotifyCollectionChanged, string)
NotificationObject.WatchProperty(INotifyPropertyChanged, string)
NotificationObject.WatchCollection(INotifyCollectionChanged, string)
object.Equals(object)
object.Equals(object, object)
object.ReferenceEquals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
Namespace: Algenta.Colectica.Model
Assembly: Algenta.Colectica.Model.dll
Syntax
public abstract class VersionableBase : IdentifiableBase, INotifyPropertyChanged, IVersionable, IIdentifiable, IHasCustomFields, IVisitable

Constructors

VersionableBase()

Initializes a new instance of the VersionableBase class. Sets the AgencyId to the value of DefaultAgencyId.

Declaration
protected VersionableBase()

Properties

Attachments

Gets a collection of file URIs stored in the File Storage Service attached to this item.

Declaration
public virtual ObservableCollection<Attachment> Attachments { get; }
Property Value
Type Description
ObservableCollection<Attachment>

BannerImageUri

Gets or sets the image to use as a banner.

Declaration
public Uri BannerImageUri { get; set; }
Property Value
Type Description
Uri

BasedOn

Gets a collection that describes previous items on which this item is based

Declaration
public BasedOn BasedOn { get; set; }
Property Value
Type Description
BasedOn

ChildTypesAccepted

Gets the child types that may be added to this item type.

Declaration
public virtual Collection<Guid> ChildTypesAccepted { get; }
Property Value
Type Description
Collection<Guid>

The child types that may be added to this item type.

ChildrenDereferenced

Gets or sets a value indicating whether the item's children have been dereferenced.

Declaration
[UIHint("skip")]
public bool ChildrenDereferenced { get; set; }
Property Value
Type Description
bool

true if the item's children have been dereferenced; otherwise, false.

CompositeId

Gets or sets the item's composite id, consisting of the agency identifier, identifier, and version.

Declaration
[UIHint("skip")]
public IdentifierTriple CompositeId { get; set; }
Property Value
Type Description
IdentifierTriple

The item's composite identifier.

Exceptions
Type Condition
ArgumentNullException

value

DisableChangeTracking

Disable Change Tracking

Declaration
public static bool DisableChangeTracking { get; set; }
Property Value
Type Description
bool

DisplayLabel

Gets the display label.

Declaration
public virtual string DisplayLabel { get; }
Property Value
Type Description
string

The display label.

IsDirty

Gets or sets a value indicating whether this instance has unsaved changes.

Declaration
[DoNotNotify]
[UIHint("skip")]
public virtual bool IsDirty { get; set; }
Property Value
Type Description
bool

true if this instance has unsaved changes; otherwise, false.

IsPopulated

Gets or sets a value indicating whether this instance's information is populated.

Declaration
[UIHint("skip")]
public bool IsPopulated { get; set; }
Property Value
Type Description
bool

true if this instance is populated; otherwise, false.

IsPublished

Gets or sets a value indicating whether this instance is published.

Declaration
[UIHint("skip")]
public bool IsPublished { get; set; }
Property Value
Type Description
bool

true if this instance is published; otherwise, false.

ItemType

Gets the universally unique identifier representing the item's type.

Declaration
[Display(GroupName = "Basic", Order = 0)]
public abstract Guid ItemType { get; }
Property Value
Type Description
Guid

The identifier representing the item's type.

OtherMaterials

Gets a collection of Other Material fields defined for this item.

Declaration
public ObservableCollection<OtherMaterial> OtherMaterials { get; }
Property Value
Type Description
ObservableCollection<OtherMaterial>

SucceededBy

If another item should be preferred instead of this item.

Declaration
public TypedIdTriple SucceededBy { get; set; }
Property Value
Type Description
TypedIdTriple

ThumbnailImageUri

Gets or sets the image to use as a thumbnail.

Declaration
public Uri ThumbnailImageUri { get; set; }
Property Value
Type Description
Uri

Version

Gets or sets the version.

Declaration
[Display(GroupName = "Version", Order = 1000)]
public long Version { get; set; }
Property Value
Type Description
long

The version.

VersionDate

Gets or sets the DateTime this version of the item was created.

Declaration
[Display(GroupName = "Version", Order = 1001)]
public DateTime VersionDate { get; set; }
Property Value
Type Description
DateTime

The DateTime this version was created.

VersionRationale

Gets the log message given by the user who created this version of the item.

Declaration
[Display(GroupName = "Version", Order = 1003)]
public MultilingualString VersionRationale { get; set; }
Property Value
Type Description
MultilingualString

VersionResponsibility

Gets or sets the name of the user who created this version of the item.

Declaration
[Display(GroupName = "Version", Order = 1002)]
public string VersionResponsibility { get; set; }
Property Value
Type Description
string

The name of the user who created this version of the item.

Methods

Accept(IVersionableVisitor)

Accepts the specified visitor.

Declaration
public void Accept(IVersionableVisitor visitor)
Parameters
Type Name Description
IVersionableVisitor visitor

The visitor.

AddChild(IVersionable)

Adds the provided child to this item.

Declaration
public virtual void AddChild(IVersionable child)
Parameters
Type Name Description
IVersionable child

The item to be added as a child of this item.

Exceptions
Type Condition
NotImplementedException

GetChildren()

Gets the identifiers of the item's children.

Declaration
public override ChildItemCollection GetChildren()
Returns
Type Description
ChildItemCollection

The identifiers of the item's children.

Overrides
IdentifiableBase.GetChildren()

RemoveChild(IdentifierTriple)

Removes the specified child.

Declaration
public override int RemoveChild(IdentifierTriple child)
Parameters
Type Name Description
IdentifierTriple child

The child to be removed.

Returns
Type Description
int

The number of children removed from the item.

Overrides
IdentifiableBase.RemoveChild(IdentifierTriple)
Exceptions
Type Condition
ArgumentNullException

child

RemoveChildHelper(IVersionable, params IList[])

Removes the specified child from any of the provided lists.

Declaration
public static bool RemoveChildHelper(IVersionable itemToRemove, params IList[] lists)
Parameters
Type Name Description
IVersionable itemToRemove

The item to remove.

IList[] lists

The lists from which the child should be removed.

Returns
Type Description
bool
Exceptions
Type Condition
ArgumentNullException

itemToRemove

ReplaceChild(IdentifierTriple, IVersionable)

Replaces the child with the specified identifier with the provided item.

Declaration
public override int ReplaceChild(IdentifierTriple toReplace, IVersionable child)
Parameters
Type Name Description
IdentifierTriple toReplace

The identifier of the child to replace.

IVersionable child

The new child.

Returns
Type Description
int

The number of children replaced.

Overrides
IdentifiableBase.ReplaceChild(IdentifierTriple, IVersionable)
Exceptions
Type Condition
ArgumentNullException

child

ToString()

Returns a string that represents this instance.

Declaration
public override string ToString()
Returns
Type Description
string

A string that represents this instance.

Overrides
object.ToString()

TryReplaceChild<T>(Func<T>, Action<T>, IdentifierTriple, IVersionable)

Tries the replace child.

Declaration
public static int TryReplaceChild<T>(Func<T> getter, Action<T> setter, IdentifierTriple toReplace, IVersionable child) where T : class, IVersionable
Parameters
Type Name Description
Func<T> getter

A function to get the item that will be replaced.

Action<T> setter

A function to set the item that will be replaced.

IdentifierTriple toReplace

To identifier of the item to replace.

IVersionable child

The child that will replace the previous child.

Returns
Type Description
int
Type Parameters
Name Description
T

The type of item being replaced

WatchProperties()

Watch for property changed events

Declaration
protected override void WatchProperties()
Overrides
IdentifiableBase.WatchProperties()

Implements

INotifyPropertyChanged
IVersionable
IIdentifiable
IHasCustomFields
IVisitable

Extension Methods

Extensions.Yield<T>(T)
In this article
Back to top Generated by DocFX