├── .gitignore ├── .swift-version ├── CHANGELOG.md ├── Example ├── Podfile ├── Podfile.lock ├── Pods │ ├── EncryptedCoreData │ │ ├── Incremental Store │ │ │ ├── EncryptedStore.h │ │ │ └── EncryptedStore.m │ │ ├── LICENSE │ │ └── README.md │ ├── Kiwi │ │ ├── Classes │ │ │ ├── Config │ │ │ │ ├── KWAllTestsSuite.m │ │ │ │ ├── KWSuiteConfigurationBase.h │ │ │ │ └── KWSuiteConfigurationBase.m │ │ │ ├── Core │ │ │ │ ├── KWAny.h │ │ │ │ ├── KWAny.m │ │ │ │ ├── KWBackgroundTask.h │ │ │ │ ├── KWBackgroundTask.m │ │ │ │ ├── KWBlock.h │ │ │ │ ├── KWBlock.m │ │ │ │ ├── KWCallSite.h │ │ │ │ ├── KWCallSite.m │ │ │ │ ├── KWCaptureSpy.h │ │ │ │ ├── KWCaptureSpy.m │ │ │ │ ├── KWCountType.h │ │ │ │ ├── KWDeviceInfo.h │ │ │ │ ├── KWDeviceInfo.m │ │ │ │ ├── KWExample.h │ │ │ │ ├── KWExample.m │ │ │ │ ├── KWExampleDelegate.h │ │ │ │ ├── KWExampleNodeVisitor.h │ │ │ │ ├── KWExampleSuite.h │ │ │ │ ├── KWExampleSuite.m │ │ │ │ ├── KWExampleSuiteBuilder.h │ │ │ │ ├── KWExampleSuiteBuilder.m │ │ │ │ ├── KWExpectationType.h │ │ │ │ ├── KWFailure.h │ │ │ │ ├── KWFailure.m │ │ │ │ ├── KWFormatter.h │ │ │ │ ├── KWFormatter.m │ │ │ │ ├── KWFutureObject.h │ │ │ │ ├── KWFutureObject.m │ │ │ │ ├── KWInvocationCapturer.h │ │ │ │ ├── KWInvocationCapturer.m │ │ │ │ ├── KWLet.h │ │ │ │ ├── KWMatcher.h │ │ │ │ ├── KWMatcher.m │ │ │ │ ├── KWMatcherFactory.h │ │ │ │ ├── KWMatcherFactory.m │ │ │ │ ├── KWMatchers.h │ │ │ │ ├── KWMatchers.m │ │ │ │ ├── KWMatching.h │ │ │ │ ├── KWMessagePattern.h │ │ │ │ ├── KWMessagePattern.m │ │ │ │ ├── KWMessageSpying.h │ │ │ │ ├── KWMessageTracker.h │ │ │ │ ├── KWMessageTracker.m │ │ │ │ ├── KWNull.h │ │ │ │ ├── KWNull.m │ │ │ │ ├── KWObjCUtilities.h │ │ │ │ ├── KWObjCUtilities.m │ │ │ │ ├── KWProbe.h │ │ │ │ ├── KWProbePoller.h │ │ │ │ ├── KWProbePoller.m │ │ │ │ ├── KWReporting.h │ │ │ │ ├── KWSpec.h │ │ │ │ ├── KWSpec.m │ │ │ │ ├── KWStringUtilities.h │ │ │ │ ├── KWStringUtilities.m │ │ │ │ ├── KWSymbolicator.h │ │ │ │ ├── KWSymbolicator.m │ │ │ │ ├── KWValue.h │ │ │ │ ├── KWValue.m │ │ │ │ ├── KWWorkarounds.h │ │ │ │ ├── KWWorkarounds.m │ │ │ │ ├── Kiwi.h │ │ │ │ ├── KiwiBlockMacros.h │ │ │ │ ├── KiwiConfiguration.h │ │ │ │ ├── KiwiMacros.h │ │ │ │ ├── NSInvocation+KiwiAdditions.h │ │ │ │ ├── NSInvocation+KiwiAdditions.m │ │ │ │ ├── NSInvocation+OCMAdditions.h │ │ │ │ ├── NSInvocation+OCMAdditions.m │ │ │ │ ├── NSMethodSignature+KiwiAdditions.h │ │ │ │ ├── NSMethodSignature+KiwiAdditions.m │ │ │ │ ├── NSNumber+KiwiAdditions.h │ │ │ │ ├── NSNumber+KiwiAdditions.m │ │ │ │ ├── NSObject+KiwiSpyAdditions.h │ │ │ │ ├── NSObject+KiwiSpyAdditions.m │ │ │ │ ├── NSObject+KiwiVerifierAdditions.h │ │ │ │ ├── NSObject+KiwiVerifierAdditions.m │ │ │ │ ├── NSProxy+KiwiVerifierAdditions.h │ │ │ │ ├── NSProxy+KiwiVerifierAdditions.m │ │ │ │ ├── NSValue+KiwiAdditions.h │ │ │ │ └── NSValue+KiwiAdditions.m │ │ │ ├── Matchers │ │ │ │ ├── KWBeBetweenMatcher.h │ │ │ │ ├── KWBeBetweenMatcher.m │ │ │ │ ├── KWBeEmptyMatcher.h │ │ │ │ ├── KWBeEmptyMatcher.m │ │ │ │ ├── KWBeIdenticalToMatcher.h │ │ │ │ ├── KWBeIdenticalToMatcher.m │ │ │ │ ├── KWBeKindOfClassMatcher.h │ │ │ │ ├── KWBeKindOfClassMatcher.m │ │ │ │ ├── KWBeMemberOfClassMatcher.h │ │ │ │ ├── KWBeMemberOfClassMatcher.m │ │ │ │ ├── KWBeSubclassOfClassMatcher.h │ │ │ │ ├── KWBeSubclassOfClassMatcher.m │ │ │ │ ├── KWBeTrueMatcher.h │ │ │ │ ├── KWBeTrueMatcher.m │ │ │ │ ├── KWBeWithinMatcher.h │ │ │ │ ├── KWBeWithinMatcher.m │ │ │ │ ├── KWBeZeroMatcher.h │ │ │ │ ├── KWBeZeroMatcher.m │ │ │ │ ├── KWBlockRaiseMatcher.h │ │ │ │ ├── KWBlockRaiseMatcher.m │ │ │ │ ├── KWChangeMatcher.h │ │ │ │ ├── KWChangeMatcher.m │ │ │ │ ├── KWConformToProtocolMatcher.h │ │ │ │ ├── KWConformToProtocolMatcher.m │ │ │ │ ├── KWContainMatcher.h │ │ │ │ ├── KWContainMatcher.m │ │ │ │ ├── KWContainStringMatcher.h │ │ │ │ ├── KWContainStringMatcher.m │ │ │ │ ├── KWEqualMatcher.h │ │ │ │ ├── KWEqualMatcher.m │ │ │ │ ├── KWGenericMatchEvaluator.h │ │ │ │ ├── KWGenericMatchEvaluator.m │ │ │ │ ├── KWGenericMatcher.h │ │ │ │ ├── KWGenericMatcher.m │ │ │ │ ├── KWGenericMatchingAdditions.h │ │ │ │ ├── KWGenericMatchingAdditions.m │ │ │ │ ├── KWHaveMatcher.h │ │ │ │ ├── KWHaveMatcher.m │ │ │ │ ├── KWHaveValueMatcher.h │ │ │ │ ├── KWHaveValueMatcher.m │ │ │ │ ├── KWInequalityMatcher.h │ │ │ │ ├── KWInequalityMatcher.m │ │ │ │ ├── KWNilMatcher.h │ │ │ │ ├── KWNilMatcher.m │ │ │ │ ├── KWNotificationMatcher.h │ │ │ │ ├── KWNotificationMatcher.m │ │ │ │ ├── KWReceiveMatcher.h │ │ │ │ ├── KWReceiveMatcher.m │ │ │ │ ├── KWRegularExpressionPatternMatcher.h │ │ │ │ ├── KWRegularExpressionPatternMatcher.m │ │ │ │ ├── KWRespondToSelectorMatcher.h │ │ │ │ ├── KWRespondToSelectorMatcher.m │ │ │ │ ├── KWStringContainsMatcher.h │ │ │ │ ├── KWStringContainsMatcher.m │ │ │ │ ├── KWStringPrefixMatcher.h │ │ │ │ ├── KWStringPrefixMatcher.m │ │ │ │ ├── KWUserDefinedMatcher.h │ │ │ │ └── KWUserDefinedMatcher.m │ │ │ ├── Mocking │ │ │ │ ├── KWMock.h │ │ │ │ ├── KWMock.m │ │ │ │ ├── NSObject+KiwiMockAdditions.h │ │ │ │ └── NSObject+KiwiMockAdditions.m │ │ │ ├── Nodes │ │ │ │ ├── KWAfterAllNode.h │ │ │ │ ├── KWAfterAllNode.m │ │ │ │ ├── KWAfterEachNode.h │ │ │ │ ├── KWAfterEachNode.m │ │ │ │ ├── KWBeforeAllNode.h │ │ │ │ ├── KWBeforeAllNode.m │ │ │ │ ├── KWBeforeEachNode.h │ │ │ │ ├── KWBeforeEachNode.m │ │ │ │ ├── KWBlockNode.h │ │ │ │ ├── KWBlockNode.m │ │ │ │ ├── KWContextNode.h │ │ │ │ ├── KWContextNode.m │ │ │ │ ├── KWExampleNode.h │ │ │ │ ├── KWItNode.h │ │ │ │ ├── KWItNode.m │ │ │ │ ├── KWLetNode.h │ │ │ │ ├── KWLetNode.m │ │ │ │ ├── KWPendingNode.h │ │ │ │ ├── KWPendingNode.m │ │ │ │ ├── KWRegisterMatchersNode.h │ │ │ │ └── KWRegisterMatchersNode.m │ │ │ ├── Shared Examples │ │ │ │ ├── KWSharedExample.h │ │ │ │ ├── KWSharedExample.m │ │ │ │ ├── KWSharedExampleRegistry.h │ │ │ │ └── KWSharedExampleRegistry.m │ │ │ ├── Stubbing │ │ │ │ ├── KWIntercept.h │ │ │ │ ├── KWIntercept.m │ │ │ │ ├── KWStub.h │ │ │ │ ├── KWStub.m │ │ │ │ ├── NSObject+KiwiStubAdditions.h │ │ │ │ └── NSObject+KiwiStubAdditions.m │ │ │ └── Verifiers │ │ │ │ ├── KWAsyncVerifier.h │ │ │ │ ├── KWAsyncVerifier.m │ │ │ │ ├── KWExistVerifier.h │ │ │ │ ├── KWExistVerifier.m │ │ │ │ ├── KWMatchVerifier.h │ │ │ │ ├── KWMatchVerifier.m │ │ │ │ └── KWVerifying.h │ │ ├── License.txt │ │ └── Readme.md │ ├── Local Podspecs │ │ ├── EncryptedCoreData.podspec.json │ │ └── HealthVault.podspec.json │ ├── Manifest.lock │ ├── Pods.xcodeproj │ │ ├── project.pbxproj │ │ └── xcshareddata │ │ │ └── xcschemes │ │ │ ├── HealthVault-Tests.xcscheme │ │ │ └── HealthVault.xcscheme │ ├── SQLCipher │ │ ├── LICENSE │ │ ├── README.md │ │ ├── sqlite3.c │ │ └── sqlite3.h │ └── Target Support Files │ │ ├── EncryptedCoreData │ │ ├── EncryptedCoreData-dummy.m │ │ ├── EncryptedCoreData-prefix.pch │ │ ├── EncryptedCoreData-umbrella.h │ │ ├── EncryptedCoreData.modulemap │ │ ├── EncryptedCoreData.xcconfig │ │ └── Info.plist │ │ ├── HealthVault-Tests │ │ ├── HealthVault-Tests-dummy.m │ │ ├── HealthVault-Tests-prefix.pch │ │ ├── HealthVault-Tests-umbrella.h │ │ ├── HealthVault-Tests.modulemap │ │ ├── HealthVault-Tests.xcconfig │ │ └── Info.plist │ │ ├── HealthVault │ │ ├── HealthVault-dummy.m │ │ ├── HealthVault-prefix.pch │ │ ├── HealthVault-umbrella.h │ │ ├── HealthVault.modulemap │ │ ├── HealthVault.xcconfig │ │ └── Info.plist │ │ ├── Kiwi │ │ ├── Info.plist │ │ ├── Kiwi-dummy.m │ │ ├── Kiwi-prefix.pch │ │ ├── Kiwi-umbrella.h │ │ ├── Kiwi.modulemap │ │ └── Kiwi.xcconfig │ │ ├── Pods-healthvault-ios-sdk_Example │ │ ├── Info.plist │ │ ├── Pods-healthvault-ios-sdk_Example-acknowledgements.markdown │ │ ├── Pods-healthvault-ios-sdk_Example-acknowledgements.plist │ │ ├── Pods-healthvault-ios-sdk_Example-dummy.m │ │ ├── Pods-healthvault-ios-sdk_Example-frameworks.sh │ │ ├── Pods-healthvault-ios-sdk_Example-resources.sh │ │ ├── Pods-healthvault-ios-sdk_Example-umbrella.h │ │ ├── Pods-healthvault-ios-sdk_Example.debug.xcconfig │ │ ├── Pods-healthvault-ios-sdk_Example.modulemap │ │ └── Pods-healthvault-ios-sdk_Example.release.xcconfig │ │ ├── Pods-healthvault-ios-sdk_Tests │ │ ├── Info.plist │ │ ├── Pods-healthvault-ios-sdk_Tests-acknowledgements.markdown │ │ ├── Pods-healthvault-ios-sdk_Tests-acknowledgements.plist │ │ ├── Pods-healthvault-ios-sdk_Tests-dummy.m │ │ ├── Pods-healthvault-ios-sdk_Tests-frameworks.sh │ │ ├── Pods-healthvault-ios-sdk_Tests-resources.sh │ │ ├── Pods-healthvault-ios-sdk_Tests-umbrella.h │ │ ├── Pods-healthvault-ios-sdk_Tests.debug.xcconfig │ │ ├── Pods-healthvault-ios-sdk_Tests.modulemap │ │ └── Pods-healthvault-ios-sdk_Tests.release.xcconfig │ │ └── SQLCipher │ │ ├── Info.plist │ │ ├── SQLCipher-dummy.m │ │ ├── SQLCipher-prefix.pch │ │ ├── SQLCipher-umbrella.h │ │ ├── SQLCipher.modulemap │ │ └── SQLCipher.xcconfig ├── Tests │ ├── Authentication │ │ ├── MHVBrowserAuthBrokerTests.m │ │ └── MHVShellAuthServiceTests.m │ ├── Caching │ │ ├── MHVCacheQueryTests.m │ │ ├── MHVMockDatabase.h │ │ ├── MHVMockDatabase.m │ │ ├── MHVThingCacheDatabaseTests.m │ │ ├── MHVThingCacheQueryTests.m │ │ └── MHVThingCacheSynchronizerTests.m │ ├── Clients │ │ ├── MHVPersonClientTests.m │ │ ├── MHVThingClientBlobFileTests.m │ │ ├── MHVThingClientBlobTests.m │ │ ├── MHVThingClientTests.m │ │ └── MHVVocabularyClientTests.m │ ├── Connection │ │ ├── MHVConnectionTests.m │ │ └── MHVSodaConnectionTests.m │ ├── HTTP │ │ ├── MHVHttpServiceTests.m │ │ └── MHVHttpTaskTests.m │ ├── MHVLibTests.m │ ├── MHVPlatformClientTests.m │ ├── Models │ │ ├── MHVModelBaseTests.m │ │ └── MHVZonedDateTimeTests.m │ ├── Tests-Info.plist │ ├── Tests-Prefix.pch │ ├── ThingTypes │ │ ├── MHVAdvanceDirectiveTests.m │ │ ├── MHVAerobicProfileTests.m │ │ ├── MHVAllergicEpisodeTests.m │ │ ├── MHVAppSpecificInformationTests.m │ │ ├── MHVAppointmentTests.m │ │ ├── MHVAsthmaInhalerTests.m │ │ ├── MHVAsthmaInhalerUsageTests.m │ │ ├── MHVBodyCompositionTests.m │ │ ├── MHVBodyDimensionTests.m │ │ ├── MHVConcernsTests.m │ │ ├── MHVExplanationOfBenefitsTests.m │ │ ├── MHVHealthGoalTests.m │ │ ├── MHVMedicalDeviceTests.m │ │ ├── MHVMedicalImageStudyTests.m │ │ ├── MHVMenstruationTests.m │ │ ├── MHVPlanTests.m │ │ ├── MHVPregnancyTests.m │ │ ├── MHVTaskThingTests.m │ │ ├── MHVTaskTrackingEntryTests.m │ │ └── MHVTimeTests.m │ ├── XML │ │ └── MHVXmlTests.m │ └── en.lproj │ │ └── InfoPlist.strings ├── healthvault-ios-sdk.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ └── contents.xcworkspacedata │ └── xcshareddata │ │ └── xcschemes │ │ └── healthvault-ios-sdk-Example.xcscheme ├── healthvault-ios-sdk.xcworkspace │ └── contents.xcworkspacedata └── healthvault-ios-sdk │ ├── Base.lproj │ ├── LaunchScreen.storyboard │ └── Main.storyboard │ ├── Images.xcassets │ └── AppIcon.appiconset │ │ ├── Contents.json │ │ ├── hv-sample-icon@2x.png │ │ └── hv-sample-icon@3x.png │ ├── MHVAppDelegate.h │ ├── MHVAppDelegate.m │ ├── MHVBloodGlucoseFactory.h │ ├── MHVBloodGlucoseFactory.m │ ├── MHVBloodPressureFactory.h │ ├── MHVBloodPressureFactory.m │ ├── MHVCholesterolFactory.h │ ├── MHVCholesterolFactory.m │ ├── MHVConditionFactory.h │ ├── MHVConditionFactory.m │ ├── MHVDietaryIntakeFactory.h │ ├── MHVDietaryIntakeFactory.m │ ├── MHVEmotionalStateFactory.h │ ├── MHVEmotionalStateFactory.m │ ├── MHVExerciseFactory.h │ ├── MHVExerciseFactory.m │ ├── MHVFeatureActions.h │ ├── MHVFeatureActions.m │ ├── MHVFeaturesConfiguration.h │ ├── MHVFeaturesConfiguration.m │ ├── MHVFeaturesConstants.h │ ├── MHVFileFactory.h │ ├── MHVFileFactory.m │ ├── MHVFileFeatures.h │ ├── MHVFileFeatures.m │ ├── MHVHeartRateFactory.h │ ├── MHVHeartRateFactory.m │ ├── MHVImmunizationFactory.h │ ├── MHVImmunizationFactory.m │ ├── MHVMedicationFactory.h │ ├── MHVMedicationFactory.m │ ├── MHVMedicationUsageFactory.h │ ├── MHVMedicationUsageFactory.m │ ├── MHVMoreFeatures.h │ ├── MHVMoreFeatures.m │ ├── MHVPersonalImageFactory.h │ ├── MHVPersonalImageFactory.m │ ├── MHVPersonalImageFeatures.h │ ├── MHVPersonalImageFeatures.m │ ├── MHVProcedureFactory.h │ ├── MHVProcedureFactory.m │ ├── MHVRandom.h │ ├── MHVRandom.m │ ├── MHVSleepJournalAMFactory.h │ ├── MHVSleepJournalAMFactory.m │ ├── MHVStatusLabel.h │ ├── MHVStatusLabel.m │ ├── MHVThingDataTypedFactory.h │ ├── MHVThingDataTypedFactory.m │ ├── MHVThingDataTypedFeatures.h │ ├── MHVThingDataTypedFeatures.m │ ├── MHVThingTestExtensions.h │ ├── MHVThingTestExtensions.m │ ├── MHVUIAlert.h │ ├── MHVUIAlert.m │ ├── MHVWeightFactory.h │ ├── MHVWeightFactory.m │ ├── SDKFeatures-Info.plist │ ├── SDKFeatures-Prefix.pch │ ├── ViewControllers │ ├── ActionPlanTasks │ │ ├── MHVActionPlanTaskDetailViewController.h │ │ ├── MHVActionPlanTaskDetailViewController.m │ │ ├── MHVActionPlanTaskDetailViewController.xib │ │ ├── MHVActionPlanTaskListViewController.h │ │ ├── MHVActionPlanTaskListViewController.m │ │ └── MHVActionPlanTaskListViewController.xib │ ├── ActionPlans │ │ ├── MHVActionPlanDetailViewController.h │ │ ├── MHVActionPlanDetailViewController.m │ │ ├── MHVActionPlanDetailViewController.xib │ │ ├── MHVActionPlansListViewController.h │ │ ├── MHVActionPlansListViewController.m │ │ └── MHVActionPlansListViewController.xib │ ├── Goals │ │ ├── MHVGoalAddViewController.h │ │ ├── MHVGoalAddViewController.m │ │ ├── MHVGoalAddViewController.xib │ │ ├── MHVGoalDetailViewController.h │ │ ├── MHVGoalDetailViewController.m │ │ ├── MHVGoalDetailViewController.xib │ │ ├── MHVGoalsListViewController.h │ │ ├── MHVGoalsListViewController.m │ │ └── MHVGoalsListViewController.xib │ ├── GoalsRecommendations │ │ ├── MHVGoalsRecommendationsDetailViewController.h │ │ ├── MHVGoalsRecommendationsDetailViewController.m │ │ ├── MHVGoalsRecommendationsDetailViewController.xib │ │ ├── MHVGoalsRecommendationsListViewController.h │ │ ├── MHVGoalsRecommendationsListViewController.m │ │ └── MHVGoalsRecommendationsListViewController.xib │ ├── MHVImageViewController.swift │ ├── MHVImageViewController.xib │ ├── MHVRecordListViewController.swift │ ├── MHVRecordListViewController.xib │ ├── MHVTypeListViewController.h │ ├── MHVTypeListViewController.m │ ├── MHVTypeListViewController.xib │ ├── MHVTypeViewController.h │ ├── MHVTypeViewController.m │ ├── MHVTypeViewController.xib │ ├── MHVViewController.h │ ├── MHVViewController.m │ ├── MHVViewController.xib │ └── Timeline │ │ ├── MHVTimelineSnapshotViewController.h │ │ ├── MHVTimelineSnapshotViewController.m │ │ └── MHVTimelineSnapshotViewController.xib │ ├── en.lproj │ └── InfoPlist.strings │ ├── healthvault-ios-sdk-Info.plist │ ├── healthvault-ios-sdk-Prefix.pch │ ├── healthvault_ios_sdk_Example-Bridging-Header.h │ └── main.m ├── HealthVault.podspec ├── HealthVault ├── Assets │ ├── .gitkeep │ └── MHVThingCacheDatabase.xcdatamodeld │ │ └── MHVThingCacheDatabase.xcdatamodel │ │ └── contents ├── Classes │ ├── Caching │ │ ├── MHVCacheStatusProtocol.h │ │ ├── MHVThingCacheConfiguration.h │ │ ├── MHVThingCacheConfiguration.m │ │ ├── MHVThingCacheConfigurationProtocol.h │ │ ├── MHVThingCacheDatabaseProtocol.h │ │ └── Private │ │ │ ├── CoreData │ │ │ ├── MHVCachedRecord+CoreDataClass.h │ │ │ ├── MHVCachedRecord+CoreDataClass.m │ │ │ ├── MHVCachedRecord+CoreDataProperties.h │ │ │ ├── MHVCachedRecord+CoreDataProperties.m │ │ │ ├── MHVCachedThing+CoreDataClass.h │ │ │ ├── MHVCachedThing+CoreDataClass.m │ │ │ ├── MHVCachedThing+CoreDataProperties.h │ │ │ ├── MHVCachedThing+CoreDataProperties.m │ │ │ ├── MHVPendingThingOperation+CoreDataClass.h │ │ │ ├── MHVPendingThingOperation+CoreDataClass.m │ │ │ ├── MHVPendingThingOperation+CoreDataProperties.h │ │ │ ├── MHVPendingThingOperation+CoreDataProperties.m │ │ │ ├── MHVThingCacheDatabase+CoreDataModel.h │ │ │ ├── MHVThingCacheDatabase+CoreDataModel.m │ │ │ └── MHVThingCacheSynchronizerProtocol.h │ │ │ ├── MHVCacheConstants.h │ │ │ ├── MHVCacheQuery.h │ │ │ ├── MHVCacheQuery.m │ │ │ ├── MHVCacheStatus.h │ │ │ ├── MHVCacheStatus.m │ │ │ ├── MHVCachedRecord+Cache.h │ │ │ ├── MHVCachedRecord+Cache.m │ │ │ ├── MHVCachedThing+Cache.h │ │ │ ├── MHVCachedThing+Cache.m │ │ │ ├── MHVThingCache.h │ │ │ ├── MHVThingCache.m │ │ │ ├── MHVThingCacheDatabase.h │ │ │ ├── MHVThingCacheDatabase.m │ │ │ ├── MHVThingCacheProtocol.h │ │ │ ├── MHVThingCacheSynchronizer.h │ │ │ ├── MHVThingCacheSynchronizer.m │ │ │ └── Network │ │ │ ├── MHVNetworkObserver.h │ │ │ ├── MHVNetworkObserver.m │ │ │ └── MHVNetworkObserverProtocol.h │ ├── Clients │ │ ├── MHVClientProtocol.h │ │ ├── MHVClients.h │ │ ├── MHVPersonClientProtocol.h │ │ ├── MHVPlatformClientProtocol.h │ │ ├── MHVRemoteMonitoringClient.h │ │ ├── MHVRemoteMonitoringClient.m │ │ ├── MHVRemoteMonitoringClientProtocol.h │ │ ├── MHVThingClientProtocol.h │ │ ├── MHVVocabularyClientProtocol.h │ │ └── Private │ │ │ ├── MHVClientFactory.h │ │ │ ├── MHVClientFactory.m │ │ │ ├── MHVPersonClient.h │ │ │ ├── MHVPersonClient.m │ │ │ ├── MHVPlatformClient.h │ │ │ ├── MHVPlatformClient.m │ │ │ ├── MHVThingClient.h │ │ │ ├── MHVThingClient.m │ │ │ ├── MHVVocabularyClient.h │ │ │ └── MHVVocabularyClient.m │ ├── Configuration │ │ ├── MHVConfiguration.h │ │ ├── MHVConfiguration.m │ │ └── MHVConfigurationConstants.h │ ├── Connection │ │ ├── MHVConnectionFactory.h │ │ ├── MHVConnectionFactory.m │ │ ├── MHVConnectionFactoryProtocol.h │ │ ├── MHVConnectionProtocol.h │ │ ├── MHVConnections.h │ │ ├── MHVSodaConnectionProtocol.h │ │ └── Private │ │ │ ├── MHVConnection.h │ │ │ ├── MHVConnection.m │ │ │ ├── MHVConnectionFactoryInternal.h │ │ │ ├── MHVConnectionFactoryInternal.m │ │ │ ├── MHVSessionCredential.h │ │ │ ├── MHVSessionCredential.m │ │ │ ├── MHVSessionCredentialClient.h │ │ │ ├── MHVSessionCredentialClient.m │ │ │ ├── MHVSessionCredentialClientProtocol.h │ │ │ ├── MHVSodaConnection.h │ │ │ └── MHVSodaConnection.m │ ├── Errors │ │ ├── MHVErrorConstants.h │ │ └── Private │ │ │ ├── NSError+MHVError.h │ │ │ └── NSError+MHVError.m │ ├── Headers │ │ ├── HealthVault.h │ │ └── MHVRestApi.h │ ├── Json │ │ ├── MHVJsonCacheItem.h │ │ ├── MHVJsonCacheItem.m │ │ ├── MHVJsonCacheRetainObjectProtocol.h │ │ ├── MHVJsonCacheService.h │ │ ├── MHVJsonCacheService.m │ │ ├── MHVJsonEnumProtocol.h │ │ ├── MHVJsonEnums.h │ │ ├── MHVJsonSerializer.h │ │ ├── MHVJsonSerializer.m │ │ ├── MHVPropertyIntrospection.h │ │ └── MHVPropertyIntrospection.m │ ├── Models │ │ ├── Categories │ │ │ ├── NSArray+DataModel.h │ │ │ ├── NSArray+DataModel.m │ │ │ ├── NSArray+MHVEnum.h │ │ │ ├── NSArray+MHVEnum.m │ │ │ ├── NSArray+Utils.h │ │ │ ├── NSArray+Utils.m │ │ │ ├── NSData+DataModel.h │ │ │ ├── NSData+DataModel.m │ │ │ ├── NSData+Utils.h │ │ │ ├── NSData+Utils.m │ │ │ ├── NSDate+DataModel.h │ │ │ ├── NSDate+DataModel.m │ │ │ ├── NSDictionary+DataModel.h │ │ │ ├── NSDictionary+DataModel.m │ │ │ ├── NSNull+DataModel.h │ │ │ ├── NSNull+DataModel.m │ │ │ ├── NSNumber+DataModel.h │ │ │ ├── NSNumber+DataModel.m │ │ │ ├── NSSet+DataModel.h │ │ │ ├── NSSet+DataModel.m │ │ │ ├── NSString+DataModel.h │ │ │ ├── NSString+DataModel.m │ │ │ ├── NSUUID+DataModel.h │ │ │ └── NSUUID+DataModel.m │ │ ├── Generated │ │ │ ├── Categories │ │ │ │ ├── MHVActionPlanTasksApi.h │ │ │ │ ├── MHVActionPlanTasksApi.m │ │ │ │ ├── MHVActionPlansApi.h │ │ │ │ ├── MHVActionPlansApi.m │ │ │ │ ├── MHVGoalsApi.h │ │ │ │ ├── MHVGoalsApi.m │ │ │ │ ├── MHVGoalsRecommendationsApi.h │ │ │ │ ├── MHVGoalsRecommendationsApi.m │ │ │ │ ├── MHVTaskTrackingApi.h │ │ │ │ ├── MHVTaskTrackingApi.m │ │ │ │ ├── MHVTimelineApi.h │ │ │ │ └── MHVTimelineApi.m │ │ │ ├── MHVActionPlan.h │ │ │ ├── MHVActionPlan.m │ │ │ ├── MHVActionPlanAdherenceSummary.h │ │ │ ├── MHVActionPlanAdherenceSummary.m │ │ │ ├── MHVActionPlanFrequencyTaskCompletionMetrics.h │ │ │ ├── MHVActionPlanFrequencyTaskCompletionMetrics.m │ │ │ ├── MHVActionPlanInstance.h │ │ │ ├── MHVActionPlanInstance.m │ │ │ ├── MHVActionPlanRangeMetric.h │ │ │ ├── MHVActionPlanRangeMetric.m │ │ │ ├── MHVActionPlanScheduledTaskCompletionMetrics.h │ │ │ ├── MHVActionPlanScheduledTaskCompletionMetrics.m │ │ │ ├── MHVActionPlanTask.h │ │ │ ├── MHVActionPlanTask.m │ │ │ ├── MHVActionPlanTaskAdherenceSummary.h │ │ │ ├── MHVActionPlanTaskAdherenceSummary.m │ │ │ ├── MHVActionPlanTaskInstance.h │ │ │ ├── MHVActionPlanTaskInstance.m │ │ │ ├── MHVActionPlanTaskOccurrenceMetrics.h │ │ │ ├── MHVActionPlanTaskOccurrenceMetrics.m │ │ │ ├── MHVActionPlanTaskTargetEvent.h │ │ │ ├── MHVActionPlanTaskTargetEvent.m │ │ │ ├── MHVActionPlanTaskTracking.h │ │ │ ├── MHVActionPlanTaskTracking.m │ │ │ ├── MHVActionPlanTaskTrackingEvidence.h │ │ │ ├── MHVActionPlanTaskTrackingEvidence.m │ │ │ ├── MHVActionPlanTaskTrackingResponseActionPlanTaskTracking_.h │ │ │ ├── MHVActionPlanTaskTrackingResponseActionPlanTaskTracking_.m │ │ │ ├── MHVActionPlanTasksResponseActionPlanTaskInstance_.h │ │ │ ├── MHVActionPlanTasksResponseActionPlanTaskInstance_.m │ │ │ ├── MHVActionPlanTasksResponseTimelineTask_.h │ │ │ ├── MHVActionPlanTasksResponseTimelineTask_.m │ │ │ ├── MHVActionPlanTrackingPolicy.h │ │ │ ├── MHVActionPlanTrackingPolicy.m │ │ │ ├── MHVActionPlansResponseActionPlanInstance_.h │ │ │ ├── MHVActionPlansResponseActionPlanInstance_.m │ │ │ ├── MHVErrorInformation.h │ │ │ ├── MHVErrorInformation.m │ │ │ ├── MHVErrorResponse.h │ │ │ ├── MHVErrorResponse.m │ │ │ ├── MHVGoal.h │ │ │ ├── MHVGoal.m │ │ │ ├── MHVGoalRange.h │ │ │ ├── MHVGoalRange.m │ │ │ ├── MHVGoalRecommendation.h │ │ │ ├── MHVGoalRecommendation.m │ │ │ ├── MHVGoalRecommendationInstance.h │ │ │ ├── MHVGoalRecommendationInstance.m │ │ │ ├── MHVGoalRecommendationsResponse.h │ │ │ ├── MHVGoalRecommendationsResponse.m │ │ │ ├── MHVGoalRecurrenceMetrics.h │ │ │ ├── MHVGoalRecurrenceMetrics.m │ │ │ ├── MHVGoalsResponse.h │ │ │ ├── MHVGoalsResponse.m │ │ │ ├── MHVGoalsWrapper.h │ │ │ ├── MHVGoalsWrapper.m │ │ │ ├── MHVObjective.h │ │ │ ├── MHVObjective.m │ │ │ ├── MHVObjectiveAdherenceSummary.h │ │ │ ├── MHVObjectiveAdherenceSummary.m │ │ │ ├── MHVSchedule.h │ │ │ ├── MHVSchedule.m │ │ │ ├── MHVTaskTrackingOccurrence.h │ │ │ ├── MHVTaskTrackingOccurrence.m │ │ │ ├── MHVTimelineSchedule.h │ │ │ ├── MHVTimelineSchedule.m │ │ │ ├── MHVTimelineScheduleOccurrence.h │ │ │ ├── MHVTimelineScheduleOccurrence.m │ │ │ ├── MHVTimelineSnapshot.h │ │ │ ├── MHVTimelineSnapshot.m │ │ │ ├── MHVTimelineSnapshotCompletionMetrics.h │ │ │ ├── MHVTimelineSnapshotCompletionMetrics.m │ │ │ ├── MHVTimelineTask.h │ │ │ ├── MHVTimelineTask.m │ │ │ ├── MHVTrackingValidation.h │ │ │ ├── MHVTrackingValidation.m │ │ │ ├── MHVWeeklyAdherenceSummary.h │ │ │ └── MHVWeeklyAdherenceSummary.m │ │ ├── MHVDataModelDynamicClass.h │ │ ├── MHVDataModelProtocol.h │ │ ├── MHVDateTimeBase.h │ │ ├── MHVDateTimeBase.m │ │ ├── MHVDateTimeDuration.h │ │ ├── MHVDateTimeDuration.m │ │ ├── MHVEnum.h │ │ ├── MHVEnum.m │ │ ├── MHVInstant.h │ │ ├── MHVInstant.m │ │ ├── MHVLocalDate.h │ │ ├── MHVLocalDate.m │ │ ├── MHVLocalDateTime.h │ │ ├── MHVLocalDateTime.m │ │ ├── MHVModelBase.h │ │ ├── MHVModelBase.m │ │ ├── MHVZonedDateTime.h │ │ └── MHVZonedDateTime.m │ ├── PlatformInformation │ │ ├── MHVApplicationCreationInfo.h │ │ ├── MHVApplicationCreationInfo.m │ │ ├── MHVPlatformConstants.h │ │ ├── MHVThingConstants.h │ │ └── Private │ │ │ ├── MHVServiceDefinitionRequestParameters.h │ │ │ └── MHVServiceDefinitionRequestParameters.m │ ├── Private │ │ ├── Asynctask │ │ │ ├── MHVAsyncBlockOperation.h │ │ │ ├── MHVAsyncBlockOperation.m │ │ │ ├── MHVAsyncOperation.h │ │ │ ├── MHVAsyncOperation.m │ │ │ ├── MHVAsyncTask.h │ │ │ ├── MHVAsyncTask.m │ │ │ ├── MHVAsyncTaskCompletionSource.h │ │ │ ├── MHVAsyncTaskCompletionSource.m │ │ │ ├── MHVAsyncTaskOperation.h │ │ │ ├── MHVAsyncTaskOperation.m │ │ │ ├── MHVAsyncTaskResult.h │ │ │ ├── MHVAsyncTaskResult.m │ │ │ ├── MHVOperationBase.h │ │ │ ├── MHVOperationBase.m │ │ │ └── MHVOperationEnums.h │ │ ├── Authentication │ │ │ ├── MHVBrowserAuthBroker.h │ │ │ ├── MHVBrowserAuthBroker.m │ │ │ ├── MHVBrowserAuthBrokerProtocol.h │ │ │ ├── MHVBrowserController.h │ │ │ ├── MHVBrowserController.m │ │ │ ├── MHVShellAuthService.h │ │ │ ├── MHVShellAuthService.m │ │ │ └── MHVShellAuthServiceProtocol.h │ │ ├── Extensions │ │ │ ├── MHVDateExtensions.h │ │ │ ├── MHVDateExtensions.m │ │ │ ├── MHVDictionaryExtensions.h │ │ │ ├── MHVDictionaryExtensions.m │ │ │ ├── MHVStringExtensions.h │ │ │ ├── MHVStringExtensions.m │ │ │ ├── MHVViewExtensions.h │ │ │ └── MHVViewExtensions.m │ │ ├── HTTP │ │ │ ├── MHVHttpService.h │ │ │ ├── MHVHttpService.m │ │ │ ├── MHVHttpServiceProtocol.h │ │ │ ├── MHVHttpServiceResponse.h │ │ │ ├── MHVHttpServiceResponse.m │ │ │ ├── MHVHttpTask.h │ │ │ ├── MHVHttpTask.m │ │ │ ├── MHVHttpTaskProtocol.h │ │ │ ├── MHVServiceResponse.h │ │ │ └── MHVServiceResponse.m │ │ ├── Methods │ │ │ ├── MHVBlobDownloadRequest.h │ │ │ ├── MHVBlobDownloadRequest.m │ │ │ ├── MHVBlobUploadRequest.h │ │ │ ├── MHVBlobUploadRequest.m │ │ │ ├── MHVHttpServiceOperationProtocol.h │ │ │ ├── MHVHttpServiceRequest.h │ │ │ ├── MHVHttpServiceRequest.m │ │ │ ├── MHVMethod.h │ │ │ ├── MHVMethod.m │ │ │ ├── MHVPendingMethod.h │ │ │ ├── MHVPendingMethod.m │ │ │ ├── MHVRestRequest.h │ │ │ └── MHVRestRequest.m │ │ ├── Store │ │ │ ├── MHVKeychainService.h │ │ │ ├── MHVKeychainService.m │ │ │ └── MHVKeychainServiceProtocol.h │ │ └── Transport │ │ │ ├── MHVAuthSession.h │ │ │ ├── MHVAuthSession.m │ │ │ ├── MHVRequestMessageCreator.h │ │ │ ├── MHVRequestMessageCreator.m │ │ │ └── MHVRequestMessageCreatorProtocol.h │ ├── ThingTypes │ │ ├── Definition │ │ │ ├── MHVThingTypeDefinition.h │ │ │ ├── MHVThingTypeDefinition.m │ │ │ ├── MHVThingTypeDefinitions.h │ │ │ ├── MHVThingTypeOrderByProperty.h │ │ │ ├── MHVThingTypeOrderByProperty.m │ │ │ ├── MHVThingTypeVersionInfo.h │ │ │ ├── MHVThingTypeVersionInfo.m │ │ │ └── Private │ │ │ │ ├── MHVThingTypeDefinitionRequestParameters.h │ │ │ │ └── MHVThingTypeDefinitionRequestParameters.m │ │ ├── MHVAdvanceDirective.h │ │ ├── MHVAdvanceDirective.m │ │ ├── MHVAerobicProfile.h │ │ ├── MHVAerobicProfile.m │ │ ├── MHVAllergicEpisode.h │ │ ├── MHVAllergicEpisode.m │ │ ├── MHVAllergy.h │ │ ├── MHVAllergy.m │ │ ├── MHVAppSpecificInformation.h │ │ ├── MHVAppSpecificInformation.m │ │ ├── MHVAppointment.h │ │ ├── MHVAppointment.m │ │ ├── MHVAssessment.h │ │ ├── MHVAssessment.m │ │ ├── MHVAsthmaInhaler.h │ │ ├── MHVAsthmaInhaler.m │ │ ├── MHVAsthmaInhalerUsage.h │ │ ├── MHVAsthmaInhalerUsage.m │ │ ├── MHVBasicDemographics.h │ │ ├── MHVBasicDemographics.m │ │ ├── MHVBloodGlucose.h │ │ ├── MHVBloodGlucose.m │ │ ├── MHVBloodPressure.h │ │ ├── MHVBloodPressure.m │ │ ├── MHVBodyComposition.h │ │ ├── MHVBodyComposition.m │ │ ├── MHVBodyDimension.h │ │ ├── MHVBodyDimension.m │ │ ├── MHVCCD.h │ │ ├── MHVCCD.m │ │ ├── MHVCCR.h │ │ ├── MHVCCR.m │ │ ├── MHVCholesterol.h │ │ ├── MHVCholesterol.m │ │ ├── MHVConcern.h │ │ ├── MHVConcern.m │ │ ├── MHVCondition.h │ │ ├── MHVCondition.m │ │ ├── MHVDailyDietaryIntake.h │ │ ├── MHVDailyDietaryIntake.m │ │ ├── MHVDailyMedicationUsage.h │ │ ├── MHVDailyMedicationUsage.m │ │ ├── MHVDietaryIntake.h │ │ ├── MHVDietaryIntake.m │ │ ├── MHVEmergencyOrProviderContact.h │ │ ├── MHVEmergencyOrProviderContact.m │ │ ├── MHVEmotionalState.h │ │ ├── MHVEmotionalState.m │ │ ├── MHVEncounter.h │ │ ├── MHVEncounter.m │ │ ├── MHVExercise.h │ │ ├── MHVExercise.m │ │ ├── MHVExplanationOfBenefits.h │ │ ├── MHVExplanationOfBenefits.m │ │ ├── MHVFamilyHistory.h │ │ ├── MHVFamilyHistory.m │ │ ├── MHVFile.h │ │ ├── MHVFile.m │ │ ├── MHVHealthGoal.h │ │ ├── MHVHealthGoal.m │ │ ├── MHVHealthJournalEntry.h │ │ ├── MHVHealthJournalEntry.m │ │ ├── MHVHeartRate.h │ │ ├── MHVHeartRate.m │ │ ├── MHVHeight.h │ │ ├── MHVHeight.m │ │ ├── MHVImmunization.h │ │ ├── MHVImmunization.m │ │ ├── MHVInsight.h │ │ ├── MHVInsight.m │ │ ├── MHVInsurance.h │ │ ├── MHVInsurance.m │ │ ├── MHVLabTestResults.h │ │ ├── MHVLabTestResults.m │ │ ├── MHVMedicalDevice.h │ │ ├── MHVMedicalDevice.m │ │ ├── MHVMedication.h │ │ ├── MHVMedication.m │ │ ├── MHVMenstruation.h │ │ ├── MHVMenstruation.m │ │ ├── MHVMessage.h │ │ ├── MHVMessage.m │ │ ├── MHVPeakFlow.h │ │ ├── MHVPeakFlow.m │ │ ├── MHVPersonalContactInfo.h │ │ ├── MHVPersonalContactInfo.m │ │ ├── MHVPersonalDemographics.h │ │ ├── MHVPersonalDemographics.m │ │ ├── MHVPersonalImage.h │ │ ├── MHVPersonalImage.m │ │ ├── MHVPlan.h │ │ ├── MHVPlan.m │ │ ├── MHVPregnancy.h │ │ ├── MHVPregnancy.m │ │ ├── MHVProcedure.h │ │ ├── MHVProcedure.m │ │ ├── MHVQuestionAnswer.h │ │ ├── MHVQuestionAnswer.m │ │ ├── MHVSleepJournalAM.h │ │ ├── MHVSleepJournalAM.m │ │ ├── MHVSleepJournalPM.h │ │ ├── MHVSleepJournalPM.m │ │ ├── MHVTaskThing.h │ │ ├── MHVTaskThing.m │ │ ├── MHVTaskTrackingEntry.h │ │ ├── MHVTaskTrackingEntry.m │ │ ├── MHVThingRaw.h │ │ ├── MHVThingRaw.m │ │ ├── MHVThingTypes.h │ │ ├── MHVThingTypes.m │ │ ├── MHVVitalSigns.h │ │ ├── MHVVitalSigns.m │ │ ├── MHVWeight.h │ │ └── MHVWeight.m │ ├── Types │ │ ├── Base │ │ │ ├── MHVBaseTypes.h │ │ │ ├── MHVBool.h │ │ │ ├── MHVBool.m │ │ │ ├── MHVConstrainedDouble.h │ │ │ ├── MHVConstrainedDouble.m │ │ │ ├── MHVConstrainedInt.h │ │ │ ├── MHVConstrainedInt.m │ │ │ ├── MHVConstrainedString.h │ │ │ ├── MHVConstrainedString.m │ │ │ ├── MHVConstrainedXmlDate.h │ │ │ ├── MHVConstrainedXmlDate.m │ │ │ ├── MHVDay.h │ │ │ ├── MHVDay.m │ │ │ ├── MHVDouble.h │ │ │ ├── MHVDouble.m │ │ │ ├── MHVEmailAddress.h │ │ │ ├── MHVEmailAddress.m │ │ │ ├── MHVHour.h │ │ │ ├── MHVHour.m │ │ │ ├── MHVInt.h │ │ │ ├── MHVInt.m │ │ │ ├── MHVMillisecond.h │ │ │ ├── MHVMillisecond.m │ │ │ ├── MHVMinute.h │ │ │ ├── MHVMinute.m │ │ │ ├── MHVMonth.h │ │ │ ├── MHVMonth.m │ │ │ ├── MHVNonNegativeDouble.h │ │ │ ├── MHVNonNegativeDouble.m │ │ │ ├── MHVNonNegativeInt.h │ │ │ ├── MHVNonNegativeInt.m │ │ │ ├── MHVOneToFive.h │ │ │ ├── MHVOneToFive.m │ │ │ ├── MHVPercentage.h │ │ │ ├── MHVPercentage.m │ │ │ ├── MHVPositiveDouble.h │ │ │ ├── MHVPositiveDouble.m │ │ │ ├── MHVPositiveInt.h │ │ │ ├── MHVPositiveInt.m │ │ │ ├── MHVSecond.h │ │ │ ├── MHVSecond.m │ │ │ ├── MHVString1024.h │ │ │ ├── MHVString1024.m │ │ │ ├── MHVString128.h │ │ │ ├── MHVString128.m │ │ │ ├── MHVString255.h │ │ │ ├── MHVString255.m │ │ │ ├── MHVStringNZ256.h │ │ │ ├── MHVStringNZ256.m │ │ │ ├── MHVStringNZNW.h │ │ │ ├── MHVStringNZNW.m │ │ │ ├── MHVStringZ512.h │ │ │ ├── MHVStringZ512.m │ │ │ ├── MHVUUID.h │ │ │ ├── MHVUUID.m │ │ │ ├── MHVVocabularySearchString.h │ │ │ ├── MHVVocabularySearchString.m │ │ │ ├── MHVYear.h │ │ │ └── MHVYear.m │ │ ├── Blob │ │ │ ├── MHVBlob.h │ │ │ ├── MHVBlobHashInfo.h │ │ │ ├── MHVBlobHashInfo.m │ │ │ ├── MHVBlobInfo.h │ │ │ ├── MHVBlobInfo.m │ │ │ ├── MHVBlobPayload.h │ │ │ ├── MHVBlobPayload.m │ │ │ ├── MHVBlobPayloadThing.h │ │ │ ├── MHVBlobPayloadThing.m │ │ │ ├── MHVBlobSource.h │ │ │ ├── MHVBlobSource.m │ │ │ └── Private │ │ │ │ ├── MHVBlobPutParameters.h │ │ │ │ └── MHVBlobPutParameters.m │ │ ├── Categories │ │ │ ├── NSArray+MHVThing.h │ │ │ ├── NSArray+MHVThing.m │ │ │ ├── NSArray+MHVThingQuery.h │ │ │ ├── NSArray+MHVThingQuery.m │ │ │ ├── NSArray+MHVThingQueryResultInternal.h │ │ │ ├── NSArray+MHVThingQueryResultInternal.m │ │ │ ├── NSArray+MHVVocabularyCodeItem.h │ │ │ └── NSArray+MHVVocabularyCodeItem.m │ │ ├── Converter │ │ │ ├── MHVItemTypePropertyConverterProtocol.h │ │ │ ├── MHVLinearItemTypePropertyConverer.h │ │ │ └── MHVLinearItemTypePropertyConverer.m │ │ ├── MHVAddress.h │ │ ├── MHVAddress.m │ │ ├── MHVAlert.h │ │ ├── MHVAlert.m │ │ ├── MHVApplicationSettings.h │ │ ├── MHVApplicationSettings.m │ │ ├── MHVApproxDate.h │ │ ├── MHVApproxDate.m │ │ ├── MHVApproxDateTime.h │ │ ├── MHVApproxDateTime.m │ │ ├── MHVApproxMeasurement.h │ │ ├── MHVApproxMeasurement.m │ │ ├── MHVAssessmentField.h │ │ ├── MHVAssessmentField.m │ │ ├── MHVAudit.h │ │ ├── MHVAudit.m │ │ ├── MHVBaby.h │ │ ├── MHVBaby.m │ │ ├── MHVBloodGlucoseMeasurement.h │ │ ├── MHVBloodGlucoseMeasurement.m │ │ ├── MHVBodyCompositionValue.h │ │ ├── MHVBodyCompositionValue.m │ │ ├── MHVClaimAmounts.h │ │ ├── MHVClaimAmounts.m │ │ ├── MHVCodableValue.h │ │ ├── MHVCodableValue.m │ │ ├── MHVCodedValue.h │ │ ├── MHVCodedValue.m │ │ ├── MHVConcentrationValue.h │ │ ├── MHVConcentrationValue.m │ │ ├── MHVConditionEntry.h │ │ ├── MHVConditionEntry.m │ │ ├── MHVConnectionTaskResult.h │ │ ├── MHVConnectionTaskResult.m │ │ ├── MHVContact.h │ │ ├── MHVContact.m │ │ ├── MHVDate.h │ │ ├── MHVDate.m │ │ ├── MHVDateTime.h │ │ ├── MHVDateTime.m │ │ ├── MHVDelivery.h │ │ ├── MHVDelivery.m │ │ ├── MHVDisplayValue.h │ │ ├── MHVDisplayValue.m │ │ ├── MHVDow.h │ │ ├── MHVDow.m │ │ ├── MHVDuration.h │ │ ├── MHVDuration.m │ │ ├── MHVEOBService.h │ │ ├── MHVEOBService.m │ │ ├── MHVEmail.h │ │ ├── MHVEmail.m │ │ ├── MHVFlowValue.h │ │ ├── MHVFlowValue.m │ │ ├── MHVFoodEnergyValue.h │ │ ├── MHVFoodEnergyValue.m │ │ ├── MHVGeneralMeasurement.h │ │ ├── MHVGeneralMeasurement.m │ │ ├── MHVGetAuthorizedPeopleResult.h │ │ ├── MHVGetAuthorizedPeopleResult.m │ │ ├── MHVGetAuthorizedPeopleSettings.h │ │ ├── MHVGetAuthorizedPeopleSettings.m │ │ ├── MHVGetRecordOperationsResult.h │ │ ├── MHVGetRecordOperationsResult.m │ │ ├── MHVGoalAssociatedTypeInfo.h │ │ ├── MHVGoalAssociatedTypeInfo.m │ │ ├── MHVGoalRangeType.h │ │ ├── MHVGoalRangeType.m │ │ ├── MHVGoalRecurrence.h │ │ ├── MHVGoalRecurrence.m │ │ ├── MHVHeartrateZone.h │ │ ├── MHVHeartrateZone.m │ │ ├── MHVHeartrateZoneGroup.h │ │ ├── MHVHeartrateZoneGroup.m │ │ ├── MHVInsightAttribution.h │ │ ├── MHVInsightAttribution.m │ │ ├── MHVInsightMessages.h │ │ ├── MHVInsightMessages.m │ │ ├── MHVLabTestResultValue.h │ │ ├── MHVLabTestResultValue.m │ │ ├── MHVLabTestResultsDetails.h │ │ ├── MHVLabTestResultsDetails.m │ │ ├── MHVLabTestResultsGroup.h │ │ ├── MHVLabTestResultsGroup.m │ │ ├── MHVLengthMeasurement.h │ │ ├── MHVLengthMeasurement.m │ │ ├── MHVLocation.h │ │ ├── MHVLocation.m │ │ ├── MHVMaxVO2.h │ │ ├── MHVMaxVO2.m │ │ ├── MHVMeasurement.h │ │ ├── MHVMeasurement.m │ │ ├── MHVMedicalImageStudy.h │ │ ├── MHVMedicalImageStudy.m │ │ ├── MHVMedicalImageStudySeries.h │ │ ├── MHVMedicalImageStudySeries.m │ │ ├── MHVMedicalImageStudySeriesImage.h │ │ ├── MHVMedicalImageStudySeriesImage.m │ │ ├── MHVMessageAttachment.h │ │ ├── MHVMessageAttachment.m │ │ ├── MHVMessageHeaderThing.h │ │ ├── MHVMessageHeaderThing.m │ │ ├── MHVName.h │ │ ├── MHVName.m │ │ ├── MHVNameValue.h │ │ ├── MHVNameValue.m │ │ ├── MHVNutritionFact.h │ │ ├── MHVNutritionFact.m │ │ ├── MHVOccurence.h │ │ ├── MHVOccurence.m │ │ ├── MHVOrganization.h │ │ ├── MHVOrganization.m │ │ ├── MHVPendingThing.h │ │ ├── MHVPendingThing.m │ │ ├── MHVPerson.h │ │ ├── MHVPerson.m │ │ ├── MHVPersonInfo.h │ │ ├── MHVPersonInfo.m │ │ ├── MHVPhone.h │ │ ├── MHVPhone.m │ │ ├── MHVPlanObjective.h │ │ ├── MHVPlanObjective.m │ │ ├── MHVPlanOutcome.h │ │ ├── MHVPlanOutcome.m │ │ ├── MHVPrescription.h │ │ ├── MHVPrescription.m │ │ ├── MHVRecord.h │ │ ├── MHVRecord.m │ │ ├── MHVRecordOperation.h │ │ ├── MHVRecordOperation.m │ │ ├── MHVRecordReference.h │ │ ├── MHVRecordReference.m │ │ ├── MHVRelatedThing.h │ │ ├── MHVRelatedThing.m │ │ ├── MHVRelative.h │ │ ├── MHVRelative.m │ │ ├── MHVResponse.h │ │ ├── MHVResponse.m │ │ ├── MHVResponseStatus.h │ │ ├── MHVResponseStatus.m │ │ ├── MHVServerError.h │ │ ├── MHVServerError.m │ │ ├── MHVStructuredInsightValue.h │ │ ├── MHVStructuredInsightValue.m │ │ ├── MHVStructuredMeasurement.h │ │ ├── MHVStructuredMeasurement.m │ │ ├── MHVTaskCompletionMetrics.h │ │ ├── MHVTaskCompletionMetrics.m │ │ ├── MHVTaskOccurrenceMetrics.h │ │ ├── MHVTaskOccurrenceMetrics.m │ │ ├── MHVTaskRangeMetrics.h │ │ ├── MHVTaskRangeMetrics.m │ │ ├── MHVTaskSchedule.h │ │ ├── MHVTaskSchedule.m │ │ ├── MHVTaskTargetEvents.h │ │ ├── MHVTaskTargetEvents.m │ │ ├── MHVTaskTrackingPolicy.h │ │ ├── MHVTaskTrackingPolicy.m │ │ ├── MHVTestResultRange.h │ │ ├── MHVTestResultRange.m │ │ ├── MHVTestResultRangeValue.h │ │ ├── MHVTestResultRangeValue.m │ │ ├── MHVThing.h │ │ ├── MHVThing.m │ │ ├── MHVThingData.h │ │ ├── MHVThingData.m │ │ ├── MHVThingDataCommon.h │ │ ├── MHVThingDataCommon.m │ │ ├── MHVThingDataTyped.h │ │ ├── MHVThingDataTyped.m │ │ ├── MHVThingFilter.h │ │ ├── MHVThingFilter.m │ │ ├── MHVThingKey.h │ │ ├── MHVThingKey.m │ │ ├── MHVThingQuery.h │ │ ├── MHVThingQuery.m │ │ ├── MHVThingQueryResult.h │ │ ├── MHVThingQueryResult.m │ │ ├── MHVThingSection.h │ │ ├── MHVThingSection.m │ │ ├── MHVThingState.h │ │ ├── MHVThingState.m │ │ ├── MHVThingType.h │ │ ├── MHVThingType.m │ │ ├── MHVThingView.h │ │ ├── MHVThingView.m │ │ ├── MHVTime.h │ │ ├── MHVTime.m │ │ ├── MHVTrackingSourceTypes.h │ │ ├── MHVTrackingSourceTypes.m │ │ ├── MHVTrackingTriggerTypes.h │ │ ├── MHVTrackingTriggerTypes.m │ │ ├── MHVType.h │ │ ├── MHVType.m │ │ ├── MHVTypes.h │ │ ├── MHVVitalSignResult.h │ │ ├── MHVVitalSignResult.m │ │ ├── MHVVolumeValue.h │ │ ├── MHVVolumeValue.m │ │ ├── MHVWeightMeasurement.h │ │ ├── MHVWeightMeasurement.m │ │ ├── MHVZoneBoundary.h │ │ ├── MHVZoneBoundary.m │ │ ├── Private │ │ │ ├── MHVThingQueryResultInternal.h │ │ │ ├── MHVThingQueryResultInternal.m │ │ │ ├── MHVThingQueryResults.h │ │ │ └── MHVThingQueryResults.m │ │ └── ServiceDef │ │ │ ├── MHVConfigurationEntry.h │ │ │ ├── MHVConfigurationEntry.m │ │ │ ├── MHVPlatformInfo.h │ │ │ ├── MHVPlatformInfo.m │ │ │ ├── MHVServiceDef.h │ │ │ ├── MHVServiceDefinition.h │ │ │ ├── MHVServiceDefinition.m │ │ │ ├── MHVServiceInstance.h │ │ │ ├── MHVServiceInstance.m │ │ │ ├── MHVShellInfo.h │ │ │ ├── MHVShellInfo.m │ │ │ ├── MHVSystemInstances.h │ │ │ └── MHVSystemInstances.m │ ├── Utilities │ │ ├── MHVClientResult.h │ │ ├── MHVClientResult.m │ │ ├── MHVLogger.h │ │ ├── MHVLogger.m │ │ ├── MHVQueuedDictionary.h │ │ ├── MHVQueuedDictionary.m │ │ ├── MHVValidator.h │ │ ├── MHVValidator.m │ │ └── private │ │ │ ├── MHVClientInfo.h │ │ │ ├── MHVClientInfo.m │ │ │ ├── MHVCryptographer.h │ │ │ └── MHVCryptographer.m │ ├── Vocabulary │ │ ├── MHVVocabulary.h │ │ ├── MHVVocabularyCodeItem.h │ │ ├── MHVVocabularyCodeItem.m │ │ ├── MHVVocabularyCodeSet.h │ │ ├── MHVVocabularyCodeSet.m │ │ ├── MHVVocabularyIdentifier.h │ │ ├── MHVVocabularyIdentifier.m │ │ ├── MHVVocabularyKey.h │ │ ├── MHVVocabularyKey.m │ │ ├── MHVVocabularySearchParams.h │ │ └── MHVVocabularySearchParams.m │ └── Xml │ │ ├── XConverter.h │ │ ├── XConverter.m │ │ ├── XLib.h │ │ ├── XNodeType.h │ │ ├── XNodeType.m │ │ ├── XReader.h │ │ ├── XReader.m │ │ ├── XSerializableType.h │ │ ├── XSerializableType.m │ │ ├── XSerializer.h │ │ ├── XSerializer.m │ │ ├── XString.h │ │ ├── XString.m │ │ ├── XWriter.h │ │ └── XWriter.m └── Tools │ └── codegen │ ├── codegen.sh │ ├── swagger.config │ └── template │ ├── ApiClient-body.mustache │ ├── ApiClient-header.mustache │ ├── BasicAuthTokenProvider-body.mustache │ ├── BasicAuthTokenProvider-header.mustache │ ├── Configuration-protocol.mustache │ ├── DefaultConfiguration-body.mustache │ ├── DefaultConfiguration-header.mustache │ ├── JSONRequestSerializer-body.mustache │ ├── JSONRequestSerializer-header.mustache │ ├── JSONValueTransformer+ISO8601-body.mustache │ ├── JSONValueTransformer+ISO8601-header.mustache │ ├── Logger-body.mustache │ ├── Logger-header.mustache │ ├── Model.xcdatamodel.mustache │ ├── NSManagedObject-body.mustache │ ├── NSManagedObject-header.mustache │ ├── NSManagedObjectBuilder-body.mustache │ ├── NSManagedObjectBuilder-header.mustache │ ├── Object-body.mustache │ ├── Object-header.mustache │ ├── QueryParamCollection-body.mustache │ ├── QueryParamCollection-header.mustache │ ├── README.mustache │ ├── ResponseDeserializer-body.mustache │ ├── ResponseDeserializer-header.mustache │ ├── Sanitizer-body.mustache │ ├── Sanitizer-header.mustache │ ├── api-body.mustache │ ├── api-header.mustache │ ├── api-protocol.mustache │ ├── api_doc.mustache │ ├── git_push.sh.mustache │ ├── gitignore.mustache │ ├── licenceInfo.mustache │ ├── model-body.mustache │ ├── model-header.mustache │ ├── model_doc.mustache │ ├── podspec.mustache │ └── xccurrentversion.mustache ├── LICENSE ├── Pods.xcodeproj └── README.md /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | xcuserdata 3 | xcuserdata/ 4 | *.xcuserstate 5 | HealthVault/Tools/codegen/output 6 | HealthVault/Tools/codegen/KHV* 7 | 8 | Samples/Demos/Health2.0/HelloHealthVault/HelloHealthVault/Code.txt 9 | 10 | *.xccheckout 11 | -------------------------------------------------------------------------------- /.swift-version: -------------------------------------------------------------------------------- 1 | echo 3.1 > .swift-version 2 | -------------------------------------------------------------------------------- /Example/Podfile: -------------------------------------------------------------------------------- 1 | install! 'cocoapods', 2 | :share_schemes_for_development_pods => true 3 | 4 | use_frameworks! 5 | 6 | target 'healthvault-ios-sdk_Example' do 7 | platform :ios, '10.0' 8 | pod 'HealthVault', :path => '../' 9 | pod 'EncryptedCoreData', :inhibit_warnings => true, :git => 'https://github.com/project-imas/encrypted-core-data.git', :commit => 'b97ffaf2f' # xcode 9 workaround 10 | pod 'SQLCipher', :inhibit_warnings => true 11 | 12 | target 'healthvault-ios-sdk_Tests' do 13 | platform :ios, '10.0' 14 | inherit! :search_paths 15 | 16 | pod 'HealthVault/Tests', :path => '../' 17 | pod 'Kiwi', :inhibit_warnings => true 18 | end 19 | end 20 | -------------------------------------------------------------------------------- /Example/Pods/EncryptedCoreData/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright 2014 iMAS 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this file except in compliance with the License. 5 | You may obtain a copy of the License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | See the License for the specific language governing permissions and 13 | limitations under the License. 14 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Config/KWSuiteConfigurationBase.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWSuiteConfigurationBase.h 3 | // Kiwi 4 | // 5 | // Created by Adam Sharp on 14/12/2013. 6 | // Copyright (c) 2013 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface KWSuiteConfigurationBase : NSObject 12 | 13 | + (instancetype)defaultConfiguration; 14 | 15 | - (void)configureSuite; 16 | 17 | - (void)setUp; 18 | - (void)tearDown; 19 | 20 | @property (nonatomic, copy) void (^beforeAllSpecsBlock)(void); 21 | @property (nonatomic, copy) void (^afterAllSpecsBlock)(void); 22 | 23 | @end 24 | 25 | void beforeAllSpecs(void (^block)(void)); 26 | void afterAllSpecs(void (^block)(void)); 27 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWAny.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | // KWAny exists to determine arguments in a message pattern that should 10 | // match any value. Used for pointers as well as for scalar values. 11 | @interface KWAny : NSObject 12 | 13 | #pragma mark - Initializing 14 | 15 | + (id)any; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWAny.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWAny.h" 8 | 9 | @implementation KWAny 10 | 11 | #pragma mark - Initializing 12 | 13 | + (id)any { 14 | static KWAny *sharedAny = nil; 15 | static dispatch_once_t onceToken; 16 | dispatch_once(&onceToken, ^{ 17 | sharedAny = [self new]; 18 | 19 | }); 20 | return sharedAny; 21 | } 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWBlock.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @interface KWBlock : NSObject 10 | 11 | #pragma mark - Initializing 12 | - (id)initWithBlock:(void (^)(void))block; 13 | 14 | + (id)blockWithBlock:(void (^)(void))block; 15 | 16 | #pragma mark - Calling Blocks 17 | 18 | - (void)call; 19 | 20 | @end 21 | 22 | #pragma mark - Creating Blocks 23 | 24 | KWBlock *theBlock(void (^block)(void)); 25 | KWBlock *lambda(void (^block)(void)); 26 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWBlock.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWBlock.h" 8 | 9 | @interface KWBlock() 10 | 11 | #pragma mark - Properties 12 | 13 | @property (nonatomic, readonly, copy) void (^block)(void); 14 | 15 | @end 16 | 17 | @implementation KWBlock 18 | 19 | #pragma mark - Initializing 20 | 21 | - (id)initWithBlock:(void (^)(void))block { 22 | self = [super init]; 23 | if (self) { 24 | _block = [block copy]; 25 | } 26 | 27 | return self; 28 | } 29 | 30 | + (id)blockWithBlock:(void (^)(void))aBlock { 31 | return [[self alloc] initWithBlock:aBlock]; 32 | } 33 | 34 | #pragma mark - Calling Blocks 35 | 36 | - (void)call { 37 | self.block(); 38 | } 39 | 40 | @end 41 | 42 | #pragma mark - Creating Blocks 43 | 44 | KWBlock *theBlock(void (^block)(void)) { 45 | return lambda(block); 46 | } 47 | 48 | KWBlock *lambda(void (^block)(void)) { 49 | return [KWBlock blockWithBlock:block]; 50 | } 51 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWCallSite.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @interface KWCallSite : NSObject 10 | 11 | #pragma mark - Initializing 12 | 13 | - (id)initWithFilename:(NSString *)aFilename lineNumber:(NSUInteger)aLineNumber; 14 | 15 | + (id)callSiteWithFilename:(NSString *)aFilename lineNumber:(NSUInteger)aLineNumber; 16 | 17 | #pragma mark - Properties 18 | 19 | @property (nonatomic, readonly, copy) NSString *filename; 20 | @property (nonatomic, readonly) NSUInteger lineNumber; 21 | 22 | #pragma mark - Identifying and Comparing 23 | 24 | - (BOOL)isEqualToCallSite:(KWCallSite *)aCallSite; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWCaptureSpy.h: -------------------------------------------------------------------------------- 1 | #import "KWMessageSpying.h" 2 | 3 | @interface KWCaptureSpy : NSObject 4 | 5 | @property (nonatomic, strong, readonly) id argument; 6 | 7 | - (id)initWithArgumentIndex:(NSUInteger)index; 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWCountType.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | enum { 10 | KWCountTypeExact, 11 | KWCountTypeAtLeast, 12 | KWCountTypeAtMost 13 | }; 14 | 15 | typedef NSUInteger KWCountType; 16 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWDeviceInfo.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @interface KWDeviceInfo : NSObject 10 | 11 | #pragma mark - Getting the Device Type 12 | 13 | + (BOOL)isSimulator; 14 | + (BOOL)isPhysical; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWDeviceInfo.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWDeviceInfo.h" 8 | 9 | #if TARGET_IPHONE_SIMULATOR 10 | 11 | #import 12 | 13 | #endif // #if TARGET_IPHONE_SIMULATOR 14 | 15 | @implementation KWDeviceInfo 16 | 17 | #pragma mark - Getting the Device Type 18 | 19 | + (BOOL)isSimulator { 20 | #if TARGET_IPHONE_SIMULATOR 21 | return YES; 22 | #else 23 | return NO; 24 | #endif // #if TARGET_IPHONE_SIMULATOR 25 | } 26 | 27 | + (BOOL)isPhysical { 28 | return ![self isSimulator]; 29 | } 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWExampleDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWExampleGroupDelegate.h 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 08/09/2011. 6 | // Copyright 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class KWExample; 12 | @class KWFailure; 13 | 14 | @protocol KWExampleDelegate 15 | 16 | - (void)example:(KWExample *)example didFailWithFailure:(KWFailure *)failure; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWExampleSuite.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWExampleSuite.h 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 17/10/2011. 6 | // Copyright (c) 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "KWExampleNodeVisitor.h" 11 | 12 | @class KWContextNode; 13 | @class KWExample; 14 | 15 | @interface KWExampleSuite : NSObject 16 | 17 | - (id)initWithRootNode:(KWContextNode *)contextNode; 18 | - (void)addExample:(KWExample *)example; 19 | - (void)markLastExampleAsLastInContext:(KWContextNode *)context; 20 | 21 | @property (nonatomic, readonly) NSMutableArray *examples; 22 | 23 | #pragma mark - Example selector names 24 | 25 | - (NSString *)nextUniqueSelectorName:(NSString *)name; 26 | 27 | @end 28 | 29 | @interface NSInvocation (KWExampleGroup) 30 | @property (nonatomic, setter = kw_setExample:) KWExample *kw_example; 31 | @end 32 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWExpectationType.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | enum { 10 | KWExpectationTypeShould, 11 | KWExpectationTypeShouldNot, 12 | KWExpectationTypeMaybe 13 | }; 14 | 15 | typedef NSUInteger KWExpectationType; 16 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWFailure.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @class KWCallSite; 10 | 11 | @interface KWFailure : NSObject 12 | 13 | #pragma mark - Initializing 14 | 15 | - (id)initWithCallSite:(KWCallSite *)aCallSite message:(NSString *)aMessage; 16 | - (id)initWithCallSite:(KWCallSite *)aCallSite format:(NSString *)format, ...; 17 | 18 | + (id)failureWithCallSite:(KWCallSite *)aCallSite message:(NSString *)aMessage; 19 | + (id)failureWithCallSite:(KWCallSite *)aCallSite format:(NSString *)format, ...; 20 | 21 | #pragma mark - Properties 22 | 23 | @property (nonatomic, readonly) NSString *message; 24 | @property (nonatomic, weak, readonly) KWCallSite *callSite; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWFormatter.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @interface KWFormatter : NSObject 10 | 11 | #pragma mark - Getting Descriptions 12 | 13 | + (NSString *)formatObject:(id)anObject; 14 | + (NSString *)formatObjectIncludingClass:(id)anObject; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWFutureObject.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWFutureObject.h 3 | // iOSFalconCore 4 | // 5 | // Created by Luke Redpath on 13/01/2011. 6 | // Copyright 2011 LJR Software Limited. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | typedef id (^KWFutureObjectBlock)(void); 12 | 13 | @interface KWFutureObject : NSObject 14 | 15 | + (id)objectWithObjectPointer:(id *)pointer; 16 | + (id)futureObjectWithBlock:(KWFutureObjectBlock)block; 17 | - (id)initWithBlock:(KWFutureObjectBlock)aBlock; 18 | - (id)object; 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWFutureObject.m: -------------------------------------------------------------------------------- 1 | // 2 | // KWFutureObject.m 3 | // iOSFalconCore 4 | // 5 | // Created by Luke Redpath on 13/01/2011. 6 | // Copyright 2011 LJR Software Limited. All rights reserved. 7 | // 8 | 9 | #import "KWFutureObject.h" 10 | 11 | @interface KWFutureObject() 12 | 13 | @property (nonatomic, strong) KWFutureObjectBlock block; 14 | 15 | @end 16 | 17 | @implementation KWFutureObject 18 | 19 | + (id)objectWithObjectPointer:(id *)pointer { 20 | return [self futureObjectWithBlock:^{ return *pointer; }]; 21 | } 22 | 23 | + (id)futureObjectWithBlock:(KWFutureObjectBlock)block { 24 | return [[self alloc] initWithBlock:block]; 25 | } 26 | 27 | - (id)initWithBlock:(KWFutureObjectBlock)aBlock { 28 | self = [super init]; 29 | if (self) { 30 | _block = [aBlock copy]; 31 | } 32 | return self; 33 | } 34 | 35 | - (id)object; { 36 | return self.block(); 37 | } 38 | 39 | 40 | @end 41 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWLet.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #if __has_feature(objc_arc) 8 | # define KW_ARC_AUTORELEASE(obj) obj 9 | #else 10 | # define KW_ARC_AUTORELEASE(obj) [obj autorelease] 11 | #endif 12 | 13 | #define KW_LET_REF(var) \ 14 | (__autoreleasing id *) \ 15 | ( (void *(^)(void)) KW_ARC_AUTORELEASE([^{ void *ref = &var; return ref; } copy]) )() 16 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatching.h" 9 | 10 | @interface KWMatcher : NSObject 11 | 12 | #pragma mark - Initializing 13 | 14 | - (id)initWithSubject:(id)anObject; 15 | 16 | + (id)matcherWithSubject:(id)anObject; 17 | 18 | #pragma mark - Properties 19 | 20 | @property (nonatomic, strong) id subject; 21 | 22 | #pragma mark - Getting Matcher Strings 23 | 24 | + (NSArray *)matcherStrings; 25 | 26 | #pragma mark - Getting Matcher Compatability 27 | 28 | + (BOOL)canMatchSubject:(id)anObject; 29 | 30 | #pragma mark - Matching 31 | 32 | - (BOOL)evaluate; 33 | 34 | #pragma mark - Getting Failure Messages 35 | 36 | - (NSString *)failureMessageForShould; 37 | - (NSString *)failureMessageForShouldNot; 38 | 39 | @end 40 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWMatcherFactory.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatching.h" 9 | 10 | @class KWFailure; 11 | @class KWMatcher; 12 | @class KWUserDefinedMatcherBuilder; 13 | 14 | @interface KWMatcherFactory : NSObject 15 | 16 | #pragma mark - Initializing 17 | 18 | - (id)init; 19 | 20 | #pragma mark - Properties 21 | 22 | @property (nonatomic, readonly) NSArray *registeredMatcherClasses; 23 | 24 | #pragma mark - Registering Matcher Classes 25 | 26 | - (void)registerMatcherClass:(Class)aClass; 27 | - (void)registerMatcherClassesWithNamespacePrefix:(NSString *)aNamespacePrefix; 28 | 29 | #pragma mark - Getting Method Signatures 30 | 31 | - (NSMethodSignature *)methodSignatureForMatcherSelector:(SEL)aSelector; 32 | 33 | #pragma mark - Getting Matchers 34 | 35 | - (KWMatcher *)matcherFromInvocation:(NSInvocation *)anInvocation subject:(id)subject; 36 | 37 | @end 38 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWMatchers.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWMatchers.h 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 17/06/2011. 6 | // Copyright 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class KWUserDefinedMatcherBuilder; 12 | 13 | typedef void (^KWMatchersBuildingBlock)(KWUserDefinedMatcherBuilder *matcherBuilder); 14 | 15 | @class KWUserDefinedMatcher; 16 | 17 | @interface KWMatchers : NSObject 18 | 19 | + (id)matchers; 20 | 21 | #pragma mark - Defining Matchers 22 | 23 | + (void)defineMatcher:(NSString *)selectorString as:(KWMatchersBuildingBlock)block; 24 | - (void)defineMatcher:(NSString *)selectorString as:(KWMatchersBuildingBlock)block; 25 | - (void)addUserDefinedMatcherBuilder:(KWUserDefinedMatcherBuilder *)builder; 26 | 27 | #pragma mark - Building Matchers 28 | 29 | - (KWUserDefinedMatcher *)matcherForSelector:(SEL)selector subject:(id)subject; 30 | @end 31 | 32 | void KWDefineMatchers(NSString *selectorString, KWMatchersBuildingBlock block); 33 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWMessageSpying.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @protocol KWMessageSpying 10 | 11 | #pragma mark - Spying on Messages 12 | 13 | - (void)object:(id)anObject didReceiveInvocation:(NSInvocation *)anInvocation; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWNull.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | // KWNull exists to represent the same thing as NSNull, except that Kiwi needs 10 | // to distinguish between null singletons used internally and those a user 11 | // is using as an object parameter. 12 | @interface KWNull : NSObject 13 | 14 | #pragma mark - Initializing 15 | 16 | + (id)null; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWNull.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWNull.h" 8 | 9 | @implementation KWNull 10 | 11 | #pragma mark - Initializing 12 | 13 | 14 | + (id)null { 15 | static KWNull *sharedNull = nil; 16 | static dispatch_once_t onceToken; 17 | dispatch_once(&onceToken, ^{ 18 | sharedNull = [self new]; 19 | 20 | }); 21 | 22 | return sharedNull; 23 | } 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWProbe.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWProbe.h 3 | // iOSFalconCore 4 | // 5 | // Created by Luke Redpath on 13/01/2011. 6 | // Copyright 2011 LJR Software Limited. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @protocol KWProbe 12 | - (BOOL)isSatisfied; 13 | - (void)sample; 14 | @end 15 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWProbePoller.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWProbePoller.h 3 | // iOSFalconCore 4 | // 5 | // Created by Luke Redpath on 13/01/2011. 6 | // Copyright 2011 LJR Software Limited. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "KWProbe.h" 11 | 12 | #define kKW_DEFAULT_PROBE_DELAY 0.1 13 | 14 | @interface KWProbePoller : NSObject 15 | 16 | - (id)initWithTimeout:(NSTimeInterval)theTimeout delay:(NSTimeInterval)theDelay shouldWait:(BOOL)wait; 17 | - (BOOL)check:(id)probe; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWReporting.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @class KWFailure; 10 | 11 | @protocol KWReporting 12 | 13 | #pragma mark - Reporting Failures 14 | 15 | - (void)reportFailure:(KWFailure *)failure; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWSpec.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import 9 | #import "KWExpectationType.h" 10 | #import "KWVerifying.h" 11 | #import "KWExampleDelegate.h" 12 | 13 | @class KWCallSite; 14 | 15 | @interface KWSpec : XCTestCase 16 | 17 | #pragma mark - Adding Verifiers 18 | 19 | + (id)addVerifier:(id)aVerifier; 20 | + (id)addExistVerifierWithExpectationType:(KWExpectationType)anExpectationType callSite:(KWCallSite *)aCallSite; 21 | + (id)addMatchVerifierWithExpectationType:(KWExpectationType)anExpectationType callSite:(KWCallSite *)aCallSite; 22 | + (id)addAsyncVerifierWithExpectationType:(KWExpectationType)anExpectationType callSite:(KWCallSite *)aCallSite timeout:(NSTimeInterval)timeout shouldWait:(BOOL)shouldWait; 23 | 24 | #pragma mark - Building Example Groups 25 | 26 | + (NSString *)file; 27 | + (void)buildExampleGroups; 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWStringUtilities.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | #pragma mark - Checking for Case Separated Words 10 | 11 | BOOL KWStringHasWordPrefix(NSString *string, NSString *prefix); 12 | BOOL KWStringHasStrictWordPrefix(NSString *string, NSString *prefix); 13 | BOOL KWStringHasWord(NSString *string, NSString *word); 14 | 15 | #pragma mark - Getting Type Encodings 16 | 17 | NSString *KWEncodingWithObjCTypes(const char *firstType, ...) NS_REQUIRES_NIL_TERMINATION; 18 | NSString *KWEncodingForDefaultMethod(void); 19 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWSymbolicator.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWSymbolicator.h 3 | // Kiwi 4 | // 5 | // Created by Jerry Marino on 4/28/13. 6 | // Copyright (c) 2013 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "KWSymbolicator.h" 11 | #import "KWCallSite.h" 12 | 13 | long kwCallerAddress(void); 14 | 15 | @interface KWCallSite (KWSymbolication) 16 | 17 | + (KWCallSite *)callSiteWithCallerAddress:(long)address; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWWorkarounds.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | #if KW_TARGET_HAS_INVOCATION_EXCEPTION_BUG 10 | 11 | #pragma mark - Invocation Exception Bug Workaround 12 | 13 | // See KiwiConfiguration.h for notes. 14 | void KWSetExceptionFromAcrossInvocationBoundary(NSException *anException); 15 | NSException *KWGetAndClearExceptionFromAcrossInvocationBoundary(void); 16 | 17 | #endif // #if KW_TARGET_HAS_INVOCATION_EXCEPTION_BUG 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KWWorkarounds.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWWorkarounds.h" 8 | 9 | #if KW_TARGET_HAS_INVOCATION_EXCEPTION_BUG 10 | 11 | static NSException *KWExceptionAcrossInvokeBoundary = nil; 12 | 13 | void KWSetExceptionFromAcrossInvocationBoundary(NSException *anException) { 14 | if (KWExceptionAcrossInvokeBoundary != nil) 15 | return; 16 | 17 | KWExceptionAcrossInvokeBoundary = anException; 18 | } 19 | 20 | NSException *KWGetAndClearExceptionFromAcrossInvocationBoundary(void) { 21 | NSException *exception = KWExceptionAcrossInvokeBoundary; 22 | KWExceptionAcrossInvokeBoundary = nil; 23 | return exception; 24 | } 25 | 26 | #endif // #if KW_TARGET_HAS_INVOCATION_EXCEPTION_BUG 27 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KiwiBlockMacros.h: -------------------------------------------------------------------------------- 1 | // 2 | // KiwiBlockMacros.h 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 11/07/2011. 6 | // Copyright 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | // user defined matchers 10 | #define registerMatcher(name) \ 11 | \ 12 | @interface NSObject (KWUserDefinedMatchersDefinitions) \ 13 | - (void)name; \ 14 | @end \ 15 | 16 | #define defineMatcher(...) KWDefineMatchers(__VA_ARGS__) 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/KiwiConfiguration.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | // As of iPhone SDK 4 GM, exceptions thrown across an NSInvocation -invoke or 10 | // forwardInvocation: boundary in the simulator will terminate the app instead 11 | // of being caught in @catch blocks from the caller side of the -invoke. Kiwi 12 | // tries to handle this by storing the first exception that it would have 13 | // otherwise thrown in a nasty global that callers can look for and handle. 14 | // (Buggy termination is less desirable than global variables). 15 | // 16 | // Obviously, this can only handles cases where Kiwi itself would have raised 17 | // an exception. 18 | #if TARGET_IPHONE_SIMULATOR 19 | #define KW_TARGET_HAS_INVOCATION_EXCEPTION_BUG 1 20 | #endif 21 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSInvocation+KiwiAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @interface NSInvocation(KiwiAdditions) 10 | 11 | #pragma mark - Creating NSInvocation Objects 12 | 13 | + (NSInvocation *)invocationWithTarget:(id)anObject selector:(SEL)aSelector; 14 | + (NSInvocation *)invocationWithTarget:(id)anObject selector:(SEL)aSelector messageArguments:(const void *)firstBytes, ...; 15 | 16 | #pragma mark - Accessing Message Arguments 17 | 18 | // Message arguments are invocation arguments that begin after the target and selector arguments. These methods provide 19 | // convenient ways to access them. 20 | 21 | - (NSData *)messageArgumentDataAtIndex:(NSUInteger)anIndex; 22 | - (void)getMessageArgument:(void *)buffer atIndex:(NSUInteger)anIndex; 23 | - (void)setMessageArgument:(const void *)bytes atIndex:(NSUInteger)anIndex; 24 | - (void)setMessageArguments:(const void *)firstBytes, ...; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSMethodSignature+KiwiAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @interface NSMethodSignature(KiwiAdditions) 10 | 11 | #pragma mark - Getting Information on Message Arguments 12 | 13 | - (NSUInteger)numberOfMessageArguments; 14 | - (const char *)messageArgumentTypeAtIndex:(NSUInteger)anIndex; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSMethodSignature+KiwiAdditions.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "NSMethodSignature+KiwiAdditions.h" 8 | 9 | @implementation NSMethodSignature(KiwiAdditions) 10 | 11 | #pragma mark - Getting Information on Message Arguments 12 | 13 | - (NSUInteger)numberOfMessageArguments { 14 | return [self numberOfArguments] - 2; 15 | } 16 | 17 | - (const char *)messageArgumentTypeAtIndex:(NSUInteger)anIndex { 18 | return [self getArgumentTypeAtIndex:anIndex + 2]; 19 | } 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSObject+KiwiSpyAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @class KWCaptureSpy; 10 | 11 | @protocol KiwiSpyAdditions 12 | 13 | - (KWCaptureSpy *)captureArgument:(SEL)selector atIndex:(NSUInteger)index; 14 | + (KWCaptureSpy *)captureArgument:(SEL)selector atIndex:(NSUInteger)index; 15 | 16 | @end 17 | 18 | @interface NSObject (KiwiSpyAdditions) 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSObject+KiwiVerifierAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @protocol KWVerifying; 10 | 11 | @interface NSObject(KiwiVerifierAdditions) 12 | 13 | #pragma mark - Attaching to Verifiers 14 | 15 | - (id)attachToVerifier:(id)aVerifier; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSObject+KiwiVerifierAdditions.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "NSObject+KiwiVerifierAdditions.h" 8 | #import "KWVerifying.h" 9 | 10 | @implementation NSObject(KiwiVerifierAdditions) 11 | 12 | #pragma mark - Attaching to Verifiers 13 | 14 | - (id)attachToVerifier:(id)aVerifier { 15 | [aVerifier setSubject:self]; 16 | return aVerifier; 17 | } 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSProxy+KiwiVerifierAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2013 Allen Ding. All rights reserved. 5 | // 6 | // Contributed by https://github.com/dwlnetnl 7 | // 8 | 9 | #import "KiwiConfiguration.h" 10 | 11 | @protocol KWVerifying; 12 | 13 | @interface NSProxy (KiwiVerifierAdditions) 14 | 15 | #pragma mark - Attaching to Verifiers 16 | 17 | - (id)attachToVerifier:(id)aVerifier; 18 | - (id)attachToVerifier:(id)firstVerifier verifier:(id)secondVerifier; 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSProxy+KiwiVerifierAdditions.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2013 Allen Ding. All rights reserved. 5 | // 6 | // Contributed by https://github.com/dwlnetnl 7 | // 8 | 9 | #import "NSProxy+KiwiVerifierAdditions.h" 10 | #import "KWVerifying.h" 11 | 12 | @implementation NSProxy (KiwiVerifierAdditions) 13 | 14 | #pragma mark - Attaching to Verifiers 15 | 16 | - (id)attachToVerifier:(id)aVerifier { 17 | [aVerifier setSubject:self]; 18 | return aVerifier; 19 | } 20 | 21 | - (id)attachToVerifier:(id)firstVerifier verifier:(id)secondVerifier { 22 | [firstVerifier setSubject:self]; 23 | [secondVerifier setSubject:self]; 24 | return firstVerifier; 25 | } 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSValue+KiwiAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @interface NSValue(KiwiAdditions) 10 | 11 | #pragma mark - Accessing Data 12 | 13 | - (NSData *)dataValue; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Core/NSValue+KiwiAdditions.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "NSValue+KiwiAdditions.h" 8 | #import "KWObjCUtilities.h" 9 | 10 | @implementation NSValue(KiwiAdditions) 11 | 12 | #pragma mark - Accessing Data 13 | 14 | - (NSData *)dataValue { 15 | NSUInteger length = KWObjCTypeLength([self objCType]); 16 | void *buffer = malloc(length); 17 | [self getValue:buffer]; 18 | NSData *data = [NSData dataWithBytes:buffer length:length]; 19 | free(buffer); 20 | return data; 21 | } 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBeBetweenMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBeBetweenMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | // TODO: 'and' below is a reserved word in C++ 15 | - (void)beBetween:(id)aLowerEndpoint and:(id)anUpperEndpoint; 16 | - (void)beInTheIntervalFrom:(id)aLowerEndpoint to:(id)anUpperEndpoint; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBeEmptyMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBeEmptyMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)beEmpty; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBeIdenticalToMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBeIdenticalToMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)beIdenticalTo:(id)anObject; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBeKindOfClassMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBeKindOfClassMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)beKindOfClass:(Class)aClass; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBeMemberOfClassMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBeMemberOfClassMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)beMemberOfClass:(Class)aClass; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBeSubclassOfClassMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBeSubclassOfClassMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)beSubclassOfClass:(Class)aClass; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBeTrueMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBeTrueMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)beTrue; 15 | - (void)beFalse; 16 | - (void)beYes; 17 | - (void)beNo; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBeWithinMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBeWithinMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)beWithin:(id)aDistance of:(id)aValue; 15 | - (void)equal:(double)aValue withDelta:(double)aDelta; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBeZeroMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBeZeroMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)beZero; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWBlockRaiseMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWBlockRaiseMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)raise; 15 | - (void)raiseWithName:(NSString *)aName; 16 | - (void)raiseWithReason:(NSString *)aReason; 17 | - (void)raiseWithName:(NSString *)aName reason:(NSString *)aReason; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWChangeMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWChangeMatcher.h 3 | // Kiwi 4 | // 5 | // Copyright (c) 2013 Eloy Durán . 6 | // All rights reserved. 7 | // 8 | 9 | #import "KWMatcher.h" 10 | 11 | typedef NSInteger (^KWChangeMatcherCountBlock)(); 12 | 13 | @interface KWChangeMatcher : KWMatcher 14 | 15 | // Expect _any_ change. 16 | - (void)change:(KWChangeMatcherCountBlock)countBlock; 17 | 18 | // Expect changes by a specific amount. 19 | - (void)change:(KWChangeMatcherCountBlock)countBlock by:(NSInteger)expectedDifference; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWConformToProtocolMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWConformToProtocolMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)conformToProtocol:(Protocol *)aProtocol; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWContainMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | #import "KWMatchVerifier.h" 10 | 11 | @interface KWContainMatcher : KWMatcher 12 | 13 | #pragma mark - Configuring Matchers 14 | 15 | - (void)contain:(id)anObject; 16 | - (void)containObjectsInArray:(NSArray *)anArray; 17 | 18 | @end 19 | 20 | @interface KWMatchVerifier(KWContainMatcherAdditions) 21 | 22 | #pragma mark - Verifying 23 | 24 | - (void)containObjects:(id)firstObject, ... NS_REQUIRES_NIL_TERMINATION; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWEqualMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWEqualMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)equal:(id)anObject; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWGenericMatchEvaluator.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWGenericMatcher.h 3 | // Kiwi 4 | // 5 | // Created by Allen Ding on 1/31/13. 6 | // Copyright (c) 2013 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface KWGenericMatchEvaluator : NSObject 12 | 13 | + (BOOL)isGenericMatcher:(id)object; 14 | 15 | + (BOOL)genericMatcher:(id)matcher matches:(id)object; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWGenericMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWGenericMatcher.h 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 24/01/2011. 6 | // Copyright 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "KWMatcher.h" 11 | 12 | @protocol KWGenericMatching 13 | 14 | - (BOOL)matches:(id)object; 15 | 16 | @end 17 | 18 | @interface KWGenericMatcher : KWMatcher 19 | 20 | #pragma mark - Configuring Matchers 21 | 22 | - (void)match:(id)aMatcher; 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWGenericMatchingAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSObject+KiwiAdditions.h 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 24/01/2011. 6 | // Copyright 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSObject (KiwiGenericMatchingAdditions) 12 | 13 | - (BOOL)isEqualOrMatches:(id)object DEPRECATED_ATTRIBUTE; 14 | 15 | @end 16 | 17 | @interface NSArray (KiwiGenericMatchingAdditions) 18 | 19 | - (BOOL)containsObjectEqualToOrMatching:(id)object DEPRECATED_ATTRIBUTE; 20 | - (BOOL)containsObjectMatching:(id)matcher DEPRECATED_ATTRIBUTE; 21 | 22 | @end 23 | 24 | @interface NSSet (KiwiGenericMatchingAdditions) 25 | 26 | - (BOOL)containsObjectEqualToOrMatching:(id)object DEPRECATED_ATTRIBUTE; 27 | 28 | @end 29 | 30 | @interface NSOrderedSet (KiwiGenericMatchingAdditions) 31 | 32 | - (BOOL)containsObjectEqualToOrMatching:(id)object DEPRECATED_ATTRIBUTE; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWHaveValueMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWHaveValueMatcher.h 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 24/01/2011. 6 | // Copyright 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "KWMatcher.h" 11 | 12 | @interface KWHaveValueMatcher : KWMatcher 13 | 14 | #pragma mark - Configuring Matchers 15 | 16 | - (void)haveValue:(id)value forKey:(NSString *)key; 17 | - (void)haveValue:(id)value forKeyPath:(NSString *)keyPath; 18 | - (void)haveValueForKey:(NSString *)key; 19 | - (void)haveValueForKeyPath:(NSString *)keyPath; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWInequalityMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWInequalityMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)beLessThan:(id)aValue; 15 | - (void)beLessThanOrEqualTo:(id)aValue; 16 | - (void)beGreaterThan:(id)aValue; 17 | - (void)beGreaterThanOrEqualTo:(id)aValue; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWNilMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWBeNilMatcher.h 3 | // iOSFalconCore 4 | // 5 | // Created by Luke Redpath on 14/01/2011. 6 | // Copyright 2011 LJR Software Limited. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "KWMatcher.h" 11 | 12 | @interface KWNilMatcher : KWMatcher 13 | 14 | - (void)beNil; 15 | - (void)beNonNil; 16 | 17 | - (void)beNil:(BOOL)workaroundArgument; 18 | - (void)beNonNil:(BOOL)workaroundArgument; 19 | 20 | + (BOOL)verifyNilSubject; 21 | + (BOOL)verifyNonNilSubject; 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWNotificationMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWNotificationMatcher.h 3 | // 4 | // Created by Paul Zabelin on 7/12/12. 5 | // Copyright (c) 2012 Blazing Cloud, Inc. All rights reserved. 6 | // 7 | 8 | #import "KWMatcher.h" 9 | 10 | typedef void (^PostedNotificationBlock)(NSNotification* note); 11 | 12 | @interface KWNotificationMatcher : KWMatcher 13 | 14 | - (void)bePosted; 15 | - (void)bePostedWithObject:(id)object; 16 | - (void)bePostedWithUserInfo:(NSDictionary *)userInfo; 17 | - (void)bePostedWithObject:(id)object andUserInfo:(NSDictionary *)userInfo; 18 | - (void)bePostedEvaluatingBlock:(PostedNotificationBlock)block; 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWRegularExpressionPatternMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWRegularExpressionPatternMatcher.h 3 | // Kiwi 4 | // 5 | // Created by Kristopher Johnson on 4/11/13. 6 | // Copyright (c) 2013 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import "KiwiConfiguration.h" 10 | #import "KWMatcher.h" 11 | 12 | @interface KWRegularExpressionPatternMatcher : KWMatcher 13 | 14 | - (void)matchPattern:(NSString *)pattern; 15 | 16 | - (void)matchPattern:(NSString *)pattern options:(NSRegularExpressionOptions)options; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWRespondToSelectorMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWMatcher.h" 9 | 10 | @interface KWRespondToSelectorMatcher : KWMatcher 11 | 12 | #pragma mark - Configuring Matchers 13 | 14 | - (void)respondToSelector:(SEL)aSelector; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWStringContainsMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // KWStringContainsMatcher.h 3 | // Kiwi 4 | // 5 | // Created by Stewart Gleadow on 7/06/12. 6 | // Copyright (c) 2012 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "KWGenericMatcher.h" 11 | 12 | @interface KWStringContainsMatcher : NSObject 13 | 14 | + (id)matcherWithSubstring:(NSString *)aSubstring DEPRECATED_ATTRIBUTE; 15 | - (id)initWithSubstring:(NSString *)aSubstring DEPRECATED_ATTRIBUTE; 16 | 17 | @end 18 | 19 | #define hasSubstring(substring) [KWStringContainsMatcher matcherWithSubstring:substring] 20 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWStringPrefixMatcher.h: -------------------------------------------------------------------------------- 1 | // 2 | // StringPrefixMatcher.h 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 17/01/2011. 6 | // Copyright 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface KWStringPrefixMatcher : NSObject 12 | 13 | + (id)matcherWithPrefix:(NSString *)aPrefix; 14 | - (id)initWithPrefix:(NSString *)aPrefix; 15 | 16 | @end 17 | 18 | #define hasPrefix(prefix) [KWStringPrefixMatcher matcherWithPrefix:prefix] 19 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Matchers/KWStringPrefixMatcher.m: -------------------------------------------------------------------------------- 1 | // 2 | // StringPrefixMatcher.m 3 | // Kiwi 4 | // 5 | // Created by Luke Redpath on 17/01/2011. 6 | // Copyright 2011 Allen Ding. All rights reserved. 7 | // 8 | 9 | #import "KWStringPrefixMatcher.h" 10 | 11 | @interface KWStringPrefixMatcher(){} 12 | @property (nonatomic, copy) NSString *prefix; 13 | @end 14 | 15 | @implementation KWStringPrefixMatcher 16 | 17 | + (id)matcherWithPrefix:(NSString *)aPrefix { 18 | return [[self alloc] initWithPrefix:aPrefix]; 19 | } 20 | 21 | - (id)initWithPrefix:(NSString *)aPrefix { 22 | self = [super init]; 23 | if (self) { 24 | _prefix = [aPrefix copy]; 25 | } 26 | return self; 27 | } 28 | 29 | 30 | - (BOOL)matches:(id)item { 31 | if (![item respondsToSelector:@selector(hasPrefix:)]) 32 | return NO; 33 | 34 | return [item hasPrefix:self.prefix]; 35 | } 36 | 37 | - (NSString *)description { 38 | return [NSString stringWithFormat:@"a string with prefix '%@'", self.prefix]; 39 | } 40 | 41 | @end 42 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Mocking/NSObject+KiwiMockAdditions.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @protocol KiwiMockAdditions 10 | 11 | #pragma mark - Creating Mocks 12 | 13 | + (id)mock; 14 | + (id)mockWithName:(NSString *)aName; 15 | 16 | + (id)nullMock; 17 | + (id)nullMockWithName:(NSString *)aName; 18 | 19 | @end 20 | 21 | @interface NSObject(KiwiMockAdditions) 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Mocking/NSObject+KiwiMockAdditions.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "NSObject+KiwiMockAdditions.h" 8 | #import "KWMock.h" 9 | 10 | @implementation NSObject(KiwiMockAdditions) 11 | 12 | #pragma mark - Creating Mocks 13 | 14 | + (id)mock { 15 | return [KWMock mockForClass:[self class]]; 16 | } 17 | 18 | + (id)mockWithName:(NSString *)aName { 19 | return [KWMock mockWithName:aName forClass:[self class]]; 20 | } 21 | 22 | + (id)nullMock { 23 | return [KWMock nullMockForClass:[self class]]; 24 | } 25 | 26 | + (id)nullMockWithName:(NSString *)aName { 27 | return [KWMock nullMockWithName:aName forClass:[self class]]; 28 | } 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWAfterAllNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWBlockNode.h" 9 | #import "KWExampleNode.h" 10 | 11 | @interface KWAfterAllNode : KWBlockNode 12 | 13 | #pragma mark - Initializing 14 | 15 | + (id)afterAllNodeWithCallSite:(KWCallSite *)aCallSite block:(void (^)(void))block; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWAfterAllNode.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWAfterAllNode.h" 8 | #import "KWExampleNodeVisitor.h" 9 | 10 | @implementation KWAfterAllNode 11 | 12 | #pragma mark - Initializing 13 | 14 | + (id)afterAllNodeWithCallSite:(KWCallSite *)aCallSite block:(void (^)(void))block { 15 | return [[self alloc] initWithCallSite:aCallSite description:nil block:block]; 16 | } 17 | 18 | #pragma mark - Accepting Visitors 19 | 20 | - (void)acceptExampleNodeVisitor:(id)aVisitor { 21 | [aVisitor visitAfterAllNode:self]; 22 | } 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWAfterEachNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWBlockNode.h" 9 | #import "KWExampleNode.h" 10 | 11 | @interface KWAfterEachNode : KWBlockNode 12 | 13 | #pragma mark - Initializing 14 | 15 | + (id)afterEachNodeWithCallSite:(KWCallSite *)aCallSite block:(void (^)(void))block; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWAfterEachNode.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWAfterEachNode.h" 8 | #import "KWExampleNodeVisitor.h" 9 | 10 | @implementation KWAfterEachNode 11 | 12 | #pragma mark - Initializing 13 | 14 | + (id)afterEachNodeWithCallSite:(KWCallSite *)aCallSite block:(void (^)(void))block { 15 | return [[self alloc] initWithCallSite:aCallSite description:nil block:block]; 16 | } 17 | 18 | #pragma mark - Accepting Visitors 19 | 20 | - (void)acceptExampleNodeVisitor:(id)aVisitor { 21 | [aVisitor visitAfterEachNode:self]; 22 | } 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWBeforeAllNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWBlockNode.h" 9 | #import "KWExampleNode.h" 10 | 11 | @interface KWBeforeAllNode : KWBlockNode 12 | 13 | #pragma mark - Initializing 14 | 15 | + (id)beforeAllNodeWithCallSite:(KWCallSite *)aCallSite block:(void (^)(void))block; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWBeforeAllNode.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWBeforeAllNode.h" 8 | #import "KWExampleNodeVisitor.h" 9 | 10 | @implementation KWBeforeAllNode 11 | 12 | #pragma mark - Initializing 13 | 14 | + (id)beforeAllNodeWithCallSite:(KWCallSite *)aCallSite block:(void (^)(void))block { 15 | return [[self alloc] initWithCallSite:aCallSite description:nil block:block]; 16 | } 17 | 18 | #pragma mark - Accepting Visitors 19 | 20 | - (void)acceptExampleNodeVisitor:(id)aVisitor { 21 | [aVisitor visitBeforeAllNode:self]; 22 | } 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWBeforeEachNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWBlockNode.h" 9 | #import "KWExampleNode.h" 10 | 11 | @interface KWBeforeEachNode : KWBlockNode 12 | 13 | #pragma mark - Initializing 14 | 15 | + (id)beforeEachNodeWithCallSite:(KWCallSite *)aCallSite block:(void (^)(void))block; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWBeforeEachNode.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWBeforeEachNode.h" 8 | #import "KWExampleNodeVisitor.h" 9 | 10 | @implementation KWBeforeEachNode 11 | 12 | #pragma mark - Initializing 13 | 14 | + (id)beforeEachNodeWithCallSite:(KWCallSite *)aCallSite block:(void (^)(void))block { 15 | return [[self alloc] initWithCallSite:aCallSite description:nil block:block]; 16 | } 17 | 18 | #pragma mark - Accepting Visitors 19 | 20 | - (void)acceptExampleNodeVisitor:(id)aVisitor { 21 | [aVisitor visitBeforeEachNode:self]; 22 | } 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWBlockNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWBlock.h" 9 | 10 | @class KWCallSite; 11 | 12 | @interface KWBlockNode : NSObject 13 | 14 | #pragma mark - Initializing 15 | 16 | - (id)initWithCallSite:(KWCallSite *)aCallSite description:(NSString *)aDescription block:(void (^)(void))block; 17 | 18 | #pragma mark - Getting Call Sites 19 | 20 | @property (nonatomic, strong, readonly) KWCallSite *callSite; 21 | 22 | #pragma mark - Getting Descriptions 23 | 24 | @property (nonatomic, copy) NSString *description; 25 | 26 | #pragma mark - Getting Blocks 27 | 28 | @property (nonatomic, copy, readonly) void (^block)(void); 29 | 30 | #pragma mark - Performing blocks 31 | 32 | - (void)performBlock; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWBlockNode.m: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KWBlockNode.h" 8 | 9 | @implementation KWBlockNode 10 | 11 | @synthesize description = _description; 12 | 13 | #pragma mark - Initializing 14 | 15 | - (id)initWithCallSite:(KWCallSite *)aCallSite description:(NSString *)aDescription block:(void (^)(void))block { 16 | self = [super init]; 17 | if (self) { 18 | _callSite = aCallSite; 19 | _description = [aDescription copy]; 20 | _block = [block copy]; 21 | } 22 | 23 | return self; 24 | } 25 | 26 | - (void)performBlock { 27 | if (self.block != nil) { self.block(); } 28 | } 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWExampleNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @class KWContextNode; 10 | @protocol KWExampleNodeVisitor; 11 | 12 | @protocol KWExampleNode 13 | 14 | #pragma mark - Accepting Visitors 15 | 16 | - (void)acceptExampleNodeVisitor:(id)aVisitor; 17 | 18 | @optional 19 | 20 | - (NSArray *)contextStack; 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWItNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWBlockNode.h" 9 | #import "KWExampleNode.h" 10 | 11 | @class KWPendingNode; 12 | @class KWExample; 13 | @class KWContextNode; 14 | 15 | @interface KWItNode : KWBlockNode 16 | 17 | @property (nonatomic, strong) KWExample *example; 18 | @property (nonatomic, weak, readonly) KWContextNode *context; 19 | 20 | #pragma mark - Initializing 21 | 22 | + (id)itNodeWithCallSite:(KWCallSite *)aCallSite 23 | description:(NSString *)aDescription 24 | context:(KWContextNode *)context 25 | block:(void (^)(void))block; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWPendingNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWExampleNode.h" 9 | 10 | @class KWContextNode; 11 | @class KWCallSite; 12 | 13 | @interface KWPendingNode : NSObject 14 | 15 | @property (nonatomic, readonly, strong) KWContextNode *context; 16 | 17 | #pragma mark - Initializing 18 | 19 | - (id)initWithCallSite:(KWCallSite *)aCallSite context:(KWContextNode *)context description:(NSString *)aDescription; 20 | 21 | + (id)pendingNodeWithCallSite:(KWCallSite *)aCallSite context:(KWContextNode *)context description:(NSString *)aDescription; 22 | 23 | #pragma mark - Getting Call Sites 24 | 25 | @property (nonatomic, readonly) KWCallSite *callSite; 26 | 27 | #pragma mark - Getting Descriptions 28 | 29 | @property (readonly, copy) NSString *description; 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Nodes/KWRegisterMatchersNode.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWExampleNode.h" 9 | 10 | @class KWCallSite; 11 | 12 | @interface KWRegisterMatchersNode : NSObject 13 | 14 | #pragma mark - Initializing 15 | 16 | - (id)initWithCallSite:(KWCallSite *)aCallSite namespacePrefix:(NSString *)aNamespacePrefix; 17 | 18 | + (id)registerMatchersNodeWithCallSite:(KWCallSite *)aCallSite namespacePrefix:(NSString *)aNamespacePrefix; 19 | 20 | #pragma mark - Getting Call Sites 21 | 22 | @property (nonatomic, readonly) KWCallSite *callSite; 23 | 24 | #pragma mark - Getting Namespace Prefixes 25 | 26 | @property (nonatomic, readonly) NSString *namespacePrefix; 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Shared Examples/KWSharedExample.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2014 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | typedef void (^KWSharedExampleBlock)(NSDictionary *data); 10 | 11 | @interface KWSharedExample : NSObject 12 | 13 | @property (nonatomic, copy) NSString *name; 14 | @property (nonatomic, copy) KWSharedExampleBlock block; 15 | 16 | - (id)initWithName:(NSString *)name block:(KWSharedExampleBlock)block; 17 | 18 | @end 19 | 20 | #pragma mark - Building Shared Example Groups 21 | 22 | void sharedExamplesFor(NSString *name, KWSharedExampleBlock block); 23 | void itBehavesLike(NSString *name, NSDictionary *data); 24 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Shared Examples/KWSharedExampleRegistry.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2014 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import 8 | 9 | @class KWSharedExample; 10 | 11 | @interface KWSharedExampleRegistry : NSObject 12 | 13 | + (instancetype)sharedRegistry; 14 | - (KWSharedExample *)sharedExampleForName:(NSString *)name; 15 | - (void)registerSharedExample:(KWSharedExample *)sharedExample; 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Verifiers/KWExistVerifier.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | #import "KWExpectationType.h" 9 | #import "KWVerifying.h" 10 | 11 | @class KWCallSite; 12 | 13 | @protocol KWReporting; 14 | 15 | @interface KWExistVerifier : NSObject 16 | 17 | #pragma mark - Initializing 18 | 19 | - (id)initWithExpectationType:(KWExpectationType)anExpectationType callSite:(KWCallSite *)aCallSite reporter:(id)aReporter; 20 | 21 | + (id)existVerifierWithExpectationType:(KWExpectationType)anExpectationType callSite:(KWCallSite *)aCallSite reporter:(id)aReporter; 22 | 23 | #pragma mark - Properties 24 | 25 | @property (nonatomic, strong) id subject; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /Example/Pods/Kiwi/Classes/Verifiers/KWVerifying.h: -------------------------------------------------------------------------------- 1 | // 2 | // Licensed under the terms in License.txt 3 | // 4 | // Copyright 2010 Allen Ding. All rights reserved. 5 | // 6 | 7 | #import "KiwiConfiguration.h" 8 | 9 | @class KWCallSite; 10 | 11 | @protocol KWVerifying 12 | 13 | @property (nonatomic, readonly) KWCallSite *callSite; 14 | 15 | - (NSString *)descriptionForAnonymousItNode; 16 | 17 | #pragma mark - Subjects 18 | 19 | @property (nonatomic, strong) id subject; 20 | 21 | #pragma mark - Ending Examples 22 | 23 | - (void)exampleWillEnd; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/EncryptedCoreData/EncryptedCoreData-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_EncryptedCoreData : NSObject 3 | @end 4 | @implementation PodsDummy_EncryptedCoreData 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/EncryptedCoreData/EncryptedCoreData-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/EncryptedCoreData/EncryptedCoreData-umbrella.h: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | #import "EncryptedStore.h" 14 | 15 | FOUNDATION_EXPORT double EncryptedCoreDataVersionNumber; 16 | FOUNDATION_EXPORT const unsigned char EncryptedCoreDataVersionString[]; 17 | 18 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/EncryptedCoreData/EncryptedCoreData.modulemap: -------------------------------------------------------------------------------- 1 | framework module EncryptedCoreData { 2 | umbrella header "EncryptedCoreData-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/EncryptedCoreData/EncryptedCoreData.xcconfig: -------------------------------------------------------------------------------- 1 | CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/EncryptedCoreData 2 | FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/SQLCipher" 3 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 4 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" 5 | OTHER_CFLAGS = $(inherited) -DSQLITE_HAS_CODEC -DSQLCIPHER_CRYPTO_CC 6 | OTHER_LDFLAGS = -framework "CoreData" -framework "Security" 7 | PODS_BUILD_DIR = $BUILD_DIR 8 | PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 9 | PODS_ROOT = ${SRCROOT} 10 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/EncryptedCoreData 11 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} 12 | SKIP_INSTALL = YES 13 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/EncryptedCoreData/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | ${PRODUCT_BUNDLE_IDENTIFIER} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 3.1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/HealthVault-Tests/HealthVault-Tests-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_HealthVault_Tests : NSObject 3 | @end 4 | @implementation PodsDummy_HealthVault_Tests 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/HealthVault-Tests/HealthVault-Tests-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/HealthVault-Tests/HealthVault-Tests.modulemap: -------------------------------------------------------------------------------- 1 | framework module HealthVault { 2 | umbrella header "HealthVault-Tests-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/HealthVault-Tests/HealthVault-Tests.xcconfig: -------------------------------------------------------------------------------- 1 | CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/HealthVault-Tests 2 | FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/EncryptedCoreData" "$PODS_CONFIGURATION_BUILD_DIR/SQLCipher" 3 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 THING_CACHE=1 4 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" $(inherited) $(SDKROOT)/usr/include/libxml2 5 | OTHER_LDFLAGS = -l"xml2" -framework "CoreData" -framework "MobileCoreServices" -framework "Security" -framework "SystemConfiguration" -framework "UIKit" 6 | PODS_BUILD_DIR = $BUILD_DIR 7 | PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 8 | PODS_ROOT = ${SRCROOT} 9 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/../.. 10 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} 11 | SKIP_INSTALL = YES 12 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/HealthVault-Tests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | ${PRODUCT_BUNDLE_IDENTIFIER} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 3.0.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/HealthVault/HealthVault-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_HealthVault : NSObject 3 | @end 4 | @implementation PodsDummy_HealthVault 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/HealthVault/HealthVault-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/HealthVault/HealthVault.modulemap: -------------------------------------------------------------------------------- 1 | framework module HealthVault { 2 | umbrella header "HealthVault-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/HealthVault/HealthVault.xcconfig: -------------------------------------------------------------------------------- 1 | CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/HealthVault 2 | FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/EncryptedCoreData" "$PODS_CONFIGURATION_BUILD_DIR/SQLCipher" 3 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 THING_CACHE=1 4 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" $(inherited) $(SDKROOT)/usr/include/libxml2 5 | OTHER_LDFLAGS = -l"xml2" -framework "CoreData" -framework "MobileCoreServices" -framework "Security" -framework "SystemConfiguration" -framework "UIKit" 6 | PODS_BUILD_DIR = $BUILD_DIR 7 | PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 8 | PODS_ROOT = ${SRCROOT} 9 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/../.. 10 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} 11 | SKIP_INSTALL = YES 12 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/HealthVault/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | ${PRODUCT_BUNDLE_IDENTIFIER} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 3.0.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Kiwi/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | ${PRODUCT_BUNDLE_IDENTIFIER} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 2.4.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Kiwi/Kiwi-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Kiwi : NSObject 3 | @end 4 | @implementation PodsDummy_Kiwi 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Kiwi/Kiwi-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | #import 14 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Kiwi/Kiwi.modulemap: -------------------------------------------------------------------------------- 1 | framework module Kiwi { 2 | umbrella header "Kiwi-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Kiwi/Kiwi.xcconfig: -------------------------------------------------------------------------------- 1 | CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/Kiwi 2 | FRAMEWORK_SEARCH_PATHS = $(inherited) "$(PLATFORM_DIR)/Developer/Library/Frameworks" 3 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 4 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" 5 | OTHER_LDFLAGS = -framework "XCTest" 6 | PODS_BUILD_DIR = $BUILD_DIR 7 | PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) 8 | PODS_ROOT = ${SRCROOT} 9 | PODS_TARGET_SRCROOT = ${PODS_ROOT}/Kiwi 10 | PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} 11 | SKIP_INSTALL = YES 12 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-healthvault-ios-sdk_Example/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | ${PRODUCT_BUNDLE_IDENTIFIER} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-healthvault-ios-sdk_Example/Pods-healthvault-ios-sdk_Example-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_healthvault_ios_sdk_Example : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_healthvault_ios_sdk_Example 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-healthvault-ios-sdk_Example/Pods-healthvault-ios-sdk_Example-umbrella.h: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | 14 | FOUNDATION_EXPORT double Pods_healthvault_ios_sdk_ExampleVersionNumber; 15 | FOUNDATION_EXPORT const unsigned char Pods_healthvault_ios_sdk_ExampleVersionString[]; 16 | 17 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-healthvault-ios-sdk_Example/Pods-healthvault-ios-sdk_Example.modulemap: -------------------------------------------------------------------------------- 1 | framework module Pods_healthvault_ios_sdk_Example { 2 | umbrella header "Pods-healthvault-ios-sdk_Example-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-healthvault-ios-sdk_Tests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | ${PRODUCT_BUNDLE_IDENTIFIER} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-healthvault-ios-sdk_Tests/Pods-healthvault-ios-sdk_Tests-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_healthvault_ios_sdk_Tests : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_healthvault_ios_sdk_Tests 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-healthvault-ios-sdk_Tests/Pods-healthvault-ios-sdk_Tests-umbrella.h: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | 14 | FOUNDATION_EXPORT double Pods_healthvault_ios_sdk_TestsVersionNumber; 15 | FOUNDATION_EXPORT const unsigned char Pods_healthvault_ios_sdk_TestsVersionString[]; 16 | 17 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-healthvault-ios-sdk_Tests/Pods-healthvault-ios-sdk_Tests.modulemap: -------------------------------------------------------------------------------- 1 | framework module Pods_healthvault_ios_sdk_Tests { 2 | umbrella header "Pods-healthvault-ios-sdk_Tests-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/SQLCipher/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | ${PRODUCT_BUNDLE_IDENTIFIER} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | ${PRODUCT_NAME} 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 3.4.1 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | ${CURRENT_PROJECT_VERSION} 23 | NSPrincipalClass 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/SQLCipher/SQLCipher-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_SQLCipher : NSObject 3 | @end 4 | @implementation PodsDummy_SQLCipher 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/SQLCipher/SQLCipher-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/SQLCipher/SQLCipher-umbrella.h: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #else 4 | #ifndef FOUNDATION_EXPORT 5 | #if defined(__cplusplus) 6 | #define FOUNDATION_EXPORT extern "C" 7 | #else 8 | #define FOUNDATION_EXPORT extern 9 | #endif 10 | #endif 11 | #endif 12 | 13 | #import "sqlite3.h" 14 | 15 | FOUNDATION_EXPORT double SQLCipherVersionNumber; 16 | FOUNDATION_EXPORT const unsigned char SQLCipherVersionString[]; 17 | 18 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/SQLCipher/SQLCipher.modulemap: -------------------------------------------------------------------------------- 1 | framework module SQLCipher { 2 | umbrella header "SQLCipher-umbrella.h" 3 | 4 | export * 5 | module * { export * } 6 | } 7 | -------------------------------------------------------------------------------- /Example/Tests/Tests-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleShortVersionString 16 | 1.0 17 | CFBundleSignature 18 | ???? 19 | CFBundleVersion 20 | 1 21 | 22 | 23 | -------------------------------------------------------------------------------- /Example/Tests/Tests-Prefix.pch: -------------------------------------------------------------------------------- 1 | // The contents of this file are implicitly included at the beginning of every test case source file. 2 | 3 | #ifdef __OBJC__ 4 | 5 | @import Kiwi; 6 | @import HealthVault; 7 | 8 | #endif 9 | -------------------------------------------------------------------------------- /Example/Tests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/Images.xcassets/AppIcon.appiconset/hv-sample-icon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/healthvault-ios-sdk/37d3e97b5a246cc76858c85d460f672cdc90399c/Example/healthvault-ios-sdk/Images.xcassets/AppIcon.appiconset/hv-sample-icon@2x.png -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/Images.xcassets/AppIcon.appiconset/hv-sample-icon@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/healthvault-ios-sdk/37d3e97b5a246cc76858c85d460f672cdc90399c/Example/healthvault-ios-sdk/Images.xcassets/AppIcon.appiconset/hv-sample-icon@3x.png -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/MHVAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVAppDelegate.h 3 | // SDKFeatures 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | 21 | @class MHVViewController; 22 | 23 | @interface MHVAppDelegate : UIResponder 24 | 25 | @property (strong, nonatomic) UIWindow *window; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/MHVConditionFactory.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVConditionFactory.h 3 | // SDKFeatures 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVThingTestExtensions.h" 20 | 21 | @interface MHVCondition (MHVFactoryMethods) 22 | 23 | +(NSArray *) createRandomForDay:(NSDate *) date; 24 | +(NSArray *) createRandomMetricForDay:(NSDate *) date; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/MHVFeaturesConfiguration.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVFeaturesConfiguration.h 3 | // SDKFeatures 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | 21 | @interface MHVFeaturesConfiguration : NSObject 22 | 23 | + (MHVConfiguration *)configuration; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/MHVFeaturesConstants.h: -------------------------------------------------------------------------------- 1 | // 2 | // HVFeaturesConstants.m 3 | // SDKFeatures 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #ifndef MHVFeaturesConstants_h 20 | #define MHVFeaturesConstants_h 21 | 22 | #define SHOULD_USE_MULTI_RECORD 1 23 | 24 | static NSString *kPersonalImageUpdateNotification = @"PersonalImageUpdate"; 25 | 26 | #endif /* MHVFeaturesConstants_h */ 27 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/MHVFileFactory.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVFileFactory.h 3 | // SDKFeatures 4 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 5 | // 6 | // Licensed under the Apache License, Version 2.0 (the "License"); 7 | // you may not use this file except in compliance with the License. 8 | // You may obtain a copy of the License at 9 | // 10 | // http://www.apache.org/licenses/LICENSE-2.0 11 | // 12 | // Unless required by applicable law or agreed to in writing, software 13 | // distributed under the License is distributed on an "AS IS" BASIS, 14 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | // See the License for the specific language governing permissions and 16 | // limitations under the License. 17 | // 18 | // 19 | 20 | #import "MHVThingDataTypedFactory.h" 21 | 22 | @interface MHVFile (MHVFactoryMethods) 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/MHVFileFeatures.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVFileFeatures.h 3 | // SDKFeatures 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | 20 | #import "MHVThingDataTypedFeatures.h" 21 | 22 | @interface MHVFileFeatures : MHVThingDataTypedFeatures 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/MHVPersonalImageFactory.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVPersonalImageFactory.h 3 | // SDKFeatures 4 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 5 | // 6 | // Licensed under the Apache License, Version 2.0 (the "License"); 7 | // you may not use this file except in compliance with the License. 8 | // You may obtain a copy of the License at 9 | // 10 | // http://www.apache.org/licenses/LICENSE-2.0 11 | // 12 | // Unless required by applicable law or agreed to in writing, software 13 | // distributed under the License is distributed on an "AS IS" BASIS, 14 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | // See the License for the specific language governing permissions and 16 | // limitations under the License. 17 | // 18 | 19 | #import "MHVPersonalImage.h" 20 | 21 | @interface MHVPersonalImage (Factory) 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/MHVPersonalImageFeatures.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVPersonalImageFeatures.h 3 | // SDKFeatures 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | 20 | #import "MHVThingDataTypedFeatures.h" 21 | 22 | @interface MHVPersonalImageFeatures : MHVThingDataTypedFeatures 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/MHVProcedureFactory.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVProcedureFactory.m 3 | // SDKFeatures 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVThingTestExtensions.h" 20 | 21 | @interface MHVProcedure (MHVFactoryMethods) 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/MHVStatusLabel.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVStatusLabel.h 3 | // SDKFeatures 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | 20 | #import 21 | 22 | @interface MHVStatusLabel : UILabel 23 | 24 | - (void)showStatus:(NSString *)format, ...; 25 | - (void)clearStatus; 26 | - (void)showActivity; 27 | - (void)hideActivity; 28 | - (void)showBusy; 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/MHVUIAlert.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVUIAlert.h 3 | // SDKFeatures 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | 20 | #import 21 | 22 | @interface MHVUIAlert : NSObject 23 | 24 | + (void)showInformationalMessage:(NSString *)message; 25 | + (void)showYesNoPromptWithMessage:(NSString *)message completion:(void (^)(BOOL selectedYes))completion; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/SDKFeatures-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'SDKFeatures' target in the 'SDKFeatures' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_4_0 8 | #warning "This project uses features only available in iOS SDK 4.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #import "MHVLib.h" 15 | #import "MHVFeaturesConstants.h" 16 | #import "MHVFeaturesConfiguration.h" 17 | #endif 18 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/ViewControllers/ActionPlanTasks/MHVActionPlanTaskDetailViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVActionPlanTaskDetailViewController.h 3 | // SDKFeatures 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVTypeViewController.h" 20 | 21 | @interface MHVActionPlanTaskDetailViewController : UIViewController 22 | 23 | - (instancetype)initWithTaskId:(NSString *)taskId; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/ViewControllers/ActionPlanTasks/MHVActionPlanTaskListViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVActionPlanTaskListViewController.h 3 | // SDKFeatures 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVTypeViewController.h" 20 | 21 | @interface MHVActionPlanTaskListViewController : UIViewController 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/ViewControllers/Goals/MHVGoalAddViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVGoalAddViewController.h 3 | // SDKFeatures 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVTypeViewController.h" 21 | #import "MHVMoreFeatures.h" 22 | #import "MHVFeatureActions.h" 23 | #import "MHVStatusLabel.h" 24 | 25 | @interface MHVGoalAddViewController : UIViewController 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/ViewControllers/MHVViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVViewController.h 3 | // SDKFeatures 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | 21 | // 22 | // Root level controller 23 | // 24 | @interface MHVViewController : UIViewController 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/ViewControllers/Timeline/MHVTimelineSnapshotViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVTimelineSnapshotViewController.h 3 | // SDKFeatures 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | 21 | @interface MHVTimelineSnapshotViewController : UIViewController 22 | 23 | - (id)initWithTypeClass:(Class)typeClass useMetric:(BOOL)metric; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/healthvault-ios-sdk-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #import 8 | 9 | #ifndef __IPHONE_8_0 10 | #warning "This project uses features only available in iOS SDK 8.0 and later." 11 | #endif 12 | 13 | #ifdef __OBJC__ 14 | @import UIKit; 15 | @import Foundation; 16 | @import HealthVault; 17 | 18 | #import "MHVFeaturesConstants.h" 19 | #import "MHVFeaturesConfiguration.h" 20 | #endif 21 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/healthvault_ios_sdk_Example-Bridging-Header.h: -------------------------------------------------------------------------------- 1 | // 2 | // Use this file to import your target's public headers that you would like to expose to Swift. 3 | // 4 | 5 | #import 6 | #import "MHVFeaturesConfiguration.h" 7 | #import "MHVTypeListViewController.h" 8 | #import "MHVFeaturesConstants.h" 9 | -------------------------------------------------------------------------------- /Example/healthvault-ios-sdk/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // SDKFeatures 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | 20 | #import 21 | #import "MHVAppDelegate.h" 22 | 23 | int main(int argc, char *argv[]) 24 | { 25 | @autoreleasepool { 26 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([MHVAppDelegate class])); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /HealthVault/Assets/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/microsoft/healthvault-ios-sdk/37d3e97b5a246cc76858c85d460f672cdc90399c/HealthVault/Assets/.gitkeep -------------------------------------------------------------------------------- /HealthVault/Classes/Caching/MHVThingCacheConfiguration.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVThingCacheConfiguration.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | 20 | #import 21 | #import "MHVThingCacheConfigurationProtocol.h" 22 | 23 | @interface MHVThingCacheConfiguration : NSObject 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /HealthVault/Classes/Caching/Private/CoreData/MHVCachedRecord+CoreDataClass.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVCachedRecord+CoreDataClass.h 3 | // 4 | // 5 | // This file was automatically generated and should not be edited. 6 | // 7 | 8 | #import 9 | #import 10 | 11 | @class MHVCachedThing, MHVPendingThingOperation; 12 | 13 | NS_ASSUME_NONNULL_BEGIN 14 | 15 | @interface MHVCachedRecord : NSManagedObject 16 | 17 | @end 18 | 19 | NS_ASSUME_NONNULL_END 20 | 21 | #import "MHVCachedRecord+CoreDataProperties.h" 22 | -------------------------------------------------------------------------------- /HealthVault/Classes/Caching/Private/CoreData/MHVCachedRecord+CoreDataClass.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVCachedRecord+CoreDataClass.m 3 | // 4 | // 5 | // This file was automatically generated and should not be edited. 6 | // 7 | 8 | #import "MHVCachedRecord+CoreDataClass.h" 9 | #import "MHVCachedThing+CoreDataClass.h" 10 | #import "MHVPendingThingOperation+CoreDataClass.h" 11 | 12 | @implementation MHVCachedRecord 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /HealthVault/Classes/Caching/Private/CoreData/MHVCachedRecord+CoreDataProperties.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVCachedRecord+CoreDataProperties.m 3 | // 4 | // 5 | // This file was automatically generated and should not be edited. 6 | // 7 | 8 | #import "MHVCachedRecord+CoreDataProperties.h" 9 | 10 | @implementation MHVCachedRecord (CoreDataProperties) 11 | 12 | + (NSFetchRequest *)fetchRequest { 13 | return [[NSFetchRequest alloc] initWithEntityName:@"MHVCachedRecord"]; 14 | } 15 | 16 | @dynamic isValid; 17 | @dynamic lastSyncDate; 18 | @dynamic lastConsistencyDate; 19 | @dynamic newestHealthVaultSequenceNumber; 20 | @dynamic newestCacheSequenceNumber; 21 | @dynamic recordId; 22 | @dynamic pendingThingOperations; 23 | @dynamic things; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /HealthVault/Classes/Caching/Private/CoreData/MHVCachedThing+CoreDataClass.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVCachedThing+CoreDataClass.h 3 | // 4 | // 5 | // This file was automatically generated and should not be edited. 6 | // 7 | 8 | #import 9 | #import 10 | 11 | @class MHVCachedRecord; 12 | 13 | NS_ASSUME_NONNULL_BEGIN 14 | 15 | @interface MHVCachedThing : NSManagedObject 16 | 17 | @end 18 | 19 | NS_ASSUME_NONNULL_END 20 | 21 | #import "MHVCachedThing+CoreDataProperties.h" 22 | -------------------------------------------------------------------------------- /HealthVault/Classes/Caching/Private/CoreData/MHVCachedThing+CoreDataClass.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVCachedThing+CoreDataClass.m 3 | // 4 | // 5 | // This file was automatically generated and should not be edited. 6 | // 7 | 8 | #import "MHVCachedThing+CoreDataClass.h" 9 | #import "MHVCachedRecord+CoreDataClass.h" 10 | 11 | @implementation MHVCachedThing 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /HealthVault/Classes/Caching/Private/CoreData/MHVCachedThing+CoreDataProperties.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVCachedThing+CoreDataProperties.m 3 | // 4 | // 5 | // This file was automatically generated and should not be edited. 6 | // 7 | 8 | #import "MHVCachedThing+CoreDataProperties.h" 9 | 10 | @implementation MHVCachedThing (CoreDataProperties) 11 | 12 | + (NSFetchRequest *)fetchRequest { 13 | return [[NSFetchRequest alloc] initWithEntityName:@"MHVCachedThing"]; 14 | } 15 | 16 | @dynamic createDate; 17 | @dynamic createdByAppId; 18 | @dynamic createdByPersonId; 19 | @dynamic effectiveDate; 20 | @dynamic thingId; 21 | @dynamic typeId; 22 | @dynamic updateDate; 23 | @dynamic updatedByAppId; 24 | @dynamic updatedByPersonId; 25 | @dynamic version; 26 | @dynamic xmlString; 27 | @dynamic isPlaceholder; 28 | @dynamic record; 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /HealthVault/Classes/Caching/Private/CoreData/MHVPendingThingOperation+CoreDataClass.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVPendingThingOperation+CoreDataClass.h 3 | // 4 | // 5 | // This file was automatically generated and should not be edited. 6 | // 7 | 8 | #import 9 | #import 10 | 11 | @class MHVCachedRecord; 12 | 13 | NS_ASSUME_NONNULL_BEGIN 14 | 15 | @interface MHVPendingThingOperation : NSManagedObject 16 | 17 | @end 18 | 19 | NS_ASSUME_NONNULL_END 20 | 21 | #import "MHVPendingThingOperation+CoreDataProperties.h" 22 | -------------------------------------------------------------------------------- /HealthVault/Classes/Caching/Private/CoreData/MHVPendingThingOperation+CoreDataClass.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVPendingThingOperation+CoreDataClass.m 3 | // 4 | // 5 | // This file was automatically generated and should not be edited. 6 | // 7 | 8 | #import "MHVPendingThingOperation+CoreDataClass.h" 9 | #import "MHVCachedRecord+CoreDataClass.h" 10 | 11 | @implementation MHVPendingThingOperation 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /HealthVault/Classes/Caching/Private/CoreData/MHVPendingThingOperation+CoreDataProperties.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVPendingThingOperation+CoreDataProperties.h 3 | // 4 | // 5 | // This file was automatically generated and should not be edited. 6 | // 7 | 8 | #import "MHVPendingThingOperation+CoreDataClass.h" 9 | 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface MHVPendingThingOperation (CoreDataProperties) 14 | 15 | + (NSFetchRequest *)fetchRequest; 16 | 17 | @property (nullable, nonatomic, copy) NSString *identifier; 18 | @property (nullable, nonatomic, copy) NSDate *originalRequestDate; 19 | @property (nullable, nonatomic, copy) NSString *name; 20 | @property (nonatomic) int64_t version; 21 | @property (nullable, nonatomic, copy) NSString *parameters; 22 | @property (nullable, nonatomic, copy) NSString *correlationId; 23 | @property (nullable, nonatomic, retain) MHVCachedRecord *record; 24 | 25 | @end 26 | 27 | NS_ASSUME_NONNULL_END 28 | -------------------------------------------------------------------------------- /HealthVault/Classes/Caching/Private/CoreData/MHVPendingThingOperation+CoreDataProperties.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVPendingThingOperation+CoreDataProperties.m 3 | // 4 | // 5 | // This file was automatically generated and should not be edited. 6 | // 7 | 8 | #import "MHVPendingThingOperation+CoreDataProperties.h" 9 | 10 | @implementation MHVPendingThingOperation (CoreDataProperties) 11 | 12 | + (NSFetchRequest *)fetchRequest { 13 | return [[NSFetchRequest alloc] initWithEntityName:@"MHVPendingThingOperation"]; 14 | } 15 | 16 | @dynamic identifier; 17 | @dynamic originalRequestDate; 18 | @dynamic name; 19 | @dynamic version; 20 | @dynamic parameters; 21 | @dynamic correlationId; 22 | @dynamic record; 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Caching/Private/CoreData/MHVThingCacheDatabase+CoreDataModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVThingCacheDatabase+CoreDataModel.h 3 | // 4 | // 5 | // This file was automatically generated and should not be edited. 6 | // 7 | 8 | #import 9 | #import 10 | 11 | #import "MHVCachedRecord+CoreDataClass.h" 12 | #import "MHVCachedThing+CoreDataClass.h" 13 | #import "MHVPendingThingOperation+CoreDataClass.h" 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /HealthVault/Classes/Caching/Private/CoreData/MHVThingCacheDatabase+CoreDataModel.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVThingCacheDatabase+CoreDataModel.m 3 | // 4 | // 5 | // This file was automatically generated and should not be edited. 6 | // 7 | 8 | #import "MHVThingCacheDatabase+CoreDataModel.h" 9 | 10 | 11 | -------------------------------------------------------------------------------- /HealthVault/Classes/Connection/MHVConnections.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVConnections.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #ifndef MHVConnections_h 20 | #define MHVConnections_h 21 | 22 | #import "MHVConnectionFactory.h" 23 | #import "MHVConnectionFactoryProtocol.h" 24 | #import "MHVSodaConnectionProtocol.h" 25 | #import "MHVConfiguration.h" 26 | 27 | #endif /* MHVConnections_h */ 28 | -------------------------------------------------------------------------------- /HealthVault/Classes/Connection/Private/MHVConnectionFactoryInternal.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVConnectionFactoryInternal.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVConnectionFactoryProtocol.h" 21 | 22 | @interface MHVConnectionFactoryInternal : NSObject 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Headers/MHVRestApi.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVRestApi.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #include "MHVRemoteMonitoringClient.h" 20 | #include "MHVActionPlansApi.h" 21 | #include "MHVActionPlanTasksApi.h" 22 | #include "MHVGoalsApi.h" 23 | #include "MHVGoalsRecommendationsApi.h" 24 | -------------------------------------------------------------------------------- /HealthVault/Classes/Json/MHVJsonCacheItem.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVJsonCacheItem.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | 20 | #import 21 | 22 | @interface MHVJsonCacheItem : NSObject 23 | 24 | @property (nonatomic, strong) NSString *jsonHash; 25 | @property (nonatomic, strong) Class toClass; 26 | @property (nonatomic, strong) id object; 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /HealthVault/Classes/Json/MHVJsonCacheItem.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVJsonCacheItem.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | 20 | #import "MHVJsonCacheItem.h" 21 | 22 | @implementation MHVJsonCacheItem 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Json/MHVPropertyIntrospection.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVJsonEnumProtocol.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | 20 | #import 21 | 22 | @interface MHVPropertyIntrospection : NSObject 23 | 24 | + (BOOL) class:(Class)class hasPropertyNamed: (NSString *) name; 25 | + (const char *) class:(Class)class typeOfPropertyNamed: (NSString *) name; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /HealthVault/Classes/Models/Categories/NSArray+DataModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSArray+DataModel.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | 21 | @interface NSArray (DataModel) 22 | 23 | - (instancetype)initWithObject:(id)object objectParameters:(Class)itemType; 24 | - (NSString*)jsonRepresentationWithObjectParameters:(NSObject*)parameters; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /HealthVault/Classes/Models/Categories/NSArray+MHVEnum.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSArray+MHVEnum.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | 21 | @interface NSArray (MHVEnum) 22 | 23 | - (NSString *)enumArrayToStringWithSeparator:(NSString *)separator; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /HealthVault/Classes/Models/Categories/NSData+DataModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSData+DataModel.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | 21 | @interface NSData (DataModel) 22 | 23 | - (instancetype)initWithObject:(id)object objectParameters:(NSObject*)ignored; 24 | - (NSString*)jsonRepresentationWithObjectParameters:(NSObject*)ignored; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /HealthVault/Classes/Models/Categories/NSData+Utils.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSData+Utils.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | 20 | #import 21 | 22 | @interface NSData (Utils) 23 | 24 | - (NSString *)SHA512; 25 | - (NSString *)hexadecimalString; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /HealthVault/Classes/Models/Categories/NSNull+DataModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSNull+DataModel.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | 21 | @interface NSNull (DataModel) 22 | 23 | - (instancetype)initWithObject:(id)object objectParameters:(NSObject*)ignored; 24 | - (NSString*)jsonRepresentationWithObjectParameters:(NSObject*)ignored; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /HealthVault/Classes/Models/Categories/NSSet+DataModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSSet+DataModel.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | 21 | @interface NSSet (DataModel) 22 | 23 | - (instancetype)initWithObject:(id)object objectParameters:(Class)itemType; 24 | - (NSString*)jsonRepresentationWithObjectParameters:(NSObject*)parameters; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /HealthVault/Classes/Models/Categories/NSString+DataModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSString+DataModel.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | 21 | @interface NSString (DataModel) 22 | 23 | - (instancetype)initWithObject:(id)object objectParameters:(NSObject*)ignored; 24 | - (NSString*)jsonRepresentationWithObjectParameters:(NSObject*)ignored; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /HealthVault/Classes/Models/Categories/NSUUID+DataModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSUUID+DataModel.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | 21 | @interface NSUUID (DataModel) 22 | 23 | - (instancetype)initWithObject:(id)object objectParameters:(NSObject*)ignored; 24 | - (NSString*)jsonRepresentationWithObjectParameters:(NSObject*)ignored; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /HealthVault/Classes/Models/MHVDateTimeBase.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVDateTimeBase.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVModelBase.h" 21 | 22 | @interface MHVDateTimeBase : MHVModelBase 23 | 24 | @property (nonatomic, strong) NSDate* date; 25 | 26 | - (instancetype)initWithDate:(NSDate *)date; 27 | 28 | - (NSString*)dateFormatString; 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /HealthVault/Classes/Models/MHVDateTimeDuration.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVDateTimeDuration.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVDateTimeBase.h" 21 | 22 | @interface MHVDateTimeDuration : MHVDateTimeBase 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Models/MHVDateTimeDuration.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVDateTimeDuration.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVDateTimeDuration.h" 21 | 22 | @implementation MHVDateTimeDuration 23 | 24 | - (NSString*)dateFormatString 25 | { 26 | return @"HH:mm:ss"; 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /HealthVault/Classes/Models/MHVInstant.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVInstant.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVDateTimeBase.h" 21 | 22 | @interface MHVInstant : MHVDateTimeBase 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Models/MHVInstant.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVInstant.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVInstant.h" 21 | 22 | @implementation MHVInstant 23 | 24 | - (NSString*)dateFormatString 25 | { 26 | return @"yyyy-MM-dd'T'HH:mm:ss.SSSSSS'Z'"; 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /HealthVault/Classes/Models/MHVLocalDate.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVLocalDate.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVDateTimeBase.h" 21 | 22 | @interface MHVLocalDate : MHVDateTimeBase 23 | 24 | - (NSString*)timeZone; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /HealthVault/Classes/Models/MHVLocalDateTime.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVLocalDateTime.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVDateTimeBase.h" 21 | 22 | @interface MHVLocalDateTime : MHVDateTimeBase 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Models/MHVLocalDateTime.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVLocalDateTime.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVLocalDateTime.h" 21 | 22 | @implementation MHVLocalDateTime 23 | 24 | - (NSString*)dateFormatString 25 | { 26 | return @"yyyy-MM-dd'T'HH:mm:ss"; 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /HealthVault/Classes/Models/MHVZonedDateTime.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVZonedDateTime.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVDateTimeBase.h" 21 | 22 | @interface MHVZonedDateTime : MHVDateTimeBase 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Private/Asynctask/MHVAsyncOperation.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVAsyncOperation.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | 20 | #import 21 | 22 | @interface MHVAsyncOperation : NSOperation 23 | 24 | -(void)startOperation; 25 | -(void)cancelOperation; 26 | -(void)finishOperation; 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /HealthVault/Classes/Private/Asynctask/MHVAsyncTaskCompletionSource.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVAsyncTaskCompletionSource.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | 20 | #import "MHVAsyncTaskCompletionSource.h" 21 | 22 | @implementation MHVAsyncTaskCompletionSource 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Private/Asynctask/MHVOperationBase.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVOperationBase.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | 20 | 21 | #import 22 | 23 | typedef id(^MHVResultOperationBlock)(id input); 24 | 25 | @interface MHVOperationBase : NSOperation 26 | 27 | -(void)startOperation; 28 | -(void)cancelOperation; 29 | -(void)finishOperation; 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /HealthVault/Classes/Private/Authentication/MHVBrowserAuthBroker.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVBrowserAuthBroker.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVBrowserController.h" 20 | #import "MHVBrowserAuthBrokerProtocol.h" 21 | #import 22 | 23 | @interface MHVBrowserAuthBroker : NSObject 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /HealthVault/Classes/Private/Extensions/MHVViewExtensions.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVViewExtensions.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | 21 | @interface UIView (MHVViewExtensions) 22 | 23 | - (NSArray *)constraintsToFillView:(UIView *)fillView; 24 | - (NSArray *)constraintsToCenterInView:(UIView *)centerInView; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /HealthVault/Classes/Private/Store/MHVKeychainService.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVKeychainService.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | 20 | #import 21 | #import "MHVKeychainServiceProtocol.h" 22 | 23 | @interface MHVKeychainService : NSObject 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /HealthVault/Classes/Private/Transport/MHVAuthSession.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVAuthSession.h 3 | // MHVLib 4 | // 5 | // Copyright 2017 Microsoft Corp. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | 21 | @interface MHVAuthSession : NSObject 22 | 23 | @property (nonatomic, strong, nullable) NSString *authToken; 24 | @property (nonatomic, strong, nullable) NSString *userAuthToken; 25 | @property (nonatomic, strong, nullable) NSUUID *offlinePersonId; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /HealthVault/Classes/Private/Transport/MHVAuthSession.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVAuthSession.m 3 | // MHVLib 4 | // 5 | // Copyright 2017 Microsoft Corp. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVAuthSession.h" 20 | 21 | @implementation MHVAuthSession 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /HealthVault/Classes/ThingTypes/MHVThingRaw.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVThingRaw.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVTypes.h" 21 | 22 | @interface MHVThingRaw : MHVThingDataTyped 23 | 24 | @property (readwrite, nonatomic, strong) NSString* xml; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVBool.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVBool.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVType.h" 21 | 22 | @interface MHVBool : MHVType 23 | 24 | @property (readwrite, nonatomic) BOOL value; 25 | 26 | - (instancetype)initWith:(BOOL)value; 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVDay.h: -------------------------------------------------------------------------------- 1 | // 2 | // Day.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVConstrainedInt.h" 21 | 22 | @interface MHVDay : MHVConstrainedInt 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVDay.m: -------------------------------------------------------------------------------- 1 | // 2 | // Day.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVDay.h" 20 | 21 | 22 | @implementation MHVDay 23 | 24 | - (int)min 25 | { 26 | return 1; 27 | } 28 | 29 | - (int)max 30 | { 31 | return 31; 32 | } 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVEmailAddress.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVEmailAddress.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVConstrainedString.h" 21 | 22 | @interface MHVEmailAddress : MHVConstrainedString 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVEmailAddress.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVEmailAddress.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVEmailAddress.h" 20 | 21 | @implementation MHVEmailAddress 22 | 23 | - (NSUInteger)minLength 24 | { 25 | return 6; 26 | } 27 | 28 | - (NSUInteger)maxLength 29 | { 30 | return 128; 31 | } 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVHour.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVHour.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVConstrainedInt.h" 21 | 22 | @interface MHVHour : MHVConstrainedInt 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVHour.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVHour.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVHour.h" 20 | 21 | @implementation MHVHour 22 | 23 | - (int)min 24 | { 25 | return 0; 26 | } 27 | 28 | - (int)max 29 | { 30 | return 23; 31 | } 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVMillisecond.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVMillisecond.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVConstrainedInt.h" 21 | 22 | @interface MHVMillisecond : MHVConstrainedInt 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVMillisecond.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVMillisecond.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVMillisecond.h" 20 | 21 | @implementation MHVMillisecond 22 | 23 | - (int)min 24 | { 25 | return 0; 26 | } 27 | 28 | - (int)max 29 | { 30 | return 999; 31 | } 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVMinute.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVMinute.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVConstrainedInt.h" 21 | 22 | @interface MHVMinute : MHVConstrainedInt 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVMinute.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVMinute.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVMinute.h" 20 | 21 | @implementation MHVMinute 22 | 23 | - (int)min 24 | { 25 | return 0; 26 | } 27 | 28 | - (int)max 29 | { 30 | return 59; 31 | } 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVMonth.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVMonth.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVConstrainedInt.h" 21 | 22 | @interface MHVMonth : MHVConstrainedInt 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVMonth.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVMonth.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVMonth.h" 20 | 21 | @implementation MHVMonth 22 | 23 | - (int)min 24 | { 25 | return 1; 26 | } 27 | 28 | - (int)max 29 | { 30 | return 12; 31 | } 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVNonNegativeDouble.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVNonNegativeDouble.h 3 | // MHVLib 4 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 5 | // 6 | // Licensed under the Apache License, Version 2.0 (the "License"); 7 | // you may not use this file except in compliance with the License. 8 | // You may obtain a copy of the License at 9 | // 10 | // http://www.apache.org/licenses/LICENSE-2.0 11 | // 12 | // Unless required by applicable law or agreed to in writing, software 13 | // distributed under the License is distributed on an "AS IS" BASIS, 14 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | // See the License for the specific language governing permissions and 16 | // limitations under the License. 17 | 18 | #import 19 | #import "MHVConstrainedDouble.h" 20 | 21 | @interface MHVNonNegativeDouble : MHVConstrainedDouble 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVNonNegativeDouble.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVNonNegativeDouble.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | #import "MHVValidator.h" 20 | #import "MHVNonNegativeDouble.h" 21 | 22 | @implementation MHVNonNegativeDouble 23 | 24 | - (double)min 25 | { 26 | return 0; 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVNonNegativeInt.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVNonNegativeInt.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVConstrainedInt.h" 21 | 22 | @interface MHVNonNegativeInt : MHVConstrainedInt 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVNonNegativeInt.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVNonNegativeInt.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVNonNegativeInt.h" 20 | 21 | @implementation MHVNonNegativeInt 22 | 23 | - (int)min 24 | { 25 | return 0; 26 | } 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVPercentage.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVPercentage.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVConstrainedDouble.h" 20 | 21 | @interface MHVPercentage : MHVConstrainedDouble 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVPercentage.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVPercentage.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | 20 | #import "MHVPercentage.h" 21 | 22 | @implementation MHVPercentage 23 | 24 | -(double) min 25 | { 26 | return 0; 27 | } 28 | -(double) max 29 | { 30 | return 1.0; 31 | } 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVPositiveDouble.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVPositiveDouble.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVConstrainedDouble.h" 21 | 22 | @interface MHVPositiveDouble : MHVConstrainedDouble 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVPositiveDouble.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVPositiveDouble.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVPositiveDouble.h" 20 | 21 | @implementation MHVPositiveDouble 22 | 23 | - (double)min 24 | { 25 | return 0; 26 | } 27 | 28 | - (BOOL)validateValue:(double)value 29 | { 30 | return self.min < value && value <= self.max; 31 | } 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVPositiveInt.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVPositiveInt.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | 20 | #import "MHVConstrainedInt.h" 21 | 22 | @interface MHVPositiveInt : MHVConstrainedInt 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVPositiveInt.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVPositiveInt.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVPositiveInt.h" 20 | 21 | @implementation MHVPositiveInt 22 | 23 | - (int)min 24 | { 25 | return 0; 26 | } 27 | 28 | - (BOOL)validateValue:(int)value 29 | { 30 | return self.min < value && value <= self.max; 31 | } 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVSecond.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVSecond.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVConstrainedInt.h" 21 | 22 | @interface MHVSecond : MHVConstrainedInt 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVSecond.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVSecond.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVSecond.h" 20 | 21 | @implementation MHVSecond 22 | 23 | - (int)min 24 | { 25 | return 0; 26 | } 27 | 28 | - (int)max 29 | { 30 | return 59; 31 | } 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVString1024.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVString1024.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | 20 | #import "MHVConstrainedString.h" 21 | 22 | @interface MHVStringZ1024 : MHVConstrainedString 23 | 24 | @end 25 | 26 | @interface MHVString1024NW : MHVStringZ1024 27 | 28 | @end 29 | 30 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVString128.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVString128.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVConstrainedString.h" 20 | 21 | @interface MHVString128 : MHVConstrainedString 22 | 23 | @end 24 | 25 | 26 | @interface MHVString128NW : MHVString128 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVString255.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVString255.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVConstrainedString.h" 21 | 22 | @interface MHVString255 : MHVConstrainedString 23 | 24 | @end 25 | 26 | @interface MHVStringZ255 : MHVConstrainedString 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVStringNZ256.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVStringNZ256.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVConstrainedString.h" 20 | 21 | @interface MHVStringNZ256 : MHVConstrainedString 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVStringNZ256.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVStringNZ256.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | 20 | #import "MHVStringNZ256.h" 21 | 22 | @implementation MHVStringNZ256 23 | 24 | - (NSUInteger)minLength 25 | { 26 | return 1; 27 | } 28 | 29 | - (NSUInteger)maxLength 30 | { 31 | return 256; 32 | } 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVStringNZNW.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVStringNZNW.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVConstrainedString.h" 20 | 21 | @interface MHVStringNZNW : MHVConstrainedString 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVStringNZNW.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVStringNZNW.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVStringNZNW.h" 20 | 21 | @implementation MHVStringNZNW 22 | 23 | - (NSUInteger)minLength 24 | { 25 | return 1; 26 | } 27 | 28 | - (BOOL)validateValue:(NSString *)value 29 | { 30 | return [value length] > 0 && ![value containsString:@" "]; 31 | } 32 | 33 | @end 34 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVStringZ512.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVStringZ512.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVConstrainedString.h" 21 | 22 | @interface MHVStringZ512 : MHVConstrainedString 23 | 24 | @end 25 | 26 | @interface MHVStringNZ512 : MHVStringZ512 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVUUID.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVUUID.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | 20 | #import "MHVType.h" 21 | 22 | @interface MHVUUID : MHVType 23 | 24 | @property (readwrite, nonatomic, strong) NSMutableArray *identifier; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVYear.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVYear.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVConstrainedInt.h" 21 | 22 | @interface MHVYear : MHVConstrainedInt 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Base/MHVYear.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVYear.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVYear.h" 20 | 21 | @implementation MHVYear 22 | 23 | -(int) min 24 | { 25 | return 1000; 26 | } 27 | -(int) max 28 | { 29 | return 9999; 30 | } 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/Blob/MHVBlob.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVBlob.h 3 | // MHVLib 4 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 5 | // 6 | // Licensed under the Apache License, Version 2.0 (the "License"); 7 | // you may not use this file except in compliance with the License. 8 | // You may obtain a copy of the License at 9 | // 10 | // http://www.apache.org/licenses/LICENSE-2.0 11 | // 12 | // Unless required by applicable law or agreed to in writing, software 13 | // distributed under the License is distributed on an "AS IS" BASIS, 14 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | // See the License for the specific language governing permissions and 16 | // limitations under the License. 17 | // 18 | 19 | #import "MHVBlobInfo.h" 20 | #import "MHVBlobPayload.h" 21 | #import "MHVBlobHashInfo.h" 22 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/MHVAlert.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVAlert.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVType.h" 20 | #import "MHVDow.h" 21 | #import "MHVTime.h" 22 | 23 | @interface MHVAlert : MHVType 24 | 25 | @property (readwrite, nonatomic, strong) MHVDow *dow; 26 | @property (readwrite, nonatomic, strong) MHVTime *time; 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/MHVApplicationSettings.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVApplicationSettings.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | 20 | #import "MHVType.h" 21 | 22 | @interface MHVApplicationSettings : MHVType 23 | 24 | @property (readwrite, nonatomic, strong) NSString *xmlSettings; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/MHVDow.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVDow.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVConstrainedInt.h" 20 | 21 | //1 = Sunday 2 = Monday 3 = Tuesday 4 = Wednesday 5 = Thursday 6 = Friday 7 = Saturday 22 | @interface MHVDow : MHVConstrainedInt 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/MHVDow.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVDow.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVDow.h" 20 | 21 | // 1 = Sunday 2 = Monday 3 = Tuesday 4 = Wednesday 5 = Thursday 6 = Friday 7 = Saturday 22 | @implementation MHVDow 23 | 24 | - (int)min 25 | { 26 | return 1; 27 | } 28 | 29 | - (int)max 30 | { 31 | return 7; 32 | } 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/MHVHeartrateZoneGroup.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVHeartRateZoneGroup.h 3 | // MHVLib 4 | // 5 | // Licensed under the Apache License, Version 2.0 (the "License"); 6 | // you may not use this file except in compliance with the License. 7 | // You may obtain a copy of the License at 8 | // 9 | // http://www.apache.org/licenses/LICENSE-2.0 10 | // 11 | // Unless required by applicable law or agreed to in writing, software 12 | // distributed under the License is distributed on an "AS IS" BASIS, 13 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | // See the License for the specific language governing permissions and 15 | // limitations under the License. 16 | 17 | 18 | #import 19 | #import "MHVType.h" 20 | #import "MHVHeartrateZone.h" 21 | 22 | @interface MHVHeartrateZoneGroup : MHVType 23 | 24 | @property (readwrite, nonatomic, strong) NSString *name; 25 | @property (readwrite, nonatomic, strong) MHVHeartrateZone *heartrateZone; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/MHVInsightMessages.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVInsightMessages.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVType.h" 20 | 21 | @interface MHVInsightMessages : MHVType 22 | 23 | @property (readwrite, nonatomic, strong) NSString *regular; 24 | @property (readwrite, nonatomic, strong) NSString *shortText; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/MHVMaxVO2.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVMaxV02.h 3 | // MHVLib 4 | // 5 | // Licensed under the Apache License, Version 2.0 (the "License"); 6 | // you may not use this file except in compliance with the License. 7 | // You may obtain a copy of the License at 8 | // 9 | // http://www.apache.org/licenses/LICENSE-2.0 10 | // 11 | // Unless required by applicable law or agreed to in writing, software 12 | // distributed under the License is distributed on an "AS IS" BASIS, 13 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | // See the License for the specific language governing permissions and 15 | // limitations under the License. 16 | 17 | #import 18 | #import "MHVType.h" 19 | #import "MHVPositiveDouble.h" 20 | 21 | @interface MHVMaxVO2 : MHVType 22 | 23 | @property (readwrite, nonatomic, strong) MHVPositiveDouble *absolute; 24 | @property (readwrite, nonatomic, strong) MHVPositiveDouble *relative; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/MHVRecordReference.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVRecordReference.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVType.h" 20 | 21 | @interface MHVRecordReference : MHVType 22 | 23 | @property (readwrite, nonatomic, strong) NSUUID *ID; 24 | @property (readwrite, nonatomic, strong) NSUUID *personID; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/MHVStructuredInsightValue.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVStructuredInsightValue.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVType.h" 20 | 21 | @interface MHVStructuredInsightValue : MHVType 22 | 23 | @property (readwrite, nonatomic, strong) NSString *key; 24 | @property (readwrite, nonatomic, strong) NSString *value; 25 | 26 | @end 27 | 28 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/MHVTrackingSourceTypes.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVTrackingSourceTypes.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVType.h" 20 | 21 | @interface MHVTrackingSourceTypes : MHVType 22 | 23 | @property (readwrite, nonatomic, strong) NSArray *sourceType; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/MHVTrackingTriggerTypes.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVTrackingTriggerTypes.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "MHVType.h" 20 | 21 | @interface MHVTrackingTriggerTypes : MHVType 22 | 23 | @property (readwrite, nonatomic, strong) NSArray *triggerType; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/MHVType.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVType.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | #import "MHVClientResult.h" 21 | #import "XLib.h" 22 | 23 | @interface MHVType : XSerializableType 24 | 25 | - (BOOL)isValid; 26 | - (MHVClientResult *)validate; 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/MHVType.m: -------------------------------------------------------------------------------- 1 | // 2 | // MHVType.m 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | 20 | #import "MHVValidator.h" 21 | #import "MHVType.h" 22 | 23 | @implementation MHVType 24 | 25 | - (BOOL)isValid 26 | { 27 | return [self validate] == MHVClientResult_Success; 28 | } 29 | 30 | - (MHVClientResult *)validate 31 | { 32 | MHVVALIDATE_SUCCESS; 33 | } 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/MHVZoneBoundary.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVZoneBoundary.h 3 | // MHVLib 4 | // 5 | // Licensed under the Apache License, Version 2.0 (the "License"); 6 | // you may not use this file except in compliance with the License. 7 | // You may obtain a copy of the License at 8 | // 9 | // http://www.apache.org/licenses/LICENSE-2.0 10 | // 11 | // Unless required by applicable law or agreed to in writing, software 12 | // distributed under the License is distributed on an "AS IS" BASIS, 13 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 | // See the License for the specific language governing permissions and 15 | // limitations under the License. 16 | 17 | 18 | #import 19 | #import "MHVType.h" 20 | #import "MHVPositiveInt.h" 21 | #import "MHVPercentage.h" 22 | 23 | @interface MHVZoneBoundary : MHVType 24 | 25 | @property (readwrite, nonatomic, strong) MHVPositiveInt *absoluteHeartrate; 26 | @property (readwrite, nonatomic, strong) MHVPercentage *percentMaxHeartrate; 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/ServiceDef/MHVConfigurationEntry.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVConfigurationEntry.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | 20 | #import "MHVType.h" 21 | 22 | @interface MHVConfigurationEntry : MHVType 23 | 24 | @property (readwrite, nonatomic, strong) NSString *key; 25 | @property (readwrite, nonatomic, strong) NSString *value; 26 | 27 | @end 28 | 29 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/ServiceDef/MHVServiceDef.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVServiceDef.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | 20 | #import "MHVServiceDefinition.h" 21 | #import "MHVConfigurationEntry.h" 22 | #import "MHVShellInfo.h" 23 | #import "MHVServiceInstance.h" 24 | #import "MHVSystemInstances.h" 25 | -------------------------------------------------------------------------------- /HealthVault/Classes/Types/ServiceDef/MHVShellInfo.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVShellInfo.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | // 20 | 21 | #import "MHVType.h" 22 | 23 | @interface MHVShellInfo : MHVType 24 | 25 | @property (readwrite, nonatomic, strong) NSString *url; 26 | @property (readwrite, nonatomic, strong) NSString *redirectUrl; 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /HealthVault/Classes/Utilities/private/MHVClientInfo.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVClientInfo.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import 20 | 21 | @interface MHVClientInfo : NSObject 22 | 23 | + (NSString *)telemetryInfo; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /HealthVault/Classes/Vocabulary/MHVVocabulary.h: -------------------------------------------------------------------------------- 1 | // 2 | // MHVVocabulary.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | // 19 | 20 | #import "MHVVocabularyIdentifier.h" 21 | #import "MHVVocabularyCodeItem.h" 22 | #import "MHVVocabularyCodeSet.h" 23 | #import "MHVVocabularySearchParams.h" 24 | -------------------------------------------------------------------------------- /HealthVault/Classes/Xml/XLib.h: -------------------------------------------------------------------------------- 1 | // 2 | // XLib.h 3 | // MHVLib 4 | // 5 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 6 | // 7 | // Licensed under the Apache License, Version 2.0 (the "License"); 8 | // you may not use this file except in compliance with the License. 9 | // You may obtain a copy of the License at 10 | // 11 | // http://www.apache.org/licenses/LICENSE-2.0 12 | // 13 | // Unless required by applicable law or agreed to in writing, software 14 | // distributed under the License is distributed on an "AS IS" BASIS, 15 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | // See the License for the specific language governing permissions and 17 | // limitations under the License. 18 | 19 | #import "XString.h" 20 | #import "XReader.h" 21 | #import "XWriter.h" 22 | #import "XSerializer.h" 23 | #import "XSerializableType.h" 24 | -------------------------------------------------------------------------------- /HealthVault/Tools/codegen/swagger.config: -------------------------------------------------------------------------------- 1 | { 2 | "classPrefix": "MHV", 3 | "packageName": "" 4 | } 5 | -------------------------------------------------------------------------------- /HealthVault/Tools/codegen/template/BasicAuthTokenProvider-body.mustache: -------------------------------------------------------------------------------- 1 | #import "{{classPrefix}}BasicAuthTokenProvider.h" 2 | 3 | @implementation {{classPrefix}}BasicAuthTokenProvider 4 | 5 | + (NSString *)createBasicAuthTokenWithUsername:(NSString *)username password:(NSString *)password { 6 | 7 | // return empty string if username and password are empty 8 | if (username.length == 0 && password.length == 0){ 9 | return @""; 10 | } 11 | 12 | NSString *basicAuthCredentials = [NSString stringWithFormat:@"%@:%@", username, password]; 13 | NSData *data = [basicAuthCredentials dataUsingEncoding:NSUTF8StringEncoding]; 14 | basicAuthCredentials = [NSString stringWithFormat:@"Basic %@", [data base64EncodedStringWithOptions:0]]; 15 | 16 | return basicAuthCredentials; 17 | } 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /HealthVault/Tools/codegen/template/BasicAuthTokenProvider-header.mustache: -------------------------------------------------------------------------------- 1 | /** The `{{classPrefix}}BasicAuthTokenProvider` class creates a basic auth token from username and password. 2 | * 3 | * NOTE: This class is auto generated by the swagger code generator program. 4 | * https://github.com/swagger-api/swagger-codegen 5 | * Do not edit the class manually. 6 | */ 7 | 8 | #import 9 | 10 | @interface {{classPrefix}}BasicAuthTokenProvider : NSObject 11 | 12 | + (NSString *)createBasicAuthTokenWithUsername:(NSString *)username password:(NSString *)password; 13 | 14 | @end -------------------------------------------------------------------------------- /HealthVault/Tools/codegen/template/JSONRequestSerializer-header.mustache: -------------------------------------------------------------------------------- 1 | #import 2 | #import 3 | 4 | {{>licenceInfo}} 5 | 6 | @interface {{classPrefix}}JSONRequestSerializer : AFJSONRequestSerializer 7 | @end 8 | -------------------------------------------------------------------------------- /HealthVault/Tools/codegen/template/JSONValueTransformer+ISO8601-body.mustache: -------------------------------------------------------------------------------- 1 | #import 2 | #import "JSONValueTransformer+ISO8601.h" 3 | 4 | @implementation JSONValueTransformer (ISO8601) 5 | 6 | - (NSDate *) NSDateFromNSString:(NSString *)string 7 | { 8 | return [NSDate dateWithISO8601String:string]; 9 | } 10 | 11 | @end 12 | -------------------------------------------------------------------------------- /HealthVault/Tools/codegen/template/JSONValueTransformer+ISO8601-header.mustache: -------------------------------------------------------------------------------- 1 | #import 2 | #import 3 | 4 | {{>licenceInfo}} 5 | 6 | @interface JSONValueTransformer (ISO8601) 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /HealthVault/Tools/codegen/template/NSManagedObject-body.mustache: -------------------------------------------------------------------------------- 1 | {{#models}} 2 | {{#model}} 3 | #import "{{classname}}ManagedObject.h" 4 | 5 | /** 6 | * NOTE: This class is auto generated by the swagger code generator program. 7 | * https://github.com/swagger-api/swagger-codegen 8 | * Do not edit the class manually. 9 | */ 10 | @implementation {{classname}}ManagedObject 11 | {{#isArrayModel}} 12 | 13 | @dynamic entries; 14 | 15 | {{/isArrayModel}}{{^isArrayModel}}{{#vars}} 16 | @dynamic {{name}};{{/vars}} 17 | {{/isArrayModel}} 18 | {{/model}} 19 | @end 20 | {{/models}} 21 | -------------------------------------------------------------------------------- /HealthVault/Tools/codegen/template/Object-header.mustache: -------------------------------------------------------------------------------- 1 | #import 2 | #import 3 | 4 | {{>licenceInfo}} 5 | 6 | @interface {{classPrefix}}Object : JSONModel 7 | 8 | @end 9 | -------------------------------------------------------------------------------- /HealthVault/Tools/codegen/template/QueryParamCollection-body.mustache: -------------------------------------------------------------------------------- 1 | #import "{{classPrefix}}QueryParamCollection.h" 2 | 3 | @implementation {{classPrefix}}QueryParamCollection 4 | 5 | @synthesize values = _values; 6 | @synthesize format = _format; 7 | 8 | - (id)initWithValuesAndFormat:(NSArray *)values 9 | format:(NSString *)format { 10 | 11 | self = [super init]; 12 | if (self) { 13 | _values = values; 14 | _format = format; 15 | } 16 | 17 | return self; 18 | } 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /HealthVault/Tools/codegen/template/QueryParamCollection-header.mustache: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | {{>licenceInfo}} 4 | 5 | @interface {{classPrefix}}QueryParamCollection : NSObject 6 | 7 | @property(nonatomic, readonly) NSArray* values; 8 | @property(nonatomic, readonly) NSString* format; 9 | 10 | - (id) initWithValuesAndFormat: (NSArray*) values 11 | format: (NSString*) format; 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /HealthVault/Tools/codegen/template/api-protocol.mustache: -------------------------------------------------------------------------------- 1 | #import 2 | 3 | @class {{classPrefix}}ApiClient; 4 | 5 | {{>licenceInfo}} 6 | 7 | @protocol {{classPrefix}}Api 8 | 9 | @property(readonly, nonatomic, strong) {{classPrefix}}ApiClient *apiClient; 10 | 11 | -(instancetype) initWithApiClient:({{classPrefix}}ApiClient *)apiClient; 12 | 13 | -(void) setDefaultHeaderValue:(NSString*) value forKey:(NSString*)key; 14 | -(NSString*) defaultHeaderForKey:(NSString*)key; 15 | 16 | -(NSDictionary *)defaultHeaders; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /HealthVault/Tools/codegen/template/licenceInfo.mustache: -------------------------------------------------------------------------------- 1 | // Copyright (c) 2017 Microsoft Corporation. All rights reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | // 15 | 16 | /** 17 | * NOTE: This class is auto generated by the swagger code generator program. 18 | * https://github.com/swagger-api/swagger-codegen.git 19 | * Do not edit the class manually. 20 | */ 21 | -------------------------------------------------------------------------------- /HealthVault/Tools/codegen/template/model_doc.mustache: -------------------------------------------------------------------------------- 1 | {{#models}}{{#model}}# {{classname}} 2 | 3 | ## Properties 4 | Name | Type | Description | Notes 5 | ------------ | ------------- | ------------- | ------------- 6 | {{#vars}}**{{name}}** | {{#isPrimitiveType}}**{{datatype}}**{{/isPrimitiveType}}{{^isPrimitiveType}}[**{{datatype}}**]({{complexType}}.md){{/isPrimitiveType}} | {{description}} | {{^required}}[optional] {{/required}}{{#readOnly}}[readonly] {{/readOnly}}{{#defaultValue}}[default to {{{.}}}]{{/defaultValue}} 7 | {{/vars}} 8 | 9 | [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) 10 | 11 | {{/model}}{{/models}} 12 | -------------------------------------------------------------------------------- /HealthVault/Tools/codegen/template/xccurrentversion.mustache: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | _XCCurrentVersionName 6 | {{classPrefix}}Model.xcdatamodel 7 | 8 | 9 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) Microsoft Corporation. All rights reserved. 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this file except in compliance with the License. 5 | You may obtain a copy of the License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | See the License for the specific language governing permissions and 13 | limitations under the License. 14 | -------------------------------------------------------------------------------- /Pods.xcodeproj: -------------------------------------------------------------------------------- 1 | /Users/namalu/Health/healthvault-ios-sdk/Example/Pods/Pods.xcodeproj --------------------------------------------------------------------------------