@@ -46,6 +46,8 @@ public class FileMetadata : Metadata
4646 /// field is the same rev as elsewhere in the API and can be used to detect changes and
4747 /// avoid conflicts.</param>
4848 /// <param name="size">The file size in bytes.</param>
49+ /// <param name="parentSharedFolderId">Set if this file or folder is contained in a
50+ /// shared folder.</param>
4951 /// <param name="id">A unique identifier for the file.</param>
5052 /// <param name="mediaInfo">Additional information if the file is a photo or
5153 /// video.</param>
@@ -55,15 +57,16 @@ public FileMetadata(string name,
5557 sys . DateTime serverModified ,
5658 string rev ,
5759 ulong size ,
60+ string parentSharedFolderId = null ,
5861 string id = null ,
5962 MediaInfo mediaInfo = null )
60- : base ( name , pathLower )
63+ : base ( name , pathLower , parentSharedFolderId )
6164 {
6265 if ( rev == null )
6366 {
6467 throw new sys . ArgumentNullException ( "rev" ) ;
6568 }
66- else if ( rev . Length < 9 || ! re . Regex . IsMatch ( rev , @"[0-9a-f]+" ) )
69+ else if ( rev . Length < 9 || ! re . Regex . IsMatch ( rev , @"\A [0-9a-f]+\z " ) )
6770 {
6871 throw new sys . ArgumentOutOfRangeException ( "rev" ) ;
6972 }
@@ -146,6 +149,10 @@ public override void EncodeFields(FileMetadata value, enc.IJsonWriter writer)
146149 WriteProperty ( "server_modified" , value . ServerModified , writer , enc . DateTimeEncoder . Instance ) ;
147150 WriteProperty ( "rev" , value . Rev , writer , enc . StringEncoder . Instance ) ;
148151 WriteProperty ( "size" , value . Size , writer , enc . UInt64Encoder . Instance ) ;
152+ if ( value . ParentSharedFolderId != null )
153+ {
154+ WriteProperty ( "parent_shared_folder_id" , value . ParentSharedFolderId , writer , enc . StringEncoder . Instance ) ;
155+ }
149156 if ( value . Id != null )
150157 {
151158 WriteProperty ( "id" , value . Id , writer , enc . StringEncoder . Instance ) ;
@@ -204,6 +211,9 @@ protected override void SetField(FileMetadata value, string fieldName, enc.IJson
204211 case "size" :
205212 value . Size = enc . UInt64Decoder . Instance . Decode ( reader ) ;
206213 break ;
214+ case "parent_shared_folder_id" :
215+ value . ParentSharedFolderId = enc . StringDecoder . Instance . Decode ( reader ) ;
216+ break ;
207217 case "id" :
208218 value . Id = enc . StringDecoder . Instance . Decode ( reader ) ;
209219 break ;
0 commit comments