documentation for DDP message

This commit is contained in:
Peter 2015-11-01 12:13:03 -05:00
commit fcd32d2127
2 changed files with 27 additions and 3 deletions

View File

@ -27,12 +27,15 @@
D0C71B561BC172F40089B6CE /* Meteor.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C71B551BC172F40089B6CE /* Meteor.swift */; settings = {ASSET_TAGS = (); }; };
D0C71B581BC173030089B6CE /* SwiftMeteor.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C71B571BC173030089B6CE /* SwiftMeteor.swift */; settings = {ASSET_TAGS = (); }; };
D0C71B5B1BC174280089B6CE /* Data.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0C71B5A1BC174280089B6CE /* Data.swift */; settings = {ASSET_TAGS = (); }; };
<<<<<<< HEAD
D0CF8A0D1BE2AC1700EC9F12 /* MeteorCoreData.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0CF8A091BE2AC1700EC9F12 /* MeteorCoreData.swift */; settings = {ASSET_TAGS = (); }; };
D0CF8A0E1BE2AC1700EC9F12 /* MeteorCoreDataStack.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0CF8A0A1BE2AC1700EC9F12 /* MeteorCoreDataStack.swift */; settings = {ASSET_TAGS = (); }; };
D0CF8A0F1BE2AC1700EC9F12 /* MeteorCoreDataCollection.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0CF8A0B1BE2AC1700EC9F12 /* MeteorCoreDataCollection.swift */; settings = {ASSET_TAGS = (); }; };
D0CF8A101BE2AC1700EC9F12 /* CoreDataExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0CF8A0C1BE2AC1700EC9F12 /* CoreDataExtensions.swift */; settings = {ASSET_TAGS = (); }; };
D0CF8A201BE2CA1800EC9F12 /* MeteorCoreDataTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0CF8A1F1BE2CA1800EC9F12 /* MeteorCoreDataTableViewController.swift */; settings = {ASSET_TAGS = (); }; };
D0CF8A221BE2D65300EC9F12 /* MeteorCollectionChange.swift in Sources */ = {isa = PBXBuildFile; fileRef = D0CF8A211BE2D65300EC9F12 /* MeteorCollectionChange.swift */; settings = {ASSET_TAGS = (); }; };
=======
>>>>>>> 692a8c69685a23f24bfee8ce944b254d97f417fc
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
@ -91,12 +94,15 @@
D0C71B551BC172F40089B6CE /* Meteor.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Meteor.swift; sourceTree = "<group>"; };
D0C71B571BC173030089B6CE /* SwiftMeteor.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SwiftMeteor.swift; sourceTree = "<group>"; };
D0C71B5A1BC174280089B6CE /* Data.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Data.swift; sourceTree = "<group>"; };
<<<<<<< HEAD
D0CF8A091BE2AC1700EC9F12 /* MeteorCoreData.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MeteorCoreData.swift; sourceTree = "<group>"; };
D0CF8A0A1BE2AC1700EC9F12 /* MeteorCoreDataStack.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MeteorCoreDataStack.swift; sourceTree = "<group>"; };
D0CF8A0B1BE2AC1700EC9F12 /* MeteorCoreDataCollection.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MeteorCoreDataCollection.swift; sourceTree = "<group>"; };
D0CF8A0C1BE2AC1700EC9F12 /* CoreDataExtensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CoreDataExtensions.swift; sourceTree = "<group>"; };
D0CF8A1F1BE2CA1800EC9F12 /* MeteorCoreDataTableViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MeteorCoreDataTableViewController.swift; sourceTree = "<group>"; };
D0CF8A211BE2D65300EC9F12 /* MeteorCollectionChange.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MeteorCollectionChange.swift; sourceTree = "<group>"; };
=======
>>>>>>> 692a8c69685a23f24bfee8ce944b254d97f417fc
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
@ -153,7 +159,6 @@
children = (
D0CF8A131BE2AC4C00EC9F12 /* DDP */,
D0CF8A121BE2AC4400EC9F12 /* Meteor */,
D0CF8A111BE2AC3300EC9F12 /* MeteorCoreData */,
D02A71E11BBEFBCA00940C17 /* Info.plist */,
);
path = SwiftDDP;
@ -188,6 +193,7 @@
path = SwiftDDPTests;
sourceTree = "<group>";
};
<<<<<<< HEAD
D0CF8A111BE2AC3300EC9F12 /* MeteorCoreData */ = {
isa = PBXGroup;
children = (
@ -201,6 +207,8 @@
name = MeteorCoreData;
sourceTree = "<group>";
};
=======
>>>>>>> 692a8c69685a23f24bfee8ce944b254d97f417fc
D0CF8A121BE2AC4400EC9F12 /* Meteor */ = {
isa = PBXGroup;
children = (
@ -366,18 +374,19 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
<<<<<<< HEAD
D0CF8A201BE2CA1800EC9F12 /* MeteorCoreDataTableViewController.swift in Sources */,
D0CF8A221BE2D65300EC9F12 /* MeteorCollectionChange.swift in Sources */,
D0CF8A0F1BE2AC1700EC9F12 /* MeteorCoreDataCollection.swift in Sources */,
D0CF8A101BE2AC1700EC9F12 /* CoreDataExtensions.swift in Sources */,
=======
>>>>>>> 692a8c69685a23f24bfee8ce944b254d97f417fc
D02A72101BBEFCD300940C17 /* DDPClient.swift in Sources */,
D0CF8A0E1BE2AC1700EC9F12 /* MeteorCoreDataStack.swift in Sources */,
D02B30831BDA8E2200E1DB72 /* DDPMethodResult.swift in Sources */,
D02A72111BBEFCD300940C17 /* DDPMessage.swift in Sources */,
D016D0071BC6DF2F009652C3 /* MeteorErrors.swift in Sources */,
D02A72121BBEFCD300940C17 /* DDPExtensions.swift in Sources */,
D0C71B561BC172F40089B6CE /* Meteor.swift in Sources */,
D0CF8A0D1BE2AC1700EC9F12 /* MeteorCoreData.swift in Sources */,
D02A72131BBEFCD300940C17 /* DDPEvents.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;

View File

@ -73,7 +73,12 @@ public struct DDPMessage {
/**
The message's properties, stored as an NSDictionary
*/
public var json:NSDictionary!
/**
The message properties in an NSDictionary
*/
public var json:NSDictionary!
/**
@ -134,6 +139,11 @@ public struct DDPMessage {
}
internal func hasProperty(name:String) -> Bool {
public var keys:[String] {
return json.allKeys as! [String]
}
public func hasProperty(name:String) -> Bool {
if let property = json[name] where ((property as! NSObject) != NSNull()) {
return true
}
@ -298,6 +308,11 @@ public struct DDPError {
/**
Helper variable that returns true if the struct has both an error code and a reason
*/
public var error:String? { return json?["error"] as? String } // Error code
public var reason:String? { return json?["reason"] as? String }
public var details:String? { return json?["details"] as? String }
public var offendingMessage:String? { return json?["offendingMessage"] as? String }
var isValid:Bool {
if let _ = error { return true }
if let _ = reason { return true }