Commit Graph

96 Commits

Author SHA1 Message Date
Jawwad Ahmad
ad7da9054f Add RKLogConfigureFromEnvironment() to RKLog.m.
Added a new RKLogConfigureFromEnvironment() function to RKLog.m to allow the configuration of logging components and logging levels via environment variables. Closes #640.
2012-04-04 13:27:25 -04:00
Blake Watters
2723a11294 Reorganized categories under RKAdditions naming convention. Expanded documentation. 2012-04-04 09:08:55 -04:00
Blake Watters
457a6126cf Refresh copyright notices for all source files 2012-04-04 09:08:54 -04:00
Blake Watters
59eec38f6e Updated RKDirectory with method for ensuring existence of directories. RKTestEnvironment
now ensures the Caches and Application Data directories exist at test initialization.
Enables test suite to run from command line or with a CI environment. refs #293
2012-04-03 23:39:43 -04:00
Blake Watters
0d709dbc07 Migrate dangling invocations of NSLog -> RKLog. refs #578 2012-03-20 20:43:14 -04:00
Blake Watters
868372272f Ported RestKit tests over to using the RKTestFactory and completed documentation. fixes #318 2012-03-15 23:06:49 -04:00
Blake Watters
6efa73fa25 Fixed issues with accessing RestKitResources.bundle from within unit tests 2012-03-15 16:44:01 -04:00
Blake Watters
9732ffa257 Appledoc update for RKParser 2012-03-15 00:21:03 -04:00
Blake Watters
450f31d3b3 Documentation for RKOrderedDictionary 2012-03-15 00:21:03 -04:00
Blake Watters
d63b3d4752 Documentation for RKSearchEngine 2012-03-15 00:21:03 -04:00
Blake Watters
eeecff7bd0 Added support for loading resolution independent images ([UIImage imageWithContentsOfFile:] is broken) via UIImage
category and updated NSBundle additions to leverage the support.
2012-03-09 17:48:50 -05:00
Blake Watters
5ae94287e9 Added NSBundle helpers to Support.h. Introduced convenience method for retrieving reference to RestKitResources.bundle 2012-03-09 17:48:50 -05:00
Blake Watters
6723502372 Merge branch 'hotfix/545-conditional-nsorderedset' into development 2012-02-25 12:03:48 -05:00
Blake Watters
161ea6aa95 Conditionally compile RKDotNetDateFormatter.h for iOS > 4.0 and OS X > 10.6. fixes #378, refs #568 2012-02-25 11:42:44 -05:00
Blake Watters
caf5186cb9 Remove unnecessary warning when arguments dictionary is nil 2012-02-24 12:19:00 -05:00
Blake Watters
4d48ef4729 Fixed breakage in OS X support 2012-02-15 17:48:59 -05:00
Blake Watters
4142ffdb42 Reorganization and cleanups of Unit Tests
* Reorganized tests to accommodate split into Logic & Application.
* Eliminated 'Spec' naming in favor of 'Test' as the suite is entirely based on SenTest.
* Pulled majority of testing support classes up into the library and documented them.
* Introduced RKApplicationTests app for running the RKTableController UI tests
2012-02-10 17:32:23 -05:00
Blake Watters
3d0f0ab39e Introduced the RKTableController component for iOS.
RKTableController provides a flexible, integrated system for driving iOS table views using
the RestKit object mapping engine. Local domain objects can be mapped into table cells within a
collection or presented for editing as part of a form. There are three flavors of table controllers
available:

* Static Tables: RKTableController can be used to render simple static tables that are composed of RKTableItems
presented in RKTableSections. Table items can quickly be built and added to a table without a backing model
or can have content object mapped into them for presentation.
* Network Tables: RKTableController can also render a table with the results of a network load. The typical use
case here is to have RestKit retrieve a JSON/XML payload from your remote system and then render the content into
a table.
* Core Data Tables: RKFetchedResultsTableController can efficiently drive a table view using objects pulled from a
Core Data managed object context. Typical use-cases here are for the presentation of large collections that are
pulled from a remote system, offering offline access, or speeding up a UI by using Core Data as a fast local cache.

