Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Yes, you can register a soup for Salesforce SDK on iOS without relying on a configuration file using code.

You can use the SFSmartStore+Extensions.h header file, which provides a set of extensions to SFSmartStore that simplify the use of the SDK in common scenarios, including registering a soup. Here's an example of how you can register a soup:

NSDictionary* soupIndexes = @{
    @"path1": @{ @"path": @"path1", @"type": @"string" },
    @"path2": @{ @"path": @"path2", @"type": @"integer" },
};

SFSoupSpec* soupSpec = [SFSoupSpec newSoupSpec:@"MySoup" withFeatures:nil];
[soupSpec addIndexes:[SFSoupIndex asArraySoupIndexes:soupIndexes]];
[self.store registerSoupWithSpec:soupSpec error:&error];

In this example, soupIndexes is a dictionary that defines the indexes for the soup. path1 and path2 are the field paths and string and integer are the data types. You can add more indexes as needed.

You then create a SFSoupSpec object with a unique name for the soup and the indexes, and call registerSoupWithSpec:error: on your SFSmartStore instance to register the soup.

This approach gives you more flexibility and control over your soup configuration, but requires more code than using a configuration file.