You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@chemistry.apache.org by fm...@apache.org on 2015/08/20 15:12:02 UTC
svn commit: r1696786 - in /chemistry/portcmis/trunk/PortCMIS/client:
ClientObjectFactory.cs ClientObjects.cs ClientTypes.cs
Author: fmui
Date: Thu Aug 20 13:12:01 2015
New Revision: 1696786
URL: http://svn.apache.org/r1696786
Log:
made public API methods virtual (see CMIS-936)
Modified:
chemistry/portcmis/trunk/PortCMIS/client/ClientObjectFactory.cs
chemistry/portcmis/trunk/PortCMIS/client/ClientObjects.cs
chemistry/portcmis/trunk/PortCMIS/client/ClientTypes.cs
Modified: chemistry/portcmis/trunk/PortCMIS/client/ClientObjectFactory.cs
URL: http://svn.apache.org/viewvc/chemistry/portcmis/trunk/PortCMIS/client/ClientObjectFactory.cs?rev=1696786&r1=1696785&r2=1696786&view=diff
==============================================================================
--- chemistry/portcmis/trunk/PortCMIS/client/ClientObjectFactory.cs (original)
+++ chemistry/portcmis/trunk/PortCMIS/client/ClientObjectFactory.cs Thu Aug 20 13:12:01 2015
@@ -31,13 +31,13 @@ namespace PortCMIS.Client.Impl
{
private ISession session;
- public void Initialize(ISession session, IDictionary<string, string> parameters)
+ public virtual void Initialize(ISession session, IDictionary<string, string> parameters)
{
this.session = session;
}
// Acl and ACE
- public IAcl ConvertAces(IList<IAce> aces)
+ public virtual IAcl ConvertAces(IList<IAce> aces)
{
if (aces == null) { return null; }
@@ -52,7 +52,7 @@ namespace PortCMIS.Client.Impl
return result;
}
- public IAcl CreateAcl(IList<IAce> aces)
+ public virtual IAcl CreateAcl(IList<IAce> aces)
{
Acl acl = new Acl();
acl.Aces = aces;
@@ -60,7 +60,7 @@ namespace PortCMIS.Client.Impl
return acl;
}
- public IAce CreateAce(string principal, IList<string> permissions)
+ public virtual IAce CreateAce(string principal, IList<string> permissions)
{
Ace ace = new Ace();
ace.IsDirect = true;
@@ -73,7 +73,7 @@ namespace PortCMIS.Client.Impl
}
// policies
- public IList<string> ConvertPolicies(IList<IPolicy> policies)
+ public virtual IList<string> ConvertPolicies(IList<IPolicy> policies)
{
if (policies == null) { return null; }
@@ -90,7 +90,7 @@ namespace PortCMIS.Client.Impl
}
// renditions
- public IRendition ConvertRendition(string objectId, IRenditionData rendition)
+ public virtual IRendition ConvertRendition(string objectId, IRenditionData rendition)
{
if (rendition == null)
{
@@ -102,7 +102,7 @@ namespace PortCMIS.Client.Impl
}
// content stream
- public IContentStream CreateContentStream(string filename, long length, string mimetype, Stream stream)
+ public virtual IContentStream CreateContentStream(string filename, long length, string mimetype, Stream stream)
{
ContentStream result = new ContentStream();
result.FileName = filename;
@@ -114,7 +114,7 @@ namespace PortCMIS.Client.Impl
}
// types
- public IObjectType ConvertTypeDefinition(ITypeDefinition typeDefinition)
+ public virtual IObjectType ConvertTypeDefinition(ITypeDefinition typeDefinition)
{
switch (typeDefinition.BaseTypeId)
{
@@ -135,7 +135,7 @@ namespace PortCMIS.Client.Impl
}
}
- public IObjectType GetTypeFromObjectData(IObjectData objectData)
+ public virtual IObjectType GetTypeFromObjectData(IObjectData objectData)
{
if (objectData == null || objectData.Properties == null)
{
@@ -158,12 +158,12 @@ namespace PortCMIS.Client.Impl
}
// properties
- public IProperty CreateProperty<T>(IPropertyDefinition type, IList<T> values)
+ public virtual IProperty CreateProperty<T>(IPropertyDefinition type, IList<T> values)
{
return new Property(type, (IList<object>)values);
}
- protected IProperty ConvertProperty(IObjectType objectType, IList<ISecondaryType> secondaryTypes, IPropertyData pd)
+ protected virtual IProperty ConvertProperty(IObjectType objectType, IList<ISecondaryType> secondaryTypes, IPropertyData pd)
{
IPropertyDefinition definition = objectType[pd.Id];
if (definition == null)
@@ -194,7 +194,7 @@ namespace PortCMIS.Client.Impl
return CreateProperty(definition, pd.Values);
}
- public IDictionary<string, IProperty> ConvertProperties(IObjectType objectType, IList<ISecondaryType> secondaryTypes, IProperties properties)
+ public virtual IDictionary<string, IProperty> ConvertProperties(IObjectType objectType, IList<ISecondaryType> secondaryTypes, IProperties properties)
{
if (objectType == null)
{
@@ -223,7 +223,7 @@ namespace PortCMIS.Client.Impl
return result;
}
- public IProperties ConvertProperties(IDictionary<string, object> properties, IObjectType type, IList<ISecondaryType> secondaryTypes, HashSet<Updatability> updatabilityFilter)
+ public virtual IProperties ConvertProperties(IDictionary<string, object> properties, IObjectType type, IList<ISecondaryType> secondaryTypes, HashSet<Updatability> updatabilityFilter)
{
// check input
if (properties == null)
@@ -378,7 +378,7 @@ namespace PortCMIS.Client.Impl
return result;
}
- public IList<IPropertyData> ConvertQueryProperties(IProperties properties)
+ public virtual IList<IPropertyData> ConvertQueryProperties(IProperties properties)
{
if ((properties == null) || (properties.PropertyList == null))
{
@@ -389,7 +389,7 @@ namespace PortCMIS.Client.Impl
}
// objects
- public ICmisObject ConvertObject(IObjectData objectData, IOperationContext context)
+ public virtual ICmisObject ConvertObject(IObjectData objectData, IOperationContext context)
{
if (objectData == null)
{
@@ -415,7 +415,7 @@ namespace PortCMIS.Client.Impl
}
}
- public IQueryResult ConvertQueryResult(IObjectData objectData)
+ public virtual IQueryResult ConvertQueryResult(IObjectData objectData)
{
if (objectData == null)
{
@@ -425,7 +425,7 @@ namespace PortCMIS.Client.Impl
return new QueryResult(session, objectData);
}
- public IChangeEvent ConvertChangeEvent(IObjectData objectData)
+ public virtual IChangeEvent ConvertChangeEvent(IObjectData objectData)
{
ChangeEvent result = new ChangeEvent();
@@ -470,7 +470,7 @@ namespace PortCMIS.Client.Impl
return result;
}
- public IChangeEvents ConvertChangeEvents(string changeLogToken, IObjectList objectList)
+ public virtual IChangeEvents ConvertChangeEvents(string changeLogToken, IObjectList objectList)
{
if (objectList == null)
{
Modified: chemistry/portcmis/trunk/PortCMIS/client/ClientObjects.cs
URL: http://svn.apache.org/viewvc/chemistry/portcmis/trunk/PortCMIS/client/ClientObjects.cs?rev=1696786&r1=1696785&r2=1696786&view=diff
==============================================================================
--- chemistry/portcmis/trunk/PortCMIS/client/ClientObjects.cs (original)
+++ chemistry/portcmis/trunk/PortCMIS/client/ClientObjects.cs Thu Aug 20 13:12:01 2015
@@ -40,7 +40,7 @@ namespace PortCMIS.Client.Impl
protected ICmisBinding Binding { get { return Session.Binding; } }
private IObjectType objectType;
- public IObjectType ObjectType
+ public virtual IObjectType ObjectType
{
get
{
@@ -51,7 +51,7 @@ namespace PortCMIS.Client.Impl
}
}
- public IList<ISecondaryType> SecondaryTypes
+ public virtual IList<ISecondaryType> SecondaryTypes
{
get
{
@@ -62,7 +62,7 @@ namespace PortCMIS.Client.Impl
}
}
- protected string ObjectId
+ protected virtual string ObjectId
{
get
{
@@ -76,7 +76,7 @@ namespace PortCMIS.Client.Impl
}
}
- protected IOperationContext CreationContext { get; private set; }
+ protected virtual IOperationContext CreationContext { get; private set; }
private IDictionary<string, IProperty> properties;
private IAllowableActions allowableActions;
@@ -106,6 +106,21 @@ namespace PortCMIS.Client.Impl
throw new ArgumentException("Object type must have property definitions!");
}
+ if (objectData == null)
+ {
+ throw new ArgumentNullException("objectData");
+ }
+
+ if (objectData.Properties == null)
+ {
+ throw new ArgumentException("Object Data properties must be set!");
+ }
+
+ if (objectData.Id == null)
+ {
+ throw new ArgumentException("Object ID must be set!");
+ }
+
this.Session = session;
this.objectType = objectType;
this.extensions = new Dictionary<ExtensionLevel, IList<ICmisExtensionElement>>();
@@ -132,9 +147,15 @@ namespace PortCMIS.Client.Impl
{
IObjectType type = Session.GetTypeDefinition(stid.ToString());
if (type is ISecondaryType)
+ {
secondaryTypes.Add(type as ISecondaryType);
+ }
}
}
+ else
+ {
+ secondaryTypes = null;
+ }
break;
}
}
@@ -149,6 +170,10 @@ namespace PortCMIS.Client.Impl
allowableActions = objectData.AllowableActions;
extensions[ExtensionLevel.AllowableActions] = objectData.AllowableActions.Extensions;
}
+ else
+ {
+ allowableActions = null;
+ }
// handle renditions
if (objectData.Renditions != null)
@@ -159,6 +184,10 @@ namespace PortCMIS.Client.Impl
renditions.Add(of.ConvertRendition(Id, rd));
}
}
+ else
+ {
+ renditions = null;
+ }
// handle Acl
if (objectData.Acl != null)
@@ -166,6 +195,10 @@ namespace PortCMIS.Client.Impl
acl = objectData.Acl;
extensions[ExtensionLevel.Acl] = objectData.Acl.Extensions;
}
+ else
+ {
+ acl = null;
+ }
// handle policies
if (objectData.PolicyIds != null && objectData.PolicyIds.PolicyIds != null)
@@ -181,6 +214,10 @@ namespace PortCMIS.Client.Impl
}
extensions[ExtensionLevel.Policies] = objectData.PolicyIds.Extensions;
}
+ else
+ {
+ policies = null;
+ }
// handle relationships
if (objectData.Relationships != null)
@@ -195,12 +232,16 @@ namespace PortCMIS.Client.Impl
}
}
}
+ else
+ {
+ relationships = null;
+ }
extensions[ExtensionLevel.Object] = objectData.Extensions;
}
}
- protected string GetPropertyQueryName(string propertyId)
+ protected virtual string GetPropertyQueryName(string propertyId)
{
lock (objectLock)
{
@@ -216,7 +257,7 @@ namespace PortCMIS.Client.Impl
// --- object ---
- public void Delete(bool allVersions)
+ public virtual void Delete(bool allVersions)
{
lock (objectLock)
{
@@ -224,7 +265,7 @@ namespace PortCMIS.Client.Impl
}
}
- public ICmisObject UpdateProperties(IDictionary<string, object> properties)
+ public virtual ICmisObject UpdateProperties(IDictionary<string, object> properties)
{
IObjectId objectId = UpdateProperties(properties, true);
if (objectId == null)
@@ -240,7 +281,7 @@ namespace PortCMIS.Client.Impl
return this;
}
- public IObjectId UpdateProperties(IDictionary<String, object> properties, bool refresh)
+ public virtual IObjectId UpdateProperties(IDictionary<String, object> properties, bool refresh)
{
if (properties == null || properties.Count == 0)
{
@@ -284,7 +325,7 @@ namespace PortCMIS.Client.Impl
return Session.CreateObjectId(newObjectId);
}
- public ICmisObject Rename(string newName)
+ public virtual ICmisObject Rename(string newName)
{
if (newName == null || newName.Length == 0)
{
@@ -297,7 +338,7 @@ namespace PortCMIS.Client.Impl
return UpdateProperties(prop);
}
- public IObjectId Rename(string newName, bool refresh)
+ public virtual IObjectId Rename(string newName, bool refresh)
{
IDictionary<string, object> prop = new Dictionary<string, object>();
prop[PropertyIds.Name] = newName;
@@ -307,9 +348,9 @@ namespace PortCMIS.Client.Impl
// --- properties ---
- public IObjectType BaseType { get { return Session.GetTypeDefinition(GetPropertyAsStringValue(PropertyIds.BaseTypeId)); } }
+ public virtual IObjectType BaseType { get { return Session.GetTypeDefinition(GetPropertyAsStringValue(PropertyIds.BaseTypeId)); } }
- public BaseTypeId BaseTypeId
+ public virtual BaseTypeId BaseTypeId
{
get
{
@@ -320,21 +361,21 @@ namespace PortCMIS.Client.Impl
}
}
- public string Id { get { return GetPropertyAsStringValue(PropertyIds.ObjectId); } }
+ public virtual string Id { get { return GetPropertyAsStringValue(PropertyIds.ObjectId); } }
- public string Name { get { return GetPropertyAsStringValue(PropertyIds.Name); } }
+ public virtual string Name { get { return GetPropertyAsStringValue(PropertyIds.Name); } }
- public string CreatedBy { get { return GetPropertyAsStringValue(PropertyIds.CreatedBy); } }
+ public virtual string CreatedBy { get { return GetPropertyAsStringValue(PropertyIds.CreatedBy); } }
- public DateTime? CreationDate { get { return GetPropertyAsDateTimeValue(PropertyIds.CreationDate); } }
+ public virtual DateTime? CreationDate { get { return GetPropertyAsDateTimeValue(PropertyIds.CreationDate); } }
- public string LastModifiedBy { get { return GetPropertyAsStringValue(PropertyIds.LastModifiedBy); } }
+ public virtual string LastModifiedBy { get { return GetPropertyAsStringValue(PropertyIds.LastModifiedBy); } }
- public DateTime? LastModificationDate { get { return GetPropertyAsDateTimeValue(PropertyIds.LastModificationDate); } }
+ public virtual DateTime? LastModificationDate { get { return GetPropertyAsDateTimeValue(PropertyIds.LastModificationDate); } }
- public string ChangeToken { get { return GetPropertyAsStringValue(PropertyIds.ChangeToken); } }
+ public virtual string ChangeToken { get { return GetPropertyAsStringValue(PropertyIds.ChangeToken); } }
- public IList<IProperty> Properties
+ public virtual IList<IProperty> Properties
{
get
{
@@ -345,7 +386,7 @@ namespace PortCMIS.Client.Impl
}
}
- public IProperty this[string propertyId]
+ public virtual IProperty this[string propertyId]
{
get
{
@@ -366,7 +407,7 @@ namespace PortCMIS.Client.Impl
}
}
- public object GetPropertyValue(string propertyId)
+ public virtual object GetPropertyValue(string propertyId)
{
IProperty property = this[propertyId];
if (property == null) { return null; }
@@ -374,7 +415,7 @@ namespace PortCMIS.Client.Impl
return property.Value;
}
- public string GetPropertyAsStringValue(string propertyId)
+ public virtual string GetPropertyAsStringValue(string propertyId)
{
object value = GetPropertyValue(propertyId);
if (value == null)
@@ -385,7 +426,7 @@ namespace PortCMIS.Client.Impl
return Convert.ToString(value);
}
- public long? GetPropertyAsLongValue(string propertyId)
+ public virtual long? GetPropertyAsLongValue(string propertyId)
{
object value = GetPropertyValue(propertyId);
if (value == null)
@@ -401,7 +442,7 @@ namespace PortCMIS.Client.Impl
return Convert.ToInt64(value);
}
- public bool? GetPropertyAsBoolValue(string propertyId)
+ public virtual bool? GetPropertyAsBoolValue(string propertyId)
{
object value = GetPropertyValue(propertyId);
if (value == null)
@@ -417,7 +458,7 @@ namespace PortCMIS.Client.Impl
return Convert.ToBoolean(value);
}
- public DateTime? GetPropertyAsDateTimeValue(string propertyId)
+ public virtual DateTime? GetPropertyAsDateTimeValue(string propertyId)
{
object value = GetPropertyValue(propertyId);
if (value == null)
@@ -430,7 +471,7 @@ namespace PortCMIS.Client.Impl
// --- allowable actions ---
- public IAllowableActions AllowableActions
+ public virtual IAllowableActions AllowableActions
{
get
{
@@ -443,7 +484,7 @@ namespace PortCMIS.Client.Impl
// --- renditions ---
- public IList<IRendition> Renditions
+ public virtual IList<IRendition> Renditions
{
get
{
@@ -456,12 +497,12 @@ namespace PortCMIS.Client.Impl
// --- Acl ---
- public IAcl getAcl(bool onlyBasicPermissions)
+ public virtual IAcl GetAcl(bool onlyBasicPermissions)
{
return Binding.GetAclService().GetAcl(RepositoryId, ObjectId, onlyBasicPermissions, null);
}
- public IAcl ApplyAcl(IList<IAce> addAces, IList<IAce> removeAces, AclPropagation? aclPropagation)
+ public virtual IAcl ApplyAcl(IList<IAce> addAces, IList<IAce> removeAces, AclPropagation? aclPropagation)
{
IAcl result = Session.ApplyAcl(this, addAces, removeAces, aclPropagation);
@@ -470,17 +511,17 @@ namespace PortCMIS.Client.Impl
return result;
}
- public IAcl AddAcl(IList<IAce> addAces, AclPropagation? aclPropagation)
+ public virtual IAcl AddAcl(IList<IAce> addAces, AclPropagation? aclPropagation)
{
return ApplyAcl(addAces, null, aclPropagation);
}
- public IAcl RemoveAcl(IList<IAce> removeAces, AclPropagation? aclPropagation)
+ public virtual IAcl RemoveAcl(IList<IAce> removeAces, AclPropagation? aclPropagation)
{
return ApplyAcl(null, removeAces, aclPropagation);
}
- public IAcl Acl
+ public virtual IAcl Acl
{
get
{
@@ -493,7 +534,7 @@ namespace PortCMIS.Client.Impl
// --- policies ---
- public void ApplyPolicy(params IObjectId[] policyId)
+ public virtual void ApplyPolicy(params IObjectId[] policyId)
{
lock (objectLock)
{
@@ -503,7 +544,7 @@ namespace PortCMIS.Client.Impl
Refresh();
}
- public void RemovePolicy(params IObjectId[] policyId)
+ public virtual void RemovePolicy(params IObjectId[] policyId)
{
lock (objectLock)
{
@@ -513,7 +554,7 @@ namespace PortCMIS.Client.Impl
Refresh();
}
- public IList<IPolicy> Policies
+ public virtual IList<IPolicy> Policies
{
get
{
@@ -526,7 +567,7 @@ namespace PortCMIS.Client.Impl
// --- relationships ---
- public IList<IRelationship> Relationships
+ public virtual IList<IRelationship> Relationships
{
get
{
@@ -539,7 +580,7 @@ namespace PortCMIS.Client.Impl
// --- extensions ---
- public IList<ICmisExtensionElement> GetExtensions(ExtensionLevel level)
+ public virtual IList<ICmisExtensionElement> GetExtensions(ExtensionLevel level)
{
IList<ICmisExtensionElement> ext;
if (extensions.TryGetValue(level, out ext))
@@ -552,9 +593,9 @@ namespace PortCMIS.Client.Impl
// --- other ---
- public DateTime RefreshTimestamp { get; private set; }
+ public virtual DateTime RefreshTimestamp { get; private set; }
- public void Refresh()
+ public virtual void Refresh()
{
lock (objectLock)
{
@@ -569,7 +610,7 @@ namespace PortCMIS.Client.Impl
}
}
- public void RefreshIfOld(long durationInMillis)
+ public virtual void RefreshIfOld(long durationInMillis)
{
lock (objectLock)
{
@@ -586,7 +627,7 @@ namespace PortCMIS.Client.Impl
/// </summary>
public abstract class AbstractFileableCmisObject : AbstractCmisObject, IFileableCmisObject
{
- public IFileableCmisObject Move(IObjectId sourceFolderId, IObjectId targetFolderId)
+ public virtual IFileableCmisObject Move(IObjectId sourceFolderId, IObjectId targetFolderId)
{
string objectId = ObjectId;
@@ -704,7 +745,7 @@ namespace PortCMIS.Client.Impl
}
}
- public void AddToFolder(IObjectId folderId, bool allVersions)
+ public virtual void AddToFolder(IObjectId folderId, bool allVersions)
{
if (folderId == null || folderId.Id == null)
{
@@ -714,7 +755,7 @@ namespace PortCMIS.Client.Impl
Binding.GetMultiFilingService().AddObjectToFolder(RepositoryId, ObjectId, folderId.Id, allVersions, null);
}
- public void RemoveFromFolder(IObjectId folderId)
+ public virtual void RemoveFromFolder(IObjectId folderId)
{
Binding.GetMultiFilingService().RemoveObjectFromFolder(RepositoryId, ObjectId, folderId == null ? null : folderId.Id, null);
}
@@ -732,35 +773,35 @@ namespace PortCMIS.Client.Impl
// properties
- public bool? IsImmutable { get { return GetPropertyAsBoolValue(PropertyIds.IsImmutable); } }
+ public virtual bool? IsImmutable { get { return GetPropertyAsBoolValue(PropertyIds.IsImmutable); } }
- public bool? IsLatestVersion { get { return GetPropertyAsBoolValue(PropertyIds.IsLatestVersion); } }
+ public virtual bool? IsLatestVersion { get { return GetPropertyAsBoolValue(PropertyIds.IsLatestVersion); } }
- public bool? IsMajorVersion { get { return GetPropertyAsBoolValue(PropertyIds.IsMajorVersion); } }
+ public virtual bool? IsMajorVersion { get { return GetPropertyAsBoolValue(PropertyIds.IsMajorVersion); } }
- public bool? IsLatestMajorVersion { get { return GetPropertyAsBoolValue(PropertyIds.IsLatestMajorVersion); } }
+ public virtual bool? IsLatestMajorVersion { get { return GetPropertyAsBoolValue(PropertyIds.IsLatestMajorVersion); } }
- public string VersionLabel { get { return GetPropertyAsStringValue(PropertyIds.VersionLabel); } }
+ public virtual string VersionLabel { get { return GetPropertyAsStringValue(PropertyIds.VersionLabel); } }
- public string VersionSeriesId { get { return GetPropertyAsStringValue(PropertyIds.VersionSeriesId); } }
+ public virtual string VersionSeriesId { get { return GetPropertyAsStringValue(PropertyIds.VersionSeriesId); } }
- public bool? IsVersionSeriesCheckedOut { get { return GetPropertyAsBoolValue(PropertyIds.IsVersionSeriesCheckedOut); } }
+ public virtual bool? IsVersionSeriesCheckedOut { get { return GetPropertyAsBoolValue(PropertyIds.IsVersionSeriesCheckedOut); } }
- public string VersionSeriesCheckedOutBy { get { return GetPropertyAsStringValue(PropertyIds.VersionSeriesCheckedOutBy); } }
+ public virtual string VersionSeriesCheckedOutBy { get { return GetPropertyAsStringValue(PropertyIds.VersionSeriesCheckedOutBy); } }
- public string VersionSeriesCheckedOutId { get { return GetPropertyAsStringValue(PropertyIds.VersionSeriesCheckedOutId); } }
+ public virtual string VersionSeriesCheckedOutId { get { return GetPropertyAsStringValue(PropertyIds.VersionSeriesCheckedOutId); } }
- public string CheckinComment { get { return GetPropertyAsStringValue(PropertyIds.CheckinComment); } }
+ public virtual string CheckinComment { get { return GetPropertyAsStringValue(PropertyIds.CheckinComment); } }
- public long? ContentStreamLength { get { return GetPropertyAsLongValue(PropertyIds.ContentStreamLength); } }
+ public virtual long? ContentStreamLength { get { return GetPropertyAsLongValue(PropertyIds.ContentStreamLength); } }
- public string ContentStreamMimeType { get { return GetPropertyAsStringValue(PropertyIds.ContentStreamMimeType); } }
+ public virtual string ContentStreamMimeType { get { return GetPropertyAsStringValue(PropertyIds.ContentStreamMimeType); } }
- public string ContentStreamFileName { get { return GetPropertyAsStringValue(PropertyIds.ContentStreamFileName); } }
+ public virtual string ContentStreamFileName { get { return GetPropertyAsStringValue(PropertyIds.ContentStreamFileName); } }
- public string ContentStreamId { get { return GetPropertyAsStringValue(PropertyIds.ContentStreamId); } }
+ public virtual string ContentStreamId { get { return GetPropertyAsStringValue(PropertyIds.ContentStreamId); } }
- public IList<IContentStreamHash> ContentStreamHashes
+ public virtual IList<IContentStreamHash> ContentStreamHashes
{
get
{
@@ -782,7 +823,7 @@ namespace PortCMIS.Client.Impl
// operations
- public IDocument Copy(IObjectId targetFolderId, IDictionary<string, object> properties, VersioningState? versioningState,
+ public virtual IDocument Copy(IObjectId targetFolderId, IDictionary<string, object> properties, VersioningState? versioningState,
IList<IPolicy> policies, IList<IAce> addAces, IList<IAce> removeAces, IOperationContext context)
{
@@ -803,19 +844,19 @@ namespace PortCMIS.Client.Impl
return newDoc;
}
- public IDocument Copy(IObjectId targetFolderId)
+ public virtual IDocument Copy(IObjectId targetFolderId)
{
return Copy(targetFolderId, null, null, null, null, null, Session.DefaultContext);
}
- public void DeleteAllVersions()
+ public virtual void DeleteAllVersions()
{
Delete(true);
}
// versioning
- public IObjectId CheckOut()
+ public virtual IObjectId CheckOut()
{
string newObjectId = null;
@@ -836,12 +877,12 @@ namespace PortCMIS.Client.Impl
return Session.CreateObjectId(newObjectId);
}
- public void CancelCheckOut()
+ public virtual void CancelCheckOut()
{
Binding.GetVersioningService().CancelCheckOut(RepositoryId, ObjectId, null);
}
- public IObjectId CheckIn(bool major, IDictionary<string, object> properties, IContentStream contentStream,
+ public virtual IObjectId CheckIn(bool major, IDictionary<string, object> properties, IContentStream contentStream,
string checkinComment, IList<IPolicy> policies, IList<IAce> addAces, IList<IAce> removeAces)
{
String newObjectId = null;
@@ -870,12 +911,12 @@ namespace PortCMIS.Client.Impl
return Session.CreateObjectId(newObjectId);
}
- public IList<IDocument> GetAllVersions()
+ public virtual IList<IDocument> GetAllVersions()
{
return GetAllVersions(Session.DefaultContext);
}
- public IList<IDocument> GetAllVersions(IOperationContext context)
+ public virtual IList<IDocument> GetAllVersions(IOperationContext context)
{
string objectId;
string versionSeriesId;
@@ -910,29 +951,29 @@ namespace PortCMIS.Client.Impl
return result;
}
- public IDocument GetObjectOfLatestVersion(bool major)
+ public virtual IDocument GetObjectOfLatestVersion(bool major)
{
return GetObjectOfLatestVersion(major, Session.DefaultContext);
}
- public IDocument GetObjectOfLatestVersion(bool major, IOperationContext context)
+ public virtual IDocument GetObjectOfLatestVersion(bool major, IOperationContext context)
{
return Session.GetLatestDocumentVersion(this, major, context);
}
// content operations
- public IContentStream GetContentStream()
+ public virtual IContentStream GetContentStream()
{
return GetContentStream(null);
}
- public IContentStream GetContentStream(string streamId)
+ public virtual IContentStream GetContentStream(string streamId)
{
return GetContentStream(streamId, null, null);
}
- public IContentStream GetContentStream(string streamId, long? offset, long? length)
+ public virtual IContentStream GetContentStream(string streamId, long? offset, long? length)
{
IContentStream contentStream = Session.GetContentStream(this, streamId, offset, length);
if (contentStream == null)
@@ -958,7 +999,7 @@ namespace PortCMIS.Client.Impl
return contentStream;
}
- public IDocument SetContentStream(IContentStream contentStream, bool overwrite)
+ public virtual IDocument SetContentStream(IContentStream contentStream, bool overwrite)
{
IObjectId objectId = SetContentStream(contentStream, overwrite, true);
if (objectId == null)
@@ -974,7 +1015,7 @@ namespace PortCMIS.Client.Impl
return this;
}
- public IObjectId SetContentStream(IContentStream contentStream, bool overwrite, bool refresh)
+ public virtual IObjectId SetContentStream(IContentStream contentStream, bool overwrite, bool refresh)
{
string newObjectId = null;
@@ -1001,7 +1042,7 @@ namespace PortCMIS.Client.Impl
return Session.CreateObjectId(newObjectId);
}
- public IDocument AppendContentStream(IContentStream contentStream, bool isLastChunk)
+ public virtual IDocument AppendContentStream(IContentStream contentStream, bool isLastChunk)
{
IObjectId objectId = AppendContentStream(contentStream, isLastChunk, true);
if (objectId == null)
@@ -1017,7 +1058,7 @@ namespace PortCMIS.Client.Impl
return this;
}
- public IObjectId AppendContentStream(IContentStream contentStream, bool isLastChunk, bool refresh)
+ public virtual IObjectId AppendContentStream(IContentStream contentStream, bool isLastChunk, bool refresh)
{
string newObjectId = null;
@@ -1044,7 +1085,7 @@ namespace PortCMIS.Client.Impl
return Session.CreateObjectId(newObjectId);
}
- public IDocument DeleteContentStream()
+ public virtual IDocument DeleteContentStream()
{
IObjectId objectId = DeleteContentStream(true);
if (objectId == null)
@@ -1060,7 +1101,7 @@ namespace PortCMIS.Client.Impl
return this;
}
- public IObjectId DeleteContentStream(bool refresh)
+ public virtual IObjectId DeleteContentStream(bool refresh)
{
string newObjectId = null;
@@ -1087,7 +1128,7 @@ namespace PortCMIS.Client.Impl
return Session.CreateObjectId(newObjectId);
}
- public IObjectId CheckIn(bool major, IDictionary<String, object> properties, IContentStream contentStream, string checkinComment)
+ public virtual IObjectId CheckIn(bool major, IDictionary<String, object> properties, IContentStream contentStream, string checkinComment)
{
return this.CheckIn(major, properties, contentStream, checkinComment, null, null, null);
}
@@ -1103,7 +1144,7 @@ namespace PortCMIS.Client.Impl
Initialize(session, objectType, objectData, context);
}
- public IDocument CreateDocument(IDictionary<string, object> properties, IContentStream contentStream, VersioningState? versioningState,
+ public virtual IDocument CreateDocument(IDictionary<string, object> properties, IContentStream contentStream, VersioningState? versioningState,
IList<IPolicy> policies, IList<IAce> addAces, IList<IAce> removeAces, IOperationContext context)
{
IObjectId newId = Session.CreateDocument(properties, this, contentStream, versioningState, policies, addAces, removeAces);
@@ -1124,7 +1165,7 @@ namespace PortCMIS.Client.Impl
return newDoc;
}
- public IDocument CreateDocumentFromSource(IObjectId source, IDictionary<string, object> properties, VersioningState? versioningState,
+ public virtual IDocument CreateDocumentFromSource(IObjectId source, IDictionary<string, object> properties, VersioningState? versioningState,
IList<IPolicy> policies, IList<IAce> addAces, IList<IAce> removeAces, IOperationContext context)
{
IObjectId newId = Session.CreateDocumentFromSource(source, properties, this, versioningState, policies, addAces, removeAces);
@@ -1145,7 +1186,7 @@ namespace PortCMIS.Client.Impl
return newDoc;
}
- public IFolder CreateFolder(IDictionary<string, object> properties, IList<IPolicy> policies, IList<IAce> addAces, IList<IAce> removeAces, IOperationContext context)
+ public virtual IFolder CreateFolder(IDictionary<string, object> properties, IList<IPolicy> policies, IList<IAce> addAces, IList<IAce> removeAces, IOperationContext context)
{
IObjectId newId = Session.CreateFolder(properties, this, policies, addAces, removeAces);
@@ -1165,7 +1206,7 @@ namespace PortCMIS.Client.Impl
return newFolder;
}
- public IPolicy CreatePolicy(IDictionary<string, object> properties, IList<IPolicy> policies, IList<IAce> addAces, IList<IAce> removeAces, IOperationContext context)
+ public virtual IPolicy CreatePolicy(IDictionary<string, object> properties, IList<IPolicy> policies, IList<IAce> addAces, IList<IAce> removeAces, IOperationContext context)
{
IObjectId newId = Session.CreatePolicy(properties, this, policies, addAces, removeAces);
@@ -1185,7 +1226,7 @@ namespace PortCMIS.Client.Impl
return newPolicy;
}
- public IItem CreateItem(IDictionary<string, object> properties, IList<IPolicy> policies, IList<IAce> addAces, IList<IAce> removeAces, IOperationContext context)
+ public virtual IItem CreateItem(IDictionary<string, object> properties, IList<IPolicy> policies, IList<IAce> addAces, IList<IAce> removeAces, IOperationContext context)
{
IObjectId newId = Session.CreateItem(properties, this, policies, addAces, removeAces);
@@ -1205,15 +1246,15 @@ namespace PortCMIS.Client.Impl
return newItem;
}
- public IList<string> DeleteTree(bool allVersions, UnfileObject? unfile, bool continueOnFailure)
+ public virtual IList<string> DeleteTree(bool allVersions, UnfileObject? unfile, bool continueOnFailure)
{
IFailedToDeleteData failed = Binding.GetObjectService().DeleteTree(RepositoryId, ObjectId, allVersions, unfile, continueOnFailure, null);
return failed.Ids;
}
- public string ParentId { get { return GetPropertyAsStringValue(PropertyIds.ParentId); } }
+ public virtual string ParentId { get { return GetPropertyAsStringValue(PropertyIds.ParentId); } }
- public IList<IObjectType> AllowedChildObjectTypes
+ public virtual IList<IObjectType> AllowedChildObjectTypes
{
get
{
@@ -1237,12 +1278,12 @@ namespace PortCMIS.Client.Impl
}
}
- public IItemEnumerable<IDocument> GetCheckedOutDocs()
+ public virtual IItemEnumerable<IDocument> GetCheckedOutDocs()
{
return GetCheckedOutDocs(Session.DefaultContext);
}
- public IItemEnumerable<IDocument> GetCheckedOutDocs(IOperationContext context)
+ public virtual IItemEnumerable<IDocument> GetCheckedOutDocs(IOperationContext context)
{
string objectId = ObjectId;
INavigationService service = Binding.GetNavigationService();
@@ -1278,12 +1319,12 @@ namespace PortCMIS.Client.Impl
return new CollectionEnumerable<IDocument>(new PageFetcher<IDocument>(ctxt.MaxItemsPerPage, fetchPageDelegate));
}
- public IItemEnumerable<ICmisObject> GetChildren()
+ public virtual IItemEnumerable<ICmisObject> GetChildren()
{
return GetChildren(Session.DefaultContext);
}
- public IItemEnumerable<ICmisObject> GetChildren(IOperationContext context)
+ public virtual IItemEnumerable<ICmisObject> GetChildren(IOperationContext context)
{
string objectId = ObjectId;
INavigationService service = Binding.GetNavigationService();
@@ -1315,12 +1356,12 @@ namespace PortCMIS.Client.Impl
return new CollectionEnumerable<ICmisObject>(new PageFetcher<ICmisObject>(ctxt.MaxItemsPerPage, fetchPageDelegate));
}
- public IList<ITree<IFileableCmisObject>> GetDescendants(int depth)
+ public virtual IList<ITree<IFileableCmisObject>> GetDescendants(int depth)
{
return GetDescendants(depth, Session.DefaultContext);
}
- public IList<ITree<IFileableCmisObject>> GetDescendants(int depth, IOperationContext context)
+ public virtual IList<ITree<IFileableCmisObject>> GetDescendants(int depth, IOperationContext context)
{
IList<IObjectInFolderContainer> bindingContainerList = Binding.GetNavigationService().GetDescendants(RepositoryId, ObjectId, depth,
context.FilterString, context.IncludeAllowableActions, context.IncludeRelationships, context.RenditionFilterString,
@@ -1329,12 +1370,12 @@ namespace PortCMIS.Client.Impl
return ConvertProviderContainer(bindingContainerList, context);
}
- public IList<ITree<IFileableCmisObject>> GetFolderTree(int depth)
+ public virtual IList<ITree<IFileableCmisObject>> GetFolderTree(int depth)
{
return GetFolderTree(depth, Session.DefaultContext);
}
- public IList<ITree<IFileableCmisObject>> GetFolderTree(int depth, IOperationContext context)
+ public virtual IList<ITree<IFileableCmisObject>> GetFolderTree(int depth, IOperationContext context)
{
IList<IObjectInFolderContainer> bindingContainerList = Binding.GetNavigationService().GetFolderTree(RepositoryId, ObjectId, depth,
context.FilterString, context.IncludeAllowableActions, context.IncludeRelationships, context.RenditionFilterString,
@@ -1381,9 +1422,9 @@ namespace PortCMIS.Client.Impl
return result;
}
- public bool IsRootFolder { get { return ObjectId == Session.RepositoryInfo.RootFolderId; } }
+ public virtual bool IsRootFolder { get { return ObjectId == Session.RepositoryInfo.RootFolderId; } }
- public IFolder FolderParent
+ public virtual IFolder FolderParent
{
get
{
@@ -1402,7 +1443,7 @@ namespace PortCMIS.Client.Impl
}
}
- public string Path
+ public virtual string Path
{
get
{
@@ -1452,27 +1493,27 @@ namespace PortCMIS.Client.Impl
}
}
- public IDocument CreateDocument(IDictionary<string, object> properties, IContentStream contentStream, VersioningState? versioningState)
+ public virtual IDocument CreateDocument(IDictionary<string, object> properties, IContentStream contentStream, VersioningState? versioningState)
{
return CreateDocument(properties, contentStream, versioningState, null, null, null, Session.DefaultContext);
}
- public IDocument CreateDocumentFromSource(IObjectId source, IDictionary<string, object> properties, VersioningState? versioningState)
+ public virtual IDocument CreateDocumentFromSource(IObjectId source, IDictionary<string, object> properties, VersioningState? versioningState)
{
return CreateDocumentFromSource(source, properties, versioningState, null, null, null, Session.DefaultContext);
}
- public IFolder CreateFolder(IDictionary<string, object> properties)
+ public virtual IFolder CreateFolder(IDictionary<string, object> properties)
{
return CreateFolder(properties, null, null, null, Session.DefaultContext);
}
- public IPolicy CreatePolicy(IDictionary<string, object> properties)
+ public virtual IPolicy CreatePolicy(IDictionary<string, object> properties)
{
return CreatePolicy(properties, null, null, null, Session.DefaultContext);
}
- public IItem CreateItem(IDictionary<string, object> properties)
+ public virtual IItem CreateItem(IDictionary<string, object> properties)
{
return CreateItem(properties, null, null, null, Session.DefaultContext);
}
@@ -1488,7 +1529,7 @@ namespace PortCMIS.Client.Impl
Initialize(session, objectType, objectData, context);
}
- public string PolicyText { get { return GetPropertyAsStringValue(PropertyIds.PolicyText); } }
+ public virtual string PolicyText { get { return GetPropertyAsStringValue(PropertyIds.PolicyText); } }
}
/// <summary>
@@ -1502,12 +1543,12 @@ namespace PortCMIS.Client.Impl
Initialize(session, objectType, objectData, context);
}
- public ICmisObject GetSource()
+ public virtual ICmisObject GetSource()
{
return GetSource(Session.DefaultContext);
}
- public ICmisObject GetSource(IOperationContext context)
+ public virtual ICmisObject GetSource(IOperationContext context)
{
lock (objectLock)
{
@@ -1521,7 +1562,7 @@ namespace PortCMIS.Client.Impl
}
}
- public IObjectId SourceId
+ public virtual IObjectId SourceId
{
get
{
@@ -1535,12 +1576,12 @@ namespace PortCMIS.Client.Impl
}
}
- public ICmisObject GetTarget()
+ public virtual ICmisObject GetTarget()
{
return GetTarget(Session.DefaultContext);
}
- public ICmisObject GetTarget(IOperationContext context)
+ public virtual ICmisObject GetTarget(IOperationContext context)
{
lock (objectLock)
{
@@ -1554,7 +1595,7 @@ namespace PortCMIS.Client.Impl
}
}
- public IObjectId TargetId
+ public virtual IObjectId TargetId
{
get
{
@@ -1683,12 +1724,12 @@ namespace PortCMIS.Client.Impl
RenditionDocumentId = renditionDocumentId;
}
- public IDocument GetRenditionDocument()
+ public virtual IDocument GetRenditionDocument()
{
return GetRenditionDocument(session.DefaultContext);
}
- public IDocument GetRenditionDocument(IOperationContext context)
+ public virtual IDocument GetRenditionDocument(IOperationContext context)
{
if (RenditionDocumentId == null)
{
@@ -1698,7 +1739,7 @@ namespace PortCMIS.Client.Impl
return session.GetObject(session.CreateObjectId(RenditionDocumentId), context) as IDocument;
}
- public IContentStream GetContentStream()
+ public virtual IContentStream GetContentStream()
{
if (objectId == null || StreamId == null)
{
@@ -1762,6 +1803,11 @@ namespace PortCMIS.Client.Impl
public QueryResult(ISession session, IObjectData objectData)
{
+ Initialize(session, objectData);
+ }
+
+ protected void Initialize(ISession session, IObjectData objectData)
+ {
if (objectData != null)
{
IObjectFactory of = session.ObjectFactory;
@@ -1908,23 +1954,23 @@ namespace PortCMIS.Client.Impl
public class ChangeEvent : ChangeEventInfo, IChangeEvent
{
- public string ObjectId { get; set; }
+ public virtual string ObjectId { get; set; }
- public IDictionary<string, IList<object>> Properties { get; set; }
+ public virtual IDictionary<string, IList<object>> Properties { get; set; }
- public IList<string> PolicyIds { get; set; }
+ public virtual IList<string> PolicyIds { get; set; }
- public IAcl Acl { get; set; }
+ public virtual IAcl Acl { get; set; }
}
public class ChangeEvents : IChangeEvents
{
- public string LatestChangeLogToken { get; set; }
+ public virtual string LatestChangeLogToken { get; set; }
- public IList<IChangeEvent> ChangeEventList { get; set; }
+ public virtual IList<IChangeEvent> ChangeEventList { get; set; }
- public bool? HasMoreItems { get; set; }
+ public virtual bool? HasMoreItems { get; set; }
- public BigInteger? TotalNumItems { get; set; }
+ public virtual BigInteger? TotalNumItems { get; set; }
}
}
Modified: chemistry/portcmis/trunk/PortCMIS/client/ClientTypes.cs
URL: http://svn.apache.org/viewvc/chemistry/portcmis/trunk/PortCMIS/client/ClientTypes.cs?rev=1696786&r1=1696785&r2=1696786&view=diff
==============================================================================
--- chemistry/portcmis/trunk/PortCMIS/client/ClientTypes.cs (original)
+++ chemistry/portcmis/trunk/PortCMIS/client/ClientTypes.cs Thu Aug 20 13:12:01 2015
@@ -90,15 +90,15 @@ namespace PortCMIS.Client.Impl
helper = new ObjectTypeHelper(session, this);
}
- public IObjectType GetBaseType() { return helper.GetBaseType(); }
+ public virtual IObjectType GetBaseType() { return helper.GetBaseType(); }
- public IItemEnumerable<IObjectType> GetChildren() { return helper.GetChildren(); }
+ public virtual IItemEnumerable<IObjectType> GetChildren() { return helper.GetChildren(); }
- public IList<ITree<IObjectType>> GetDescendants(int depth) { return helper.GetDescendants(depth); }
+ public virtual IList<ITree<IObjectType>> GetDescendants(int depth) { return helper.GetDescendants(depth); }
- public IObjectType GetParentType() { return helper.GetParentType(); }
+ public virtual IObjectType GetParentType() { return helper.GetParentType(); }
- public bool IsBaseType { get { return helper.IsBaseType; } }
+ public virtual bool IsBaseType { get { return helper.IsBaseType; } }
}
/// <summary>
@@ -114,15 +114,15 @@ namespace PortCMIS.Client.Impl
helper = new ObjectTypeHelper(session, this);
}
- public IObjectType GetBaseType() { return helper.GetBaseType(); }
+ public virtual IObjectType GetBaseType() { return helper.GetBaseType(); }
- public IItemEnumerable<IObjectType> GetChildren() { return helper.GetChildren(); }
+ public virtual IItemEnumerable<IObjectType> GetChildren() { return helper.GetChildren(); }
- public IList<ITree<IObjectType>> GetDescendants(int depth) { return helper.GetDescendants(depth); }
+ public virtual IList<ITree<IObjectType>> GetDescendants(int depth) { return helper.GetDescendants(depth); }
- public IObjectType GetParentType() { return helper.GetParentType(); }
+ public virtual IObjectType GetParentType() { return helper.GetParentType(); }
- public bool IsBaseType { get { return helper.IsBaseType; } }
+ public virtual bool IsBaseType { get { return helper.IsBaseType; } }
}
/// <summary>
@@ -140,17 +140,17 @@ namespace PortCMIS.Client.Impl
helper = new ObjectTypeHelper(session, this);
}
- public IObjectType GetBaseType() { return helper.GetBaseType(); }
+ public virtual IObjectType GetBaseType() { return helper.GetBaseType(); }
- public IItemEnumerable<IObjectType> GetChildren() { return helper.GetChildren(); }
+ public virtual IItemEnumerable<IObjectType> GetChildren() { return helper.GetChildren(); }
- public IList<ITree<IObjectType>> GetDescendants(int depth) { return helper.GetDescendants(depth); }
+ public virtual IList<ITree<IObjectType>> GetDescendants(int depth) { return helper.GetDescendants(depth); }
- public IObjectType GetParentType() { return helper.GetParentType(); }
+ public virtual IObjectType GetParentType() { return helper.GetParentType(); }
- public bool IsBaseType { get { return helper.IsBaseType; } }
+ public virtual bool IsBaseType { get { return helper.IsBaseType; } }
- public IList<IObjectType> GetAllowedSourceTypes
+ public virtual IList<IObjectType> GetAllowedSourceTypes
{
get
{
@@ -171,7 +171,7 @@ namespace PortCMIS.Client.Impl
}
}
- public IList<IObjectType> GetAllowedTargetTypes
+ public virtual IList<IObjectType> GetAllowedTargetTypes
{
get
{
@@ -206,15 +206,15 @@ namespace PortCMIS.Client.Impl
helper = new ObjectTypeHelper(session, this);
}
- public IObjectType GetBaseType() { return helper.GetBaseType(); }
+ public virtual IObjectType GetBaseType() { return helper.GetBaseType(); }
- public IItemEnumerable<IObjectType> GetChildren() { return helper.GetChildren(); }
+ public virtual IItemEnumerable<IObjectType> GetChildren() { return helper.GetChildren(); }
- public IList<ITree<IObjectType>> GetDescendants(int depth) { return helper.GetDescendants(depth); }
+ public virtual IList<ITree<IObjectType>> GetDescendants(int depth) { return helper.GetDescendants(depth); }
- public IObjectType GetParentType() { return helper.GetParentType(); }
+ public virtual IObjectType GetParentType() { return helper.GetParentType(); }
- public bool IsBaseType { get { return helper.IsBaseType; } }
+ public virtual bool IsBaseType { get { return helper.IsBaseType; } }
}
/// <summary>
@@ -230,15 +230,15 @@ namespace PortCMIS.Client.Impl
helper = new ObjectTypeHelper(session, this);
}
- public IObjectType GetBaseType() { return helper.GetBaseType(); }
+ public virtual IObjectType GetBaseType() { return helper.GetBaseType(); }
- public IItemEnumerable<IObjectType> GetChildren() { return helper.GetChildren(); }
+ public virtual IItemEnumerable<IObjectType> GetChildren() { return helper.GetChildren(); }
- public IList<ITree<IObjectType>> GetDescendants(int depth) { return helper.GetDescendants(depth); }
+ public virtual IList<ITree<IObjectType>> GetDescendants(int depth) { return helper.GetDescendants(depth); }
- public IObjectType GetParentType() { return helper.GetParentType(); }
+ public virtual IObjectType GetParentType() { return helper.GetParentType(); }
- public bool IsBaseType { get { return helper.IsBaseType; } }
+ public virtual bool IsBaseType { get { return helper.IsBaseType; } }
}
/// <summary>
@@ -254,14 +254,14 @@ namespace PortCMIS.Client.Impl
helper = new ObjectTypeHelper(session, this);
}
- public IObjectType GetBaseType() { return helper.GetBaseType(); }
+ public virtual IObjectType GetBaseType() { return helper.GetBaseType(); }
- public IItemEnumerable<IObjectType> GetChildren() { return helper.GetChildren(); }
+ public virtual IItemEnumerable<IObjectType> GetChildren() { return helper.GetChildren(); }
- public IList<ITree<IObjectType>> GetDescendants(int depth) { return helper.GetDescendants(depth); }
+ public virtual IList<ITree<IObjectType>> GetDescendants(int depth) { return helper.GetDescendants(depth); }
- public IObjectType GetParentType() { return helper.GetParentType(); }
+ public virtual IObjectType GetParentType() { return helper.GetParentType(); }
- public bool IsBaseType { get { return helper.IsBaseType; } }
+ public virtual bool IsBaseType { get { return helper.IsBaseType; } }
}
}