RKTableController supports a number of bells and whistles including integrated searching/filtering and pull to refresh.
2012-02-10 16:30:54 -05:00
Christopher Swasey
b3c5ba62d2 Replace the XMLParser with one based on Insert-Witty-Name/XMLReader 2012-01-24 12:01:47 -05:00
Christopher Swasey
886ec75283 Import http://boredzo.org/iso8601parser/ and add it as a defaultDateFormatter for parsing ISO8601 strings. Fixes #438 2012-01-20 15:13:45 -05:00
Jeff Arena
fa44916184 Merge pull request #505 from spenrose/xml-attributes-bug
This fixes a bug where attributes of a object would also get added to parent object.
2012-01-20 08:36:51 -08:00
Blake Watters
5a92a661a8 Fix spelling errors for Cacheing -> Caching 2012-01-20 10:21:56 -05:00
Blake Watters
3a8221aa08 Added support for configuring and retrieving object mapping via resource path patterns. 2012-01-20 10:21:19 -05:00
Blake Watters
412b0f9756 Work in progress on cleanup 2012-01-20 10:21:18 -05:00
Marlon Andrade
377d350259 adding treatment for dates before jan 1st 1970 2012-01-20 09:36:22 -05:00
Brian Morton
035e7732b8 Add RKRequestConnectionTimeoutError to throw when our connection timeout has been exceeded. 2012-01-20 09:20:09 -05:00
Scott Penrose
c6fd924b73 This fixes a bug where attributes of a object would also get added to parent object.
XML to parse
```
<exchange_rate type="XML_RATE_TYPE_EBNK_MIDDLE" valid_from="2011-08-03 00:00:00.0">
    <currency name="AUD" quota="1" rate="18.416"/>
    <currency name="HRK" quota="1" rate="3.25017"/>
    <currency name="DKK" quota="1" rate="3.251"/>
</exchange_rate>
```

BEFORE FIX
```
<CFBasicHash 0xab93140 [0x520b38]>{type = mutable dict, count = 1,
entries =>
	0 : <CFString 0xabacac0 [0x520b38]>{contents = "exchange_rate"} = <CFBasicHash 0xaba99e0 [0x520b38]>{type = mutable dict, count = 6,
entries =>
	0 : <CFString 0xabc1e40 [0x520b38]>{contents = "currency"} = (
        {
        name = AUD;
        quota = 1;
        rate = "18.416";
    },
        {
        name = HRK;
        quota = 1;
        rate = "3.25017";
    },
        {
        name = DKK;
        quota = 1;
        rate = "3.251";
    }
)
	1 : <CFString 0xaba9940 [0x520b38]>{contents = "name"} = <CFString 0xaba9960 [0x520b38]>{contents = "DKK"}
	2 : <CFString 0xaba9990 [0x520b38]>{contents = "rate"} = <CFString 0xaba99c0 [0x520b38]>{contents = "3.251"}
	3 : <CFString 0xaba9980 [0x520b38]>{contents = "quota"} = <CFString 0xaba99a0 [0x520b38]>{contents = "1"}
	4 : <CFString 0xab93180 [0x520b38]>{contents = "type"} = <CFString 0xab931b0 [0x520b38]>{contents = "XML_RATE_TYPE_EBNK_MIDDLE"}
	5 : <CFString 0xab93190 [0x520b38]>{contents = "valid_from"} = <CFString 0xab93220 [0x520b38]>{contents = "2011-08-03 00:00:00.0"}
}

}
```

