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

ToLogString() public static method

public static ToLogString ( this obj ) : string
obj this
return string
        public static string ToLogString(this IFileableCmisObject obj) {
            if (obj == null) {
                return "null";
            }

            var sb = new StringBuilder(obj.ToString());
            sb.AppendLine(string.Format("ID:           {0}", obj.Id));
            sb.AppendLine(string.Format("Name:         {0}", obj.Name));
            sb.AppendLine(string.Format("ChangeToken:  {0}", obj.ChangeToken));
            if (obj.LastModificationDate != null) {
                DateTime date = obj.LastModificationDate.Value;
                sb.AppendLine(string.Format("LastModified: {0} Ticks", date.Ticks));
            } else {
                sb.AppendLine(string.Format("LastModified: {0}", obj.LastModificationDate));
            }
            sb.AppendLine(string.Format("ObjectType:   {0}", obj.ObjectType));
            sb.AppendLine(string.Format("BaseType:     {0}", obj.BaseType.DisplayName));
            if (obj is IFolder) {
                var folder = obj as IFolder;
                sb.AppendLine(string.Format("Path:         {0}", folder.Path));
                sb.AppendLine(string.Format("ParentId:     {0}", folder.ParentId));
            } else if (obj is IDocument) {
                var doc = obj as IDocument;
                sb.AppendLine(string.Format("StreamLength: {0}", doc.ContentStreamLength));
                sb.AppendLine(string.Format("MimeType:     {0}", doc.ContentStreamMimeType));
                sb.AppendLine(string.Format("StreamName:   {0}", doc.ContentStreamFileName));
            }

            foreach (var prop in obj.Properties) {
                sb.AppendLine(string.Format("Property {0}: {1}", prop.DisplayName, prop.ValuesAsString));
            }

            return sb.ToString();
        }