Commits

Ronald Oussoren committed 670bb97

First attempt at StoreKit bindings

  • Participants
  • Parent commits 996eb90

Comments (0)

Files changed (12)

File pyobjc-framework-StoreKit/Doc/api-notes-StoreKit.txt

+API Notes: StoreKit framework
+================================
+
+API Notes
+---------
+
+The StoreKit bindings are barely tested at this time.

File pyobjc-framework-StoreKit/Lib/StoreKit/_metadata.py

+# This file is generated by objective.metadata
+#
+# Last update: Mon Mar 18 09:12:16 2013
+
+import objc, sys
+
+if sys.maxsize > 2 ** 32:
+    def sel32or64(a, b): return b
+else:
+    def sel32or64(a, b): return a
+if sys.byteorder == 'little':
+    def littleOrBig(a, b): return a
+else:
+    def littleOrBig(a, b): return b
+
+misc = {
+}
+constants = '''$SKErrorDomain$'''
+enums = '''$SKDownloadStateActive@1$SKDownloadStateCancelled@5$SKDownloadStateFailed@4$SKDownloadStateFinished@3$SKDownloadStatePaused@2$SKDownloadStateWaiting@0$SKErrorClientInvalid@1$SKErrorPaymentCancelled@2$SKErrorPaymentInvalid@3$SKErrorPaymentNotAllowed@4$SKErrorUnknown@0$SKPaymentTransactionStateFailed@2$SKPaymentTransactionStatePurchased@1$SKPaymentTransactionStatePurchasing@0$SKPaymentTransactionStateRestored@3$'''
+misc.update({})
+r = objc.registerMetaDataForSelector
+objc._updatingMetadata(True)
+try:
+    r(b'SKPaymentQueue', b'canMakePayments', {'retval': {'type': b'Z'}})
+    r(b'SKProduct', b'downloadable', {'retval': {'type': b'Z'}})
+finally:
+    objc._updatingMetadata(False)
+r = objc.registerMetaDataForSelector
+objc._updatingMetadata(True)
+try:
+    r(b'NSObject', b'paymentQueue:removedTransactions:', {'required': False, 'retval': {'type': b'v'}, 'arguments': {2: {'type': b'@'}, 3: {'type': b'@'}}})
+    r(b'NSObject', b'paymentQueue:restoreCompletedTransactionsFailedWithError:', {'required': False, 'retval': {'type': b'v'}, 'arguments': {2: {'type': b'@'}, 3: {'type': b'@'}}})
+    r(b'NSObject', b'paymentQueue:updatedDownloads:', {'required': False, 'retval': {'type': b'v'}, 'arguments': {2: {'type': b'@'}, 3: {'type': b'@'}}})
+    r(b'NSObject', b'paymentQueue:updatedTransactions:', {'required': True, 'retval': {'type': b'v'}, 'arguments': {2: {'type': b'@'}, 3: {'type': b'@'}}})
+    r(b'NSObject', b'paymentQueueRestoreCompletedTransactionsFinished:', {'required': False, 'retval': {'type': b'v'}, 'arguments': {2: {'type': b'@'}}})
+    r(b'NSObject', b'productsRequest:didReceiveResponse:', {'required': True, 'retval': {'type': b'v'}, 'arguments': {2: {'type': b'@'}, 3: {'type': b'@'}}})
+    r(b'NSObject', b'request:didFailWithError:', {'required': False, 'retval': {'type': b'v'}, 'arguments': {2: {'type': b'@'}, 3: {'type': b'@'}}})
+    r(b'NSObject', b'requestDidFinish:', {'required': False, 'retval': {'type': b'v'}, 'arguments': {2: {'type': b'@'}}})
+finally:
+    objc._updatingMetadata(False)
+expressions = {}
+
+# END OF FILE

File pyobjc-framework-StoreKit/Modules/_StoreKit.m