AFTER FIX
```
<CFBasicHash 0xa689830 [0x520b38]>{type = mutable dict, count = 1,
entries =>
	0 : <CFString 0xa6816a0 [0x520b38]>{contents = "exchange_rate"} = <CFBasicHash 0xa6897c0 [0x520b38]>{type = mutable dict, count = 3,
entries =>
	0 : <CFString 0xa692100 [0x520b38]>{contents = "valid_from"} = <CFString 0xa692190 [0x520b38]>{contents = "2011-08-03 00:00:00.0"}
	1 : <CFString 0xa680860 [0x520b38]>{contents = "currency"} = (
        {
        name = AUD;
        quota = 1;
        rate = "18.416";
    },
        {
        name = HRK;
        quota = 1;
        rate = "3.25017";
    },
        {
        name = DKK;
        quota = 1;
        rate = "3.251";
    }
)
	2 : <CFString 0xa6920f0 [0x520b38]>{contents = "type"} = <CFString 0xa692120 [0x520b38]>{contents = "XML_RATE_TYPE_EBNK_MIDDLE"}
}

}
```
2012-01-14 17:12:17 -05:00
Blake Watters
4a45a15da1 Fixed nearly all broken tests for OS X target 2011-12-09 00:30:34 -05:00
Blake Watters
479864902b Fixed all build warnings on OS X Framework target 2011-12-08 23:23:20 -05:00
Blake Watters
8ca1a5bd99 Remove relative import paths from Parsers 2011-12-02 09:27:23 -05:00
Blake Watters
563f5e909b Updated all example projects to build against the new project. Cleaned up header imports for flattened project structure 2011-12-02 09:26:36 -05:00
Blake Watters
5b718890ac Checking in work in progress on the library reorganization 2011-12-02 09:26:35 -05:00
Blake Watters
fd80eae643 Reworked reachability initialization to support usage when there is no Internet connectivity.
* When the reachabilityObserver property of RKClient is nil, assume we have reachability
* When the baseURL configured contains an IP address or localhost, use hostname based reachability
* Else fall through to using Internet reachability if the user has not configured an observer directly
2011-11-09 08:17:46 -05:00
Blake Watters
c45d3b2d33 Implemented example application building RestKit into a CLI utility for parsing files and evaluating keyPaths against the results. refs #409 2011-10-16 02:37:22 -04:00
Blake Watters
585d4aafc8 Implemented MIMETypeForPathExtension for NSURL and NSString. refs #409
Refactored duplicated code for returning the MIME Type based on file path extension using
Core Services UTI.
2011-10-16 02:06:58 -04:00
Blake Watters
0e08147d5b Updated RKAlert to build in cases where NSAlert and UIAlert are not available (i.e. CLI app). refs #409 2011-10-16 01:17:17 -04:00
Blake Watters
214efd31d5 Fix issue with incorrectly built OAuth 1.0 invocation of TDOAuth. fixes #396
Began cleanup of some category methods to eliminate duplicated functionality across the library.
2011-10-12 09:55:38 -04:00
Blake Watters
2823d60ba7 Added new RKLog helpers for changing the log level during the execution of a block. Very helpful for debugging. closes #387 2011-10-01 11:10:24 -04:00
Blake Watters
19738ff61f Update outdated comments in the XML parser header 2011-09-26 20:05:22 -04:00
Blake Watters
30b08ba85b Added default parser registration for text/xml MIME Type. fixes #370 2011-09-23 09:49:54 -04:00
Blake Watters
e535f3abf0 Removed unnecessary InflectionSupport 2011-09-20 12:36:39 -04:00
Greg Combs
c49310162e RKPathMatcher can now accommodate non-KVM dots that follow parameter keys in the pattern. Where /:filename.json would fail before, we use special escapes like /:filename\.json ... this fixes #349. Thanks @jverkoey for the fix and @coryalder for the catch. 2011-09-16 15:35:27 -05:00
Greg Combs
62d7042ebc Merge pull request #334 from parkerboundy/add-apache-license
Add the Apache License to headers (Issue #145) Closes #145.  Thanks @parkerboundy.
2011-09-14 21:56:15 -07:00
Blake Watters
b946fc3cd9 Small header file changes for Appledoc output changes 2011-09-13 13:13:11 -04:00
Greg Combs
fc5f2b38be Minor cleanup of some whitespace after recent feature pull requests 2011-09-13 01:30:43 -05:00
Greg Combs
6dd1e8da40 Now gracefully handles escaping interpolated resource paths in RKRouter, RKMakePathWithObject, and RKPathMatcher. By adding an encoding handler to SOCKit, we now (by default, but optionally) add percent escapes to each object's property value while it's being interpolated into a resource path pattern, like /stuff/things/:others?apikey=:apikey ... that way it won't brutally mangle the slashes and question marks and ampersands that exist in the resource path pattern, while at the same time properly escaping those same characters when they occur inside the object's property value. Closes #221 2011-09-13 00:50:55 -05:00
Greg Combs
2bd113fd42 Added two static initializers to RKDotNetDateFormatter and amended the specs. 2011-09-09 09:51:35 -05:00
Greg Combs
9ce25f5689 Added RKDotNetDateFormatter to translate back and forth between NSDate and strings like /Date(1234567890123-0500)/ Also includes header docs and specs. Fixes #264 2011-09-09 03:26:46 -05:00
Parker
990ab16a6b Added Apache License to files in Support directory
Didn't add license to: NSString+InflectionSupport.h,
NSString+InflectionSupport.m, RKParser.h
2011-09-07 12:02:29 -04:00
Parker
a58eb6dcf2 Added Apache License to files in Support/Parsers directory 2011-09-07 11:58:16 -04:00