From 32bd3e03a6e2f22945c61117a74bf49ece5d8bfb Mon Sep 17 00:00:00 2001 From: cramakri <cramakri> Date: Mon, 22 Oct 2012 09:11:28 +0000 Subject: [PATCH] Made initializing an entity from a raw entity more robust SVN: 27271 --- .../BisKit/Classes/CISDOBIpadEntity.m | 17 ++++++++++------- .../BisKit/Classes/CISDOBIpadService.m | 5 ++++- .../UserInterfaceState.xcuserstate | Bin 165447 -> 165470 bytes 3 files changed, 14 insertions(+), 8 deletions(-) diff --git a/openbis-ipad/BisKit/Classes/CISDOBIpadEntity.m b/openbis-ipad/BisKit/Classes/CISDOBIpadEntity.m index 6bc1ac1097e..8b5234ddbdd 100644 --- a/openbis-ipad/BisKit/Classes/CISDOBIpadEntity.m +++ b/openbis-ipad/BisKit/Classes/CISDOBIpadEntity.m @@ -89,15 +89,18 @@ - (void)initializeFromRawEntity:(CISDOBIpadRawEntity *)rawEntity { + // These will always be non-nil self.permId = rawEntity.permId; self.refcon = rawEntity.refcon; - self.category = rawEntity.category; - self.summaryHeader = rawEntity.summaryHeader; - self.summary = rawEntity.summary; - self.childrenPermIdsJson = rawEntity.children; -// self.identifier = rawEntity.identifier; -// self.imageUrl = rawEntity.imageUrl; -// self.propertiesJson = rawEntity.properties; + + // Need to check if these values were transmitted with the raw entity + if (rawEntity.category) self.category = rawEntity.category; + if (rawEntity.summaryHeader) self.summaryHeader = rawEntity.summaryHeader; + if (rawEntity.summary) self.summary = rawEntity.summary; + if (rawEntity.children) self.childrenPermIdsJson = rawEntity.children; + if (rawEntity.identifier) self.identifier = rawEntity.identifier; + if (rawEntity.imageUrl) self.imageUrl = rawEntity.imageUrl; + if (rawEntity.properties) self.propertiesJson = rawEntity.properties; } @end diff --git a/openbis-ipad/BisKit/Classes/CISDOBIpadService.m b/openbis-ipad/BisKit/Classes/CISDOBIpadService.m index d368553f24a..30114712b1a 100644 --- a/openbis-ipad/BisKit/Classes/CISDOBIpadService.m +++ b/openbis-ipad/BisKit/Classes/CISDOBIpadService.m @@ -211,7 +211,10 @@ NSString *const CISDOBIpadServiceErrorDomain = @"CISDOBIpadServiceErrorDomain"; - (NSString *)stringContentValueAtName:(NSString *)name { // Look up the index in the map - NSUInteger index = [[_fieldMap objectForKey: name] unsignedIntegerValue]; + NSNumber *indexHolder = [_fieldMap objectForKey: name]; + // This value was not provided + if (!indexHolder) return nil; + NSUInteger index = [indexHolder unsignedIntegerValue]; return [[_content objectAtIndex: index] objectForKey: @"value"]; } diff --git a/openbis-ipad/Research/BisMac.xcodeproj/project.xcworkspace/xcuserdata/cramakri.xcuserdatad/UserInterfaceState.xcuserstate b/openbis-ipad/Research/BisMac.xcodeproj/project.xcworkspace/xcuserdata/cramakri.xcuserdatad/UserInterfaceState.xcuserstate index 04cc35e431b8f53d4d4f65179f6443414d1c645d..b35f6aaf0bdaa3e036391158e68f34d4914749ac 100644 GIT binary patch delta 5565 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 delta 5611 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 LVpWG@f?NIv6j$jb -- GitLab