<?xml version="1.0" encoding="UTF-8"?>
<ticket>
  <assigned-user-id type="integer" nil="true"></assigned-user-id>
  <attachments-count type="integer">1</attachments-count>
  <closed type="boolean">false</closed>
  <created-at type="datetime">2008-09-15T21:48:15-10:00</created-at>
  <creator-id type="integer">32091</creator-id>
  <milestone-due-on type="datetime" nil="true"></milestone-due-on>
  <milestone-id type="integer" nil="true"></milestone-id>
  <number type="integer">42</number>
  <permalink>missing-functionality-plist-readwrite</permalink>
  <priority type="integer">27773</priority>
  <project-id type="integer">16499</project-id>
  <raw-data type="binary" nil="true" encoding="base64"></raw-data>
  <state>new</state>
  <tag>@new-features @working-on cparray cpdictionary patch plist</tag>
  <title>Missing functionality: plist read/write</title>
  <updated-at type="datetime">2009-03-24T23:09:37-10:00</updated-at>
  <user-id type="integer">27416</user-id>
  <user-name>Ross Boucher</user-name>
  <creator-name>Mala</creator-name>
  <url>http://cappuccino.lighthouseapp.com/projects/16499/tickets/42</url>
  <original-body>Everything is in title. ;) 

Add initWithContentsOfURL:, initWithContentsOfFile:, writeToFile:atomically: and writeToURL:atomically: in CPArray and CPDictionary would be very useful.</original-body>
  <latest-body>Everything is in title. ;) 

Add initWithContentsOfURL:, initWithContentsOfFile:, writeToFile:atomically: and writeToURL:atomically: in CPArray and CPDictionary would be very useful.</latest-body>
  <original-body-html>&lt;div&gt;&lt;p&gt;Everything is in title. ;)&lt;/p&gt;
&lt;p&gt;Add initWithContentsOfURL:, initWithContentsOfFile:,
writeToFile:atomically: and writeToURL:atomically: in CPArray and
CPDictionary would be very useful.&lt;/p&gt;&lt;/div&gt;</original-body-html>
  <versions type="array">
    <version type="Ticket::Version">
      <assigned-user-id type="integer" nil="true"></assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Everything is in title. ;) 

Add initWithContentsOfURL:, initWithContentsOfFile:, writeToFile:atomically: and writeToURL:atomically: in CPArray and CPDictionary would be very useful.</body>
      <body-html>&lt;div&gt;&lt;p&gt;Everything is in title. ;)&lt;/p&gt;
&lt;p&gt;Add initWithContentsOfURL:, initWithContentsOfFile:,
writeToFile:atomically: and writeToURL:atomically: in CPArray and
CPDictionary would be very useful.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2008-09-15T21:48:16-10:00</created-at>
      <creator-id type="integer">32091</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer" nil="true"></milestone-id>
      <number type="integer">42</number>
      <permalink>missing-functionality-plist-readwrite</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16499</project-id>
      <state>new</state>
      <tag>cparray cpdictionary plist</tag>
      <title>Missing functionality: plist read/write</title>
      <updated-at type="datetime">2008-09-15T21:48:16-10:00</updated-at>
      <user-id type="integer">32091</user-id>
      <user-name>Mala</user-name>
      <creator-name>Mala</creator-name>
      <url>http://cappuccino.lighthouseapp.com/projects/16499/tickets/42</url>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer" nil="true"></assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>initWithContentsOfURL implemented for CPDictionary in the attached patch. I suppose there's no use for initWithContentsOfFile in cappuccino, tell me if I'm wrong.</body>
      <body-html>&lt;div&gt;&lt;p&gt;initWithContentsOfURL implemented for CPDictionary in the
attached patch. I suppose there's no use for initWithContentsOfFile
in cappuccino, tell me if I'm wrong.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-04T00:20:32-10:00</created-at>
      <creator-id type="integer">32091</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer" nil="true"></milestone-id>
      <number type="integer">42</number>
      <permalink>missing-functionality-plist-readwrite</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16499</project-id>
      <state>new</state>
      <tag>cparray cpdictionary plist</tag>
      <title>Missing functionality: plist read/write</title>
      <updated-at type="datetime">2009-02-04T00:20:37-10:00</updated-at>
      <user-id type="integer">46170</user-id>
      <user-name>Farcaller</user-name>
      <creator-name>Mala</creator-name>
      <url>http://cappuccino.lighthouseapp.com/projects/16499/tickets/42</url>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer" nil="true"></assigned-user-id>
      <attachments-count type="integer">1</attachments-count>
      <body>We could just alias initWithContentsOfFile to initWithContentsOfURL. Is there a reason for puting the logic in the class method rather than the init? 

It would be great to see this finished up for CPArray, and with the writeTo methods (which should just send a PUT request to the URL with the contents of the plist as the body.

It would also be interesting to see asynchronous versions of these, since synchronous requests are, generally, a terrible idea in the browser.</body>
      <body-html>&lt;div&gt;&lt;p&gt;We could just alias initWithContentsOfFile to
initWithContentsOfURL. Is there a reason for puting the logic in
the class method rather than the init?&lt;/p&gt;
&lt;p&gt;It would be great to see this finished up for CPArray, and with
the writeTo methods (which should just send a PUT request to the
URL with the contents of the plist as the body.&lt;/p&gt;
&lt;p&gt;It would also be interesting to see asynchronous versions of
these, since synchronous requests are, generally, a terrible idea
in the browser.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-03-24T23:09:35-10:00</created-at>
      <creator-id type="integer">32091</creator-id>
      <diffable-attributes type="yaml">--- 
:tag: cparray cpdictionary plist
</diffable-attributes>
      <milestone-id type="integer" nil="true"></milestone-id>
      <number type="integer">42</number>
      <permalink>missing-functionality-plist-readwrite</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">16499</project-id>
      <state>new</state>
      <tag>@new-features @working-on cparray cpdictionary patch plist</tag>
      <title>Missing functionality: plist read/write</title>
      <updated-at type="datetime">2009-03-24T23:09:37-10:00</updated-at>
      <user-id type="integer">27416</user-id>
      <user-name>Ross Boucher</user-name>
      <creator-name>Mala</creator-name>
      <url>http://cappuccino.lighthouseapp.com/projects/16499/tickets/42</url>
    </version>
  </versions>
  <attachments type="array">
    <attachment type="Attachment">
      <code>fdb0a4ff121dcb2d66b88484db94860ceb5ea093</code>
      <content-type>text/plain</content-type>
      <created-at type="datetime">2009-02-04T00:20:32-10:00</created-at>
      <filename>cpdict-plist-read.patch</filename>
      <height type="integer" nil="true"></height>
      <id type="integer">84892</id>
      <size type="integer">2123</size>
      <uploader-id type="integer">46170</uploader-id>
      <width type="integer" nil="true"></width>
      <url>http://cappuccino.lighthouseapp.com/attachments/84892/cpdict-plist-read.patch</url>
    </attachment>
  </attachments>
</ticket>
