<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Capturing serverModified into a variable in Swift in Dropbox API Support &amp; Feedback</title>
    <link>https://www.dropboxforum.com/t5/Dropbox-API-Support-Feedback/Capturing-serverModified-into-a-variable-in-Swift/m-p/322645#M18959</link>
    <description>&lt;P&gt;Here's the&amp;nbsp;recommended way to get the serverModified out of a Metadata object given by filesGetMetadata:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;client!.files.getMetadata(path: path)
    .response {response, error in
        if let (metadata) = response {
            switch metadata {
                case let fileMetadata as Files.FileMetadata:
                    print("File metadata: \(fileMetadata)")
&lt;STRONG&gt;                    let serverModified = fileMetadata.serverModified
&lt;/STRONG&gt;                    print("File serverModified: \(serverModified)")
                case let folderMetadata as Files.FolderMetadata:
                    print("Folder metadata: \(folderMetadata)")
                    // folders don't have serverModified
                case let deletedMetadata as Files.DeletedMetadata:
                    print("Deleted entity's metadata: \(deletedMetadata)")
                    // deleted entries don't have serverModified
                default:
                    print("default")
            }
        }
        else if let error = error {
            print(error)
        }
}&lt;/PRE&gt;
&lt;P&gt;This method can return metadata for files, folders, or deleted items, so you need to check the type first, done here using the switch, since the latter two don't have serverModified.&lt;/P&gt;
&lt;P&gt;Hope this helps!&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 11 Jan 2019 15:31:27 GMT</pubDate>
    <dc:creator>Greg-DB</dc:creator>
    <dc:date>2019-01-11T15:31:27Z</dc:date>
    <item>
      <title>Capturing serverModified into a variable in Swift</title>
      <link>https://www.dropboxforum.com/t5/Dropbox-API-Support-Feedback/Capturing-serverModified-into-a-variable-in-Swift/m-p/322637#M18958</link>
      <description>&lt;P&gt;I'm new to Swift, and this is my first iOS application.&amp;nbsp; In fact, I'm fairly new to OO programming.&amp;nbsp; My background is mainframe z/OS.&amp;nbsp; So...&lt;/P&gt;&lt;P&gt;I needed to capture&amp;nbsp;serverModified&amp;nbsp;date in a field.&amp;nbsp; After much googling and trial and error, I finally made the code to parse it out of the MetaData.&amp;nbsp; It works, but is there a slicker way to do this?&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;&lt;P&gt;Here is the code I used to do it:&lt;/P&gt;&lt;PRE&gt;let dispatchGroup = DispatchGroup()&lt;BR /&gt;.&lt;BR /&gt;.&lt;BR /&gt;.&lt;/PRE&gt;&lt;PRE&gt;        
        // Check to see if Nvelopes.csv exists in Dropbox and get the servermodified date.

        dispatchGroup.enter()
        client!.files.getMetadata(path: "/Nvelopes.csv")
            .response {response, error in
                if let (metadataNvelopes) = response
                {
                    let nsstringMetadataNvelopes = NSString(string: metadataNvelopes.description)
                    var serverModifiedSeparator = "\"server_modified\" = \""
                    let serverModifiedArray = nsstringMetadataNvelopes.components(separatedBy: serverModifiedSeparator)
                    
                    if serverModifiedArray.count &amp;gt; 0 {
                        print("serverModifiedArray begin")
                        print(serverModifiedArray[0])
                        print(serverModifiedArray[1])
                        print("serverModifiedArray end")
                        serverModifiedSeparator = "\";"
                        let ServerModifiedArray = serverModifiedArray[1].components(separatedBy: serverModifiedSeparator)
                        let serverModified = ServerModifiedArray[0]
                        print("serverModified:" , serverModified)
                        
                    }

                    dispatchGroup.leave()

                } else if let error = error {
                    print("Did not find Nvelopes.csv in Dropbox:")
                    print(error.description)
                    dispatchGroup.leave()
                }&lt;/PRE&gt;</description>
      <pubDate>Wed, 29 May 2019 09:08:28 GMT</pubDate>
      <guid>https://www.dropboxforum.com/t5/Dropbox-API-Support-Feedback/Capturing-serverModified-into-a-variable-in-Swift/m-p/322637#M18958</guid>
      <dc:creator>RJKinsman</dc:creator>
      <dc:date>2019-05-29T09:08:28Z</dc:date>
    </item>
    <item>
      <title>Re: Capturing serverModified into a variable in Swift</title>
      <link>https://www.dropboxforum.com/t5/Dropbox-API-Support-Feedback/Capturing-serverModified-into-a-variable-in-Swift/m-p/322645#M18959</link>
      <description>&lt;P&gt;Here's the&amp;nbsp;recommended way to get the serverModified out of a Metadata object given by filesGetMetadata:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;client!.files.getMetadata(path: path)
    .response {response, error in
        if let (metadata) = response {
            switch metadata {
                case let fileMetadata as Files.FileMetadata:
                    print("File metadata: \(fileMetadata)")
&lt;STRONG&gt;                    let serverModified = fileMetadata.serverModified
&lt;/STRONG&gt;                    print("File serverModified: \(serverModified)")
                case let folderMetadata as Files.FolderMetadata:
                    print("Folder metadata: \(folderMetadata)")
                    // folders don't have serverModified
                case let deletedMetadata as Files.DeletedMetadata:
                    print("Deleted entity's metadata: \(deletedMetadata)")
                    // deleted entries don't have serverModified
                default:
                    print("default")
            }
        }
        else if let error = error {
            print(error)
        }
}&lt;/PRE&gt;
&lt;P&gt;This method can return metadata for files, folders, or deleted items, so you need to check the type first, done here using the switch, since the latter two don't have serverModified.&lt;/P&gt;
&lt;P&gt;Hope this helps!&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 11 Jan 2019 15:31:27 GMT</pubDate>
      <guid>https://www.dropboxforum.com/t5/Dropbox-API-Support-Feedback/Capturing-serverModified-into-a-variable-in-Swift/m-p/322645#M18959</guid>
      <dc:creator>Greg-DB</dc:creator>
      <dc:date>2019-01-11T15:31:27Z</dc:date>
    </item>
    <item>
      <title>Re: Capturing serverModified into a variable in Swift</title>
      <link>https://www.dropboxforum.com/t5/Dropbox-API-Support-Feedback/Capturing-serverModified-into-a-variable-in-Swift/m-p/322649#M18963</link>
      <description>&lt;P&gt;Thanks, Greg!&amp;nbsp; So much&amp;nbsp;cleaner!&lt;/P&gt;</description>
      <pubDate>Fri, 11 Jan 2019 15:34:01 GMT</pubDate>
      <guid>https://www.dropboxforum.com/t5/Dropbox-API-Support-Feedback/Capturing-serverModified-into-a-variable-in-Swift/m-p/322649#M18963</guid>
      <dc:creator>RJKinsman</dc:creator>
      <dc:date>2019-01-11T15:34:01Z</dc:date>
    </item>
  </channel>
</rss>

