CmisSync.Lib.Cmis.ConvenienceExtenders.CmisConvenienceExtenders.IsServerAbleToUpdateModificationDate C# (CSharp) Method

IsServerAbleToUpdateModificationDate() public static method

Determines if is server able to update modification date.
public static IsServerAbleToUpdateModificationDate ( this session ) : bool
session this Cmis session.
return bool
        public static bool IsServerAbleToUpdateModificationDate(this ISession session) {
            bool result = false;
            var docType = session.Binding.GetRepositoryService().GetTypeDefinition(session.RepositoryInfo.Id, BaseTypeId.CmisDocument.GetCmisValue(), null);
            foreach (var prop in docType.PropertyDefinitions) {
                if (prop.Id == PropertyIds.LastModificationDate && prop.Updatability == DotCMIS.Enums.Updatability.ReadWrite) {
                    result = true;
                    break;
                }
            }

            if (result) {
                var folderType = session.Binding.GetRepositoryService().GetTypeDefinition(session.RepositoryInfo.Id, BaseTypeId.CmisFolder.GetCmisValue(), null);
                foreach (var prop in folderType.PropertyDefinitions) {
                    if (prop.Id == PropertyIds.LastModificationDate && prop.Updatability != DotCMIS.Enums.Updatability.ReadWrite) {
                        result = false;
                        break;
                    }
                }
            }

            return result;
        }