+#define PY_SSIZE_T_CLEAN
+#include <Python.h>
+#include "pyobjc-api.h"
+
+#import <AddressBook/AddressBook.h>
+
+/* We include the source code here instead of
+ * using the linker due to limitations in pyobjc-api.h
+ */
+#include "_AddressBook_protocols.m"
+
+
+static PyMethodDef mod_methods[] = {
+	{ 0, 0, 0, 0 } /* sentinel */
+};
+
+
+/* Python glue */
+PyObjC_MODULE_INIT(_AddressBook)
+{
+	PyObject* m;
+	m = PyObjC_MODULE_CREATE(_AddressBook)
+	if (!m) {
+		PyObjC_INITERROR();
+	}
+
+	if (PyObjC_ImportAPI(m) == -1) PyObjC_INITERROR();
+
+	PyObjC_INITDONE();
+}

File pyobjc-framework-StoreKit/Modules/_StoreKit_protocols.m

+/*
+ * This file is generated by objective.metadata
+ *
+ * Last update: Mon Mar 18 09:14:47 2013
+ */
+
+static void __attribute__((__used__)) use_protocols(void)
+{
+    PyObject* p;
+#if PyObjC_BUILD_RELEASE >= 1007
+    p = PyObjC_IdToPython(@protocol(SKPaymentTransactionObserver)); Py_XDECREF(p);
+    p = PyObjC_IdToPython(@protocol(SKProductsRequestDelegate)); Py_XDECREF(p);
+    p = PyObjC_IdToPython(@protocol(SKRequestDelegate)); Py_XDECREF(p);
+#endif /* PyObjC_BUILD_RELEASE >= 1007 */
+}

File pyobjc-framework-StoreKit/PyObjCTest/__init__.py

+""" StoreKit tests """

File pyobjc-framework-StoreKit/metadata/StoreKit.fwinfo

+# objective.metada exceptions file, see its document
+# for information on how to update this file.
+{
+ "definitions": {
+  "classes": {}, 
+  "formal_protocols": {}, 
+  "functions": {}, 
+  "informal_protocols": {}
+ }
+}

File pyobjc-framework-StoreKit/metadata/metadata.ini

+[StoreKit]
+framework = StoreKit

File pyobjc-framework-StoreKit/metadata/raw/i386-10.7.fwinfo

