Skip to content
This repository was archived by the owner on Jan 21, 2022. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
84 commits
Select commit Hold shift + click to select a range
d3faaa2
US374082 : [iOS] MAS network enhancement with tasks and RequestBuilde…
Sep 5, 2017
9e165a2
Updated license information in the files.
Sep 6, 2017
0acda1f
Updated with comments provided in the code review
Sep 7, 2017
79dec94
Fixed some typo issues.
Sep 7, 2017
fd39a67
DE311841 : [Cordova] [iOS] Closing the login screen and invoking the…
Sep 27, 2017
473cbed
US399506 : [iOS] MQTT Integration MAS Connecta CA public Cert
Oct 4, 2017
fba76db
[iOS] MAS credentials should be stored in the keychain as device only
Oct 4, 2017
b87f3ed
Performed changes requested by James on his review.
Oct 5, 2017
b0b92c4
Exposed methods to allow developer set Keychain Synchronizable proper…
Oct 6, 2017
098d786
ARCHIVE_OUTPUTFOLDER update.
Oct 11, 2017
088f8c3
US408725 : MQTT fails to re-establish connection when user logs-out, …
Oct 12, 2017
c41194e
US408725 : MQTT fails to re-establish connection when user logs-out, …
Oct 12, 2017
e1bbb87
DE321921 : [iOS][MASFoundation] Remove hard coded endpoint value in M…
Oct 13, 2017
141bdd6
[iOS] Validate if VendorID exists in the sharedKeychain before sendin…
Oct 16, 2017
5c78b86
DE321925 : [iOS][MASFoundation] Configuration is not being read prope…
Oct 16, 2017
24f1df5
Merge pull request #89 from CAAPIM/US399506-MQTTPublicCertificate
Oct 16, 2017
adc83c6
Merge pull request #90 from CAAPIM/US388853-CredentialsKeychainDevice…
Oct 16, 2017
579c42d
Merge pull request #91 from CAAPIM/US408721-UniversalBuildScriptUpdate
Oct 16, 2017
f34bdcb
Merge pull request #92 from CAAPIM/US408725-MQTTReConnection
Oct 16, 2017
cef6b51
Merge pull request #93 from CAAPIM/DE321921-MASConfiguration
Oct 16, 2017
23fe63c
Merge branch 'develop' into US374082-RequestBuilder
Oct 17, 2017
c1e691b
Resolved merge conflicts in project file
Oct 17, 2017
9cc818f
Merge pull request #84 from CAAPIM/US374082-RequestBuilder
Oct 17, 2017
a628cf8
Fixed missing headers issue.
Oct 17, 2017
b51b41d
Merge pull request #95 from CAAPIM/US374082-RequestBuilder
Oct 17, 2017
5a532d8
Merge pull request #97 from CAAPIM/develop
Oct 17, 2017
914fdca
Merge pull request #98 from CAAPIM/Stable
Oct 17, 2017
f6dc87e
Merge branch 'Stable' into DE321925-MASConfigurationEndpointStaticPro…
lsanches Oct 17, 2017
eb0a0a7
Merge pull request #94 from CAAPIM/DE321925-MASConfigurationEndpointS…
lsanches Oct 17, 2017
5c18a66
Merge branch 'Stable' into develop
lsanches Oct 17, 2017
e3437bc
[iOS] Validate if VendorID exists in the sharedKeychain before sendin…
Oct 18, 2017
7c92035
Product name changes
Oct 23, 2017
36888b7
DE324142 : [iOS][MASFoundation] Device de-registration should adhere …
Oct 24, 2017
2652e33
Added back installation for Cocoapods.
Oct 24, 2017
ece6eef
Merge pull request #105 from CAAPIM/iOS-MASFoundation-ProductNames
BobbyWeber Oct 24, 2017
cabe96b
Merge pull request #99 from CAAPIM/US406920-DeviceRegistrationEnhance…
BobbyWeber Oct 24, 2017
4dfeb12
Merge pull request #101 from CAAPIM/DE311841-L7SProtocol
BobbyWeber Oct 24, 2017
dbf5479
Merge pull request #104 from CAAPIM/DE324142-DeviceDeRegistration
BobbyWeber Oct 24, 2017
3804aa2
DE324462 : [iOS][MASFoundation] MASAuthCredentialsJWT should not be r…
Oct 26, 2017
56561eb
Merge pull request #108 from CAAPIM/develop
BobbyWeber Nov 1, 2017
2d8286b
Merge pull request #106 from CAAPIM/DE324462-JWT-AuthCredentials
BobbyWeber Nov 1, 2017
4d7d72f
US416558 : [iOS] SharedStorage API
Nov 7, 2017
940df22
US416558 : [iOS] SharedStorage API
Nov 7, 2017
891ab3d
US416558 : [iOS] SharedStorage API
Nov 8, 2017
e09cee9
US416558 : [iOS] SharedStorage API
Nov 9, 2017
d932fc9
US416558 : [iOS] SharedStorage API
Nov 9, 2017
7f653dd
US416558 : [iOS] SharedStorage API
Nov 9, 2017
ac61eff
US416558 : [iOS] SharedStorage API
Nov 9, 2017
545d1b7
US416558 : [iOS] SharedStorage API
Nov 10, 2017
a0d4bd6
US416558 : [iOS] SharedStorage API
kayliemoa Nov 14, 2017
6d9f042
Merge pull request #109 from CAAPIM/US416558-KeychainStorage
BobbyWeber Nov 17, 2017
572f962
initial code related to browser based authentication
Nov 20, 2017
db7ccbb
added code for explicit login in MASUser class
Nov 21, 2017
a06367b
DE328373 : [iOS][Multi-Server] MAS Set Security Configuration call ge…
kayliemoa Nov 21, 2017
7bc04ed
US416558 : [iOS] SharedStorage API
kayliemoa Nov 21, 2017
e5a8860
US416558 : [iOS] SharedStorage API
kayliemoa Nov 21, 2017
093c5d7
Merge pull request #110 from CAAPIM/US416558-KeychainStorage
BobbyWeber Nov 22, 2017
25184b4
Merge pull request #112 from CAAPIM/DE328373-SecurityConfigurationVal…
BobbyWeber Nov 22, 2017
bb0a2a5
added some code to handle the redirection and load the template
Nov 22, 2017
5baa786
Merge branch 'Stable' of https://github.com/CAAPIM/iOS-MAS-Foundation…
Nov 23, 2017
05a6020
[ADD] Adding new blocks for handling Biometric Registration and Dereg…
Nov 23, 2017
9e1cd57
included review comments - filter the redirection only to BBA , made …
Nov 23, 2017
4e7e185
saved older redirection block if any and set it back after BBA
Nov 24, 2017
92a60c9
handled error case when authorization code is not received
Nov 24, 2017
c48f6c4
improvements and error handling across
Nov 24, 2017
6a086c5
Taken care of all the indentation and spacing and complied to code gu…
Nov 27, 2017
1d8c355
Merge branch 'develop' into BrowserBasedAuthentication
Nov 27, 2017
a1a55ab
US427126 : [iOS] Update SDK Version, and ChangeLog
Nov 27, 2017
56f4ea5
Minor edits
bmckercher Nov 27, 2017
7a0aa8e
Merge pull request #114 from CAAPIM/US427126-SDKVersionUpdateChangeLog
BobbyWeber Nov 27, 2017
d2e6374
Updated link
bmckercher Nov 27, 2017
5b0eea6
Merge pull request #113 from CAAPIM/MASFIDOUIInterface
Nov 28, 2017
601ed95
Merge pull request #116 from CAAPIM/US425261-BrowserBasedAuthentication
BobbyWeber Nov 29, 2017
d7e950a
remove code related to iOS 11 and changed navigation for Safariviewco…
Nov 29, 2017
279e4a0
Merge pull request #117 from CAAPIM/US425261-BrowserBasedAuthentication
Nov 29, 2017
75f7746
checking if the redirect url is good and taking necessary action
Dec 1, 2017
505e3b9
Merge pull request #118 from CAAPIM/US425261-BrowserBasedAuthenticati…
Dec 1, 2017
66b342f
Merge pull request #115 from CAAPIM/iOS-MASFoundation-Link-fix
BobbyWeber Dec 4, 2017
eab6edb
resolving defect where a server does not respond to the authorize cal…
Dec 6, 2017
d25a98c
Merge pull request #119 from CAAPIM/DE332735-BrowserBasedAuthentication
Dec 6, 2017
c26af70
US427126 : Updating ChangeLog.md with reference
Dec 12, 2017
e13a83a
US427126 : Updating ChangeLog.md
Dec 12, 2017
f6b5a18
Merge pull request #120 from CAAPIM/US427126-SDKVersionUpdateChangeLog
Dec 12, 2017
8a8f7f5
Merge pull request #121 from CAAPIM/develop
BobbyWeber Dec 14, 2017
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 22 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,23 @@
# Version 1.6.00