+#             GENERATED FILE DO NOT EDIT
+#
+# This file was generated by objective.metadata
+# Last update: Mon Mar 18 09:10:38 2013
+{
+ "arch": "i386", 
+ "definitions": {
+  "aliases": {}, 
+  "called_definitions": {}, 
+  "cftypes": {}, 
+  "classes": {
+   "SKMutablePayment": {
+    "categories": [], 
+    "methods": [], 
+    "name": "SKMutablePayment", 
+    "properties": [
+     {
+      "attributes": [
+       "copy", 
+       "readwrite"
+      ], 
+      "name": "productIdentifier", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readwrite"
+      ], 
+      "name": "quantity", 
+      "typestr": "i", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "copy", 
+       "readwrite"
+      ], 
+      "name": "requestData", 
+      "typestr": "@", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [], 
+    "super": "SKPayment"
+   }, 
+   "SKPayment": {
+    "categories": [], 
+    "methods": [
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": true, 
+      "retval": {
+       "typestr": "@", 
+       "typestr_special": false
+      }, 
+      "selector": "paymentWithProduct:", 
+      "visibility": "public"
+     }
+    ], 
+    "name": "SKPayment", 
+    "properties": [
+     {
+      "attributes": [
+       "copy", 
+       "readonly"
+      ], 
+      "name": "productIdentifier", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "copy", 
+       "readonly"
+      ], 
+      "name": "requestData", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "quantity", 
+      "typestr": "i", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [
+     "NSCopying", 
+     "NSMutableCopying"
+    ], 
+    "super": "NSObject"
+   }, 
+   "SKPaymentQueue": {
+    "categories": [], 
+    "methods": [
+     {
+      "args": [], 
+      "class_method": true, 
+      "retval": {
+       "typestr": "@", 
+       "typestr_special": false
+      }, 
+      "selector": "defaultQueue", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [], 
+      "class_method": true, 
+      "retval": {
+       "typestr": "Z", 
+       "typestr_special": true
+      }, 
+      "selector": "canMakePayments", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "addPayment:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "restoreCompletedTransactions", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "finishTransaction:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "addTransactionObserver:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "removeTransactionObserver:", 
+      "visibility": "public"
+     }
+    ], 
+    "name": "SKPaymentQueue", 
+    "properties": [
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "transactions", 
+      "typestr": "@", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [], 
+    "super": "NSObject"
+   }, 
+   "SKPaymentTransaction": {
+    "categories": [], 
+    "methods": [], 
+    "name": "SKPaymentTransaction", 
+    "properties": [
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "error", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "originalTransaction", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "payment", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "transactionDate", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "transactionIdentifier", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "transactionState", 
+      "typestr": "i", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [], 
+    "super": "NSObject"
+   }, 
+   "SKProduct": {
+    "categories": [], 
+    "methods": [], 
+    "name": "SKProduct", 
+    "properties": [
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "localizedDescription", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "localizedTitle", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "price", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "priceLocale", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "productIdentifier", 
+      "typestr": "@", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [], 
+    "super": "NSObject"
+   }, 
+   "SKProductsRequest": {
+    "categories": [], 
+    "methods": [
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "@", 
+       "typestr_special": false
+      }, 
+      "selector": "initWithProductIdentifiers:", 
+      "visibility": "public"
+     }
+    ], 
+    "name": "SKProductsRequest", 
+    "properties": [
+     {
+      "attributes": [
+       "assign"
+      ], 
+      "name": "delegate", 
+      "typestr": "@", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [], 
+    "super": "SKRequest"
+   }, 
+   "SKProductsResponse": {
+    "categories": [], 
+    "methods": [], 
+    "name": "SKProductsResponse", 
+    "properties": [
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "products", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "invalidProductIdentifiers", 
+      "typestr": "@", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [], 
+    "super": "NSObject"
+   }, 
+   "SKRequest": {
+    "categories": [], 
+    "methods": [
+     {
+      "args": [], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "cancel", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "start", 
+      "visibility": "public"
+     }
+    ], 
+    "name": "SKRequest", 
+    "properties": [
+     {
+      "attributes": [
+       "assign"
+      ], 
+      "name": "delegate", 
+      "typestr": "@", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [], 
+    "super": "NSObject"
+   }
+  }, 
+  "enum": {
+   "SKErrorClientInvalid": 1, 
+   "SKErrorPaymentCancelled": 2, 
+   "SKErrorPaymentInvalid": 3, 
+   "SKErrorPaymentNotAllowed": 4, 
+   "SKErrorUnknown": 0, 
+   "SKPaymentTransactionStateFailed": 2, 
+   "SKPaymentTransactionStatePurchased": 1, 
+   "SKPaymentTransactionStatePurchasing": 0, 
+   "SKPaymentTransactionStateRestored": 3
+  }, 
+  "expressions": {}, 
+  "externs": {
+   "SKErrorDomain": {
+    "typestr": "@"
+   }
+  }, 
+  "formal_protocols": {
+   "SKPaymentTransactionObserver": {
+    "implements": [
+     "NSObject"
+    ], 
+    "methods": [
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }, 
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "required": true, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "paymentQueue:updatedTransactions:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }, 
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "required": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "paymentQueue:removedTransactions:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }, 
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "required": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "paymentQueue:restoreCompletedTransactionsFailedWithError:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "required": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "paymentQueueRestoreCompletedTransactionsFinished:", 
+      "visibility": "public"
+     }
+    ], 
+    "properties": []
+   }, 
+   "SKProductsRequestDelegate": {
+    "implements": [
+     "SKRequestDelegate"
+    ], 
+    "methods": [
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }, 
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "required": true, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "productsRequest:didReceiveResponse:", 
+      "visibility": "public"
+     }
+    ], 
+    "properties": []
+   }, 
+   "SKRequestDelegate": {
+    "implements": [
+     "NSObject"
+    ], 
+    "methods": [
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "required": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "requestDidFinish:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }, 
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "required": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "request:didFailWithError:", 
+      "visibility": "public"
+     }
+    ], 
+    "properties": []
+   }
+  }, 
+  "func_macros": {}, 
+  "functions": {}, 
+  "informal_protocols": {}, 
+  "literals": {}, 
+  "structs": {}
+ }, 
+ "framework": "StoreKit", 
+ "headers": [
+  "SKError.h", 
+  "SKPayment.h", 
+  "SKPaymentQueue.h", 
+  "SKPaymentTransaction.h", 
+  "SKProduct.h", 
+  "SKProductsRequest.h", 
+  "SKRequest.h"
+ ], 
+ "release": "10.8.3", 
+ "sdk": "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk"
+}

File pyobjc-framework-StoreKit/metadata/raw/i386-10.8.fwinfo

+#             GENERATED FILE DO NOT EDIT
+#
+# This file was generated by objective.metadata
+# Last update: Mon Mar 18 09:10:58 2013
+{
+ "arch": "i386", 
+ "definitions": {
+  "aliases": {}, 
+  "called_definitions": {}, 
+  "cftypes": {}, 
+  "classes": {
+   "SKDownload": {
+    "categories": [], 
+    "methods": [
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": true, 
+      "retval": {
+       "typestr": "@", 
+       "typestr_special": false
+      }, 
+      "selector": "contentURLForProductID:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": true, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "deleteContentForProductID:", 
+      "visibility": "public"
+     }
+    ], 
+    "name": "SKDownload", 
+    "properties": [
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "contentIdentifier", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "state", 
+      "typestr": "i", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "copy", 
+       "readonly"
+      ], 
+      "name": "contentURL", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "progress", 
+      "typestr": "f", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "copy", 
+       "readonly"
+      ], 
+      "name": "error", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "timeRemaining", 
+      "typestr": "d", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "copy", 
+       "readonly"
+      ], 
+      "name": "contentLength", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "copy", 
+       "readonly"
+      ], 
+      "name": "contentVersion", 
+      "typestr": "@", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [], 
+    "super": "NSObject"
+   }, 
+   "SKMutablePayment": {
+    "categories": [], 
+    "methods": [], 
+    "name": "SKMutablePayment", 
+    "properties": [
+     {
+      "attributes": [
+       "copy", 
+       "readwrite"
+      ], 
+      "name": "productIdentifier", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readwrite"
+      ], 
+      "name": "quantity", 
+      "typestr": "i", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "copy", 
+       "readwrite"
+      ], 
+      "name": "requestData", 
+      "typestr": "@", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [], 
+    "super": "SKPayment"
+   }, 
+   "SKPayment": {
+    "categories": [], 
+    "methods": [
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": true, 
+      "retval": {
+       "typestr": "@", 
+       "typestr_special": false
+      }, 
+      "selector": "paymentWithProduct:", 
+      "visibility": "public"
+     }
+    ], 
+    "name": "SKPayment", 
+    "properties": [
+     {
+      "attributes": [
+       "copy", 
+       "readonly"
+      ], 
+      "name": "productIdentifier", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "copy", 
+       "readonly"
+      ], 
+      "name": "requestData", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "quantity", 
+      "typestr": "i", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [
+     "NSCopying", 
+     "NSMutableCopying"
+    ], 
+    "super": "NSObject"
+   }, 
+   "SKPaymentQueue": {
+    "categories": [], 
+    "methods": [
+     {
+      "args": [], 
+      "class_method": true, 
+      "retval": {
+       "typestr": "@", 
+       "typestr_special": false
+      }, 
+      "selector": "defaultQueue", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [], 
+      "class_method": true, 
+      "retval": {
+       "typestr": "Z", 
+       "typestr_special": true
+      }, 
+      "selector": "canMakePayments", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "addPayment:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "restoreCompletedTransactions", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "finishTransaction:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "addTransactionObserver:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "removeTransactionObserver:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "startDownloads:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "pauseDownloads:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "resumeDownloads:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "cancelDownloads:", 
+      "visibility": "public"
+     }
+    ], 
+    "name": "SKPaymentQueue", 
+    "properties": [
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "transactions", 
+      "typestr": "@", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [], 
+    "super": "NSObject"
+   }, 
+   "SKPaymentTransaction": {
+    "categories": [], 
+    "methods": [], 
+    "name": "SKPaymentTransaction", 
+    "properties": [
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "error", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "originalTransaction", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "payment", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "transactionDate", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "transactionIdentifier", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "downloads", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "transactionState", 
+      "typestr": "i", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [], 
+    "super": "NSObject"
+   }, 
+   "SKProduct": {
+    "categories": [], 
+    "methods": [], 
+    "name": "SKProduct", 
+    "properties": [
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "localizedDescription", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "localizedTitle", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "price", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "priceLocale", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "productIdentifier", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "downloadable", 
+      "typestr": "Z", 
+      "typestr_special": true
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "contentVersion", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "contentLengths", 
+      "typestr": "@", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [], 
+    "super": "NSObject"
+   }, 
+   "SKProductsRequest": {
+    "categories": [], 
+    "methods": [
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "@", 
+       "typestr_special": false
+      }, 
+      "selector": "initWithProductIdentifiers:", 
+      "visibility": "public"
+     }
+    ], 
+    "name": "SKProductsRequest", 
+    "properties": [
+     {
+      "attributes": [
+       "assign"
+      ], 
+      "name": "delegate", 
+      "typestr": "@", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [], 
+    "super": "SKRequest"
+   }, 
+   "SKProductsResponse": {
+    "categories": [], 
+    "methods": [], 
+    "name": "SKProductsResponse", 
+    "properties": [
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "products", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "invalidProductIdentifiers", 
+      "typestr": "@", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [], 
+    "super": "NSObject"
+   }, 
+   "SKRequest": {
+    "categories": [], 
+    "methods": [
+     {
+      "args": [], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "cancel", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "start", 
+      "visibility": "public"
+     }
+    ], 
+    "name": "SKRequest", 
+    "properties": [
+     {
+      "attributes": [
+       "assign"
+      ], 
+      "name": "delegate", 
+      "typestr": "@", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [], 
+    "super": "NSObject"
+   }
+  }, 
+  "enum": {
+   "SKDownloadStateActive": 1, 
+   "SKDownloadStateCancelled": 5, 
+   "SKDownloadStateFailed": 4, 
+   "SKDownloadStateFinished": 3, 
+   "SKDownloadStatePaused": 2, 
+   "SKDownloadStateWaiting": 0, 
+   "SKErrorClientInvalid": 1, 
+   "SKErrorPaymentCancelled": 2, 
+   "SKErrorPaymentInvalid": 3, 
+   "SKErrorPaymentNotAllowed": 4, 
+   "SKErrorUnknown": 0, 
+   "SKPaymentTransactionStateFailed": 2, 
+   "SKPaymentTransactionStatePurchased": 1, 
+   "SKPaymentTransactionStatePurchasing": 0, 
+   "SKPaymentTransactionStateRestored": 3
+  }, 
+  "expressions": {}, 
+  "externs": {
+   "SKErrorDomain": {
+    "typestr": "@"
+   }
+  }, 
+  "formal_protocols": {
+   "SKPaymentTransactionObserver": {
+    "implements": [
+     "NSObject"
+    ], 
+    "methods": [
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }, 
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "required": true, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "paymentQueue:updatedTransactions:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }, 
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "required": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "paymentQueue:removedTransactions:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }, 
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "required": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "paymentQueue:restoreCompletedTransactionsFailedWithError:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "required": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "paymentQueueRestoreCompletedTransactionsFinished:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }, 
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "required": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "paymentQueue:updatedDownloads:", 
+      "visibility": "public"
+     }
+    ], 
+    "properties": []
+   }, 
+   "SKProductsRequestDelegate": {
+    "implements": [
+     "SKRequestDelegate"
+    ], 
+    "methods": [
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }, 
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "required": true, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "productsRequest:didReceiveResponse:", 
+      "visibility": "public"
+     }
+    ], 
+    "properties": []
+   }, 
+   "SKRequestDelegate": {
+    "implements": [
+     "NSObject"
+    ], 
+    "methods": [
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "required": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "requestDidFinish:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }, 
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "required": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "request:didFailWithError:", 
+      "visibility": "public"
+     }
+    ], 
+    "properties": []
+   }
+  }, 
+  "func_macros": {}, 
+  "functions": {}, 
+  "informal_protocols": {}, 
+  "literals": {}, 
+  "structs": {}
+ }, 
+ "framework": "StoreKit", 
+ "headers": [
+  "SKDownload.h", 
+  "SKError.h", 
+  "SKPayment.h", 
+  "SKPaymentQueue.h", 
+  "SKPaymentTransaction.h", 
+  "SKProduct.h", 
+  "SKProductsRequest.h", 
+  "SKRequest.h"
+ ], 
+ "release": "10.8.3", 
+ "sdk": "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk"
+}

File pyobjc-framework-StoreKit/metadata/raw/x86_64-10.7.fwinfo

+#             GENERATED FILE DO NOT EDIT
+#
+# This file was generated by objective.metadata
+# Last update: Mon Mar 18 09:11:15 2013
+{
+ "arch": "x86_64", 
+ "definitions": {
+  "aliases": {}, 
+  "called_definitions": {}, 
+  "cftypes": {}, 
+  "classes": {
+   "SKMutablePayment": {
+    "categories": [], 
+    "methods": [], 
+    "name": "SKMutablePayment", 
+    "properties": [
+     {
+      "attributes": [
+       "copy", 
+       "readwrite"
+      ], 
+      "name": "productIdentifier", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readwrite"
+      ], 
+      "name": "quantity", 
+      "typestr": "q", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "copy", 
+       "readwrite"
+      ], 
+      "name": "requestData", 
+      "typestr": "@", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [], 
+    "super": "SKPayment"
+   }, 
+   "SKPayment": {
+    "categories": [], 
+    "methods": [
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": true, 
+      "retval": {
+       "typestr": "@", 
+       "typestr_special": false
+      }, 
+      "selector": "paymentWithProduct:", 
+      "visibility": "public"
+     }
+    ], 
+    "name": "SKPayment", 
+    "properties": [
+     {
+      "attributes": [
+       "copy", 
+       "readonly"
+      ], 
+      "name": "productIdentifier", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "copy", 
+       "readonly"
+      ], 
+      "name": "requestData", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "quantity", 
+      "typestr": "q", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [
+     "NSCopying", 
+     "NSMutableCopying"
+    ], 
+    "super": "NSObject"
+   }, 
+   "SKPaymentQueue": {
+    "categories": [], 
+    "methods": [
+     {
+      "args": [], 
+      "class_method": true, 
+      "retval": {
+       "typestr": "@", 
+       "typestr_special": false
+      }, 
+      "selector": "defaultQueue", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [], 
+      "class_method": true, 
+      "retval": {
+       "typestr": "Z", 
+       "typestr_special": true
+      }, 
+      "selector": "canMakePayments", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "addPayment:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "restoreCompletedTransactions", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "finishTransaction:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "addTransactionObserver:", 
+      "visibility": "public"
+     }, 
+     {
+      "args": [
+       {
+        "typestr": "@", 
+        "typestr_special": false
+       }
+      ], 
+      "class_method": false, 
+      "retval": {
+       "typestr": "v", 
+       "typestr_special": false
+      }, 
+      "selector": "removeTransactionObserver:", 
+      "visibility": "public"
+     }
+    ], 
+    "name": "SKPaymentQueue", 
+    "properties": [
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "transactions", 
+      "typestr": "@", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [], 
+    "super": "NSObject"
+   }, 
+   "SKPaymentTransaction": {
+    "categories": [], 
+    "methods": [], 
+    "name": "SKPaymentTransaction", 
+    "properties": [
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "error", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "originalTransaction", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "payment", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "transactionDate", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "transactionIdentifier", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "transactionState", 
+      "typestr": "q", 
+      "typestr_special": false
+     }
+    ], 
+    "protocols": [], 
+    "super": "NSObject"
+   }, 
+   "SKProduct": {
+    "categories": [], 
+    "methods": [], 
+    "name": "SKProduct", 
+    "properties": [
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "localizedDescription", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "localizedTitle", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "price", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "priceLocale", 
+      "typestr": "@", 
+      "typestr_special": false
+     }, 
+     {
+      "attributes": [
+       "readonly"
+      ], 
+      "name": "productIdentifier",