### Bug fixes
- `MASAuthCredentialsJWT` credentials was marked as re-usable, so the Mobile SDK tried to consume the same credentials for a certain period of time. JWT credentials can now be consumed only one time, and is not reusable. [DE324462]
- Device deregistration was removing all credentials from the Mobile SDK regardless of the result of deregistration request. Now, the Mobile SDK removes credentials only when the deregistration request succeeds. [DE324142]
- Mobile SDK was changing `MASGrantFlow` to client credentials in a specific scenario with Cordova SDK. The Mobile SDK no longer switches the `MASGrantFlow` by itself. [DE311841]
- Mobile SDK enhances the device registration flow so it handles the device registration record more smoothly. This removes the hassle of developers seeing "This device has already been registered and has not been configured to accept updates" error message in development phase. [US406920]
- `MASConfiguration` was not properly updating the updated endpoint values when switching to a different configuration. It is fixed. [DE321925]
- `MASConfiguration` had some hard-coded values for client credentials device registration endpoint. `MASConfiguration` now reads the value from the configuration. [DE321921]
- `MASMQTTClient` was unable to reestablish MQTT connection when the user session was logged out, and logged in with a different account. Mobile SDK now properly handles session changes for MQTT connection. [US408725]
- Mobile SDK now stores all credentials only to the device. Data will not be backed-up or transferred with iCloud unless `[MAS setKeychainSynchroizable:]` is explicitly set to `YES`. [US388853]
- Mobile SDK's MQTT connection was unable to establish mutual SSL connection with public CA certificate. The Mobile SDK now establishes mutual SSL with public CA certificate when **entire certificate chain** is exported in JSON configuration. [US399506]

### New features
- Mobile SDK introduces a secure way of storing and sharing data across multiple applications using same keychain sharing group with MASFoundation's `MASSharedStorage` class. [US416558]
- Mobile SDK introduces a new way of building API CRUD request with `MASRequestBuilder` and `MASRequest` classes to provide seamless developer experience Android SDK. [US374082]

### Deprecated methods
- `[MASConfiguration setSecurityConfiguration:]` is deprecated. Please use `[MASSecurityConfiguration setSecurityConfiguration:error:]` for better handling of error cases when setting the security configuration object. [DE328373]

# Version 1.5.00

NOTE: From this version on the frameworks changed to Dynamic instead of Static library
Expand All @@ -12,14 +32,14 @@ NOTE: From this version on the frameworks changed to Dynamic instead of Static l
- The SDK no longer requires Keychain Sharing to be enabled in Xcode. However, to establish SSO across multiple applications, Keychain Sharing must be enabled. [US320771]
- Mobile SDK now only validates against the leaf certificate for SSL pinning validation by default. The configuration can be changed to validate against entire certificate chain through `MASSecurityConfiguration`. [US374086]

### New Features
### New features
- Mobile SDK introduces an ability to configure security configuration for external APIs (such as SSL pinning), so that Mobile SDK can securely connect to external API (other than primary Gateway). [US344780]
- The SDK handles multiple concurrent API requests with proper authentication processes. [US362800]
- The SDK supports dynamic framework. All you need to do is update your Xcode settings. [US367604]
- The SDK introduces more flexible and extensible authentication with different types of credentials. For details, see `MASAuthCredentials`. [US349497]
- The SDK introduces the ability to digitally sign the request as JWT. See `MASClaims` to sign the request. [US313137]

### Deprecated Methods
### Deprecated methods
- `[MAS setUserLoginBlock:]` is deprecated. Please use `[MAS setAuthCredentials:]` block to perform implicit authentication with `MASAuthCredentials` object.


Expand Down
22 changes: 11 additions & 11 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
# Contribute to CA Mobile App Services SDK
# Contribute to iOS Mobile SDK
Contributions are welcome and much appreciated. Just follow these easy steps to contribute.

## Code Standard and Guideline
For consistency, we ask that you adhere to some basic code guidelines when contributing to the MAS SDK. See the [Code Standard and Guideline][guidelines] for details.
For consistency, we ask that you adhere to some basic code guidelines when contributing to the iOS Mobile SDK. See the [Code Standard and Guideline][guidelines] for details.

## Our Development Process
To continue improving the SDK, the MAS development team will work on the same GitHub repos as you. The `develop branch` is used for development, and the `master branch` is used only for stable releases.
To continue improving the SDK, our development team will work on the same GitHub repos as you. The `develop branch` is used for development, and the `master branch` is used only for stable releases.
**Note:** For production environments, please use releases only from the master branch.

### Pull Requests
Expand All @@ -14,7 +14,7 @@ We welcome and encourage pull requests. When we get a pull request, it is peer r
Follow these steps for pull requests:

1. Fork the repo and create your branch from `master`.
4. For any new code, add unit tests.
2. For any new code, add unit tests.
3. If you've changed APIs, update code comments for AppleDocs.
4. Verify that the test suite passes.
5. Verify that your code follows the [Code Standard Guideline][guidelines]
Expand Down Expand Up @@ -44,12 +44,12 @@ Before filing a new issue, check Known Issues to see if your problem already exi
* Anything else that seems relevant.

## License
By contributing to CA Mobile App Services SDK, you agree that your contributions will be licensed under its [license][license-link].
By contributing to iOS Mobile SDK, you agree that your contributions will be licensed under its [license][license-link].


[guidelines]: /GUIDELINES.md
[community]: https://communities.ca.com/community/ca-api-management-community/content?filterID=contentstatus%5Bpublished%5D~category%5Bca-mobile-api-gateway%5D
[license-link]: /LICENSE
[cla]: https://www.clahub.com/agreements/CAAPIM/iOS-MAS-Foundation
[casupport]: https://support.ca.com/irj/portal/implsvcnewcase
[guidelines]: /GUIDELINES.md
[community]: https://communities.ca.com/community/ca-api-management-community/content?filterID=contentstatus%5Bpublished%5D~category%5Bca-mobile-api-gateway%5D
[license-link]: /LICENSE
[cla]: https://www.clahub.com/agreements/CAAPIM/iOS-MAS-Foundation
[casupport]: https://support.ca.com/irj/portal/implsvcnewcase

20 changes: 9 additions & 11 deletions GUIDELINES.md
Original file line number Diff line number Diff line change
@@ -1,29 +1,27 @@
# CA Technologies Mobile App Services Objective-C Style Guide
# CA Technologies Objective-C Style Guide

This document describes the Objective-C coding style of iOS team for CA Technologies Mobile App Services. This guideline is recommended to comply with all Objective-C implementations of our products.
This document describes the Objective-C coding style of the iOS Mobile SDK team. This guideline is recommended to comply with all Objective-C implementations of our products.

## Review Apple's Official Coding Guideline
## Review Apple Official Coding Guideline

Beyond the guidelines defined in this document, we also recommend reviewing Apple's official coding guidelines.
Beyond the guidelines defined in this document, we also recommend reviewing the Apple official coding guidelines.

* [Programming with Objective-C](http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/ObjectiveC/Introduction/introObjectiveC.html)
* [Cocoa Fundamentals Guide](https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/CocoaFundamentals/Introduction/Introduction.html)
* [Coding Guidelines for Cocoa](https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/CodingGuidelines/CodingGuidelines.html)
* [App Programming Guide for iOS](http://developer.apple.com/library/ios/#documentation/iphone/conceptual/iphoneosprogrammingguide/Introduction/Introduction.html)

### MAS Products
### iOS Mobile SDK

For more information about MAS, see [Mobile App Service developer](http://mas.ca.com).

Mobile App Services consists of multiple functional products separated into individual frameworks.
The iOS Mobile SDK consists these frameworks.

* MASFoundation
* MASUI
* MASConnecta
* MASIdentityManagement
* MASStorage

All of frameworks are recommended to comply with the coding guideline.
All of frameworks are recommended to comply with the coding guideline. For more information about the iOS Mobile SDK, see [developer website](http://mas.ca.com).

## Table of Contents

Expand Down Expand Up @@ -346,7 +344,7 @@ typedef NS_ENUM(NSInteger, MASRequestResponseType)
+ (MASObject *)currentObject;

- (void)setObject:(id)object forKeyedSubscript:(id <NSCopying>)key;
```
```

**Not:**

Expand All @@ -356,7 +354,7 @@ typedef NS_ENUM(NSInteger, MASRequestResponseType)
+(MASObject*)currentObject;

-(void)setObject:(id)object forKeyedSubscript:(id<NSCopying>)key;
```
```

#### Newline

Expand Down
Loading