Skip to content
This repository has been archived by the owner on Nov 21, 2024. It is now read-only.

# PLEASE NOTE THIS REPOSITORY IS NO LONGER BEING MAINTAINED # THE NEXT GENERATION CLIENT LIBRARY IS AVAILABLE HERE: https://github.com/mimikgit/cocoapod-mimOE-SE-iOS-developer

License

Notifications You must be signed in to change notification settings

mimikgit/cocoapod-EdgeClientLibraryTrial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PLEASE NOTE THIS REPOSITORY IS NO LONGER BEING MAINTAINED

THE NEXT GENERATION CLIENT LIBRARY IS AVAILABLE HERE: https://github.com/mimikgit/cocoapod-mimOE-SE-iOS-developer

EdgeClientLibraryTrial (EdgeCore+EdgeEngineTrial)

mimik Client Library for iOS provides a programmatic way to work with the edgeEngine Runtime to access information about the mobile device on which the application is running.

Overview

The purpose of the mimik Client Library for iOS is to provide a programmatic way to work with the edgeEngine Runtime to access information about the mobile device on which the application is running, as well as mobile devices running within a cluster of mobile devices that are hosting the edgeEngine Runtime. Also, to allow developers to use edge microservices running within a particular cluster.

By leveraging the EdgeCore cocoapod component of the mimik Client Library, developers can build applications compatible with the edgeEngine Runtime. This not only harnesses the strength of edge computing but also provides an inherent flexibility in its paradigm.

Additionally, this component provides utility APIs that help developers with core operations such as Authentication, edgeEngine Runtime Setup, deployment of edge microservices and handling of Network calls.

Furthermore, the mimik Client Library EdgeEngine cocoapod component provides edgeEngine Runtime lifecycle control APIs, as well as vendoring the actual edgeEngine Runtime binary into the iOS project.

Supported Platforms, Targets

  • iOS Devices running iOS 15+
  • iOS Simulators running iOS 15+
  • iOS Mac Catalyst running macOS 12.0

Requirements

iOS 15.0+

Installation

To install EdgeClientLibraryTrial or EdgeClientLibrary cocoapods simply add the following lines to your Podfile:

NOTE: Individual developers wanting to use their developer edge license from mimik developer console should add EdgeClientLibraryTrial cocoapod to their Podfile.

NOTE: Enterprise developers should add EdgeClientLibrary cocoapod to their Podfile and use the enterprise edge license received from mimik support.

platform :ios, '15.0'
source 'https://github.com/CocoaPods/Specs.git'
source 'https://github.com/mimikgit/cocoapod-edge-specs.git'

use_frameworks!
inhibit_all_warnings!

def mimik
  pod 'EdgeClientLibraryTrial' ### or pod 'EdgeClientLibrary' (see notes above)
end

target '{target}' do
  mimik()
end

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings['ENABLE_BITCODE'] = 'NO'
      config.build_settings['VALID_ARCHS'] = '$(ARCHS_STANDARD_64_BIT)'
      config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '15.0'
      config.build_settings['BUILD_LIBRARY_FOR_DISTRIBUTION'] = 'YES'
    end
  end
end

Tutorials

After installation, try the following tutorials:

Documentation

EdgeCore/EdgeClient API reference documentation can be found online. Alternatively a docc archive file can be downloaded as a zip file and opened locally in Xcode.

EdgeEngineClient platform protocol API reference documentation can also be found online.

EdgeUserClient platform protocol API reference documentation can be found online as well.

EdgeClient API

Authentication

  • EdgeClient/authorizeDeveloper(developerIdToken:edgeEngineIdToken:)
  • EdgeClient/authorizeUser(email:password:edgeEngineIdToken:service:)
  • EdgeClient/authorizeUser(phoneNumber:edgeEngineIdToken:service:)
  • EdgeClient/validateUser(codes:edgeEngineIdToken:service:)
  • EdgeClient/signup(email:password:edgeEngineIdToken:service:)
  • EdgeClient/validateSignup(codes:password:edgeEngineIdToken:service:)
  • EdgeClient/authorizeBackendUse(authorization:service:)
  • EdgeClient/authorizeBackendUse(federatedToken:policyId:edgeEngineIdToken:service:)
  • EdgeClient/authenticationScopes(serverUrl:)

Account Management

  • EdgeClient/accountInformation(service:authorization:)
  • EdgeClient/passwordReset(email:edgeEngineIdToken:service:)
  • EdgeClient/validatePasswordReset(codes:newPassword:edgeEngineIdToken:service:)
  • EdgeClient/passwordChange(email:currentPassword:newPassword:edgeEngineIdToken:service:)
  • EdgeClient/deleteAccount(email:password:edgeEngineIdToken:service:)
  • EdgeClient/validateDeleteAccount(codes:password:edgeEngineIdToken:service:)
  • EdgeClient/executeDeleteAccount(authorization:service:)

Environment

  • EdgeClient/edgeEngineIdToken()
  • EdgeClient/edgeEngineInfo()
  • EdgeClient/externalEdgeEngineIsRunning()
  • EdgeClient/edgeEngineFullPathUrl()

Edge microservices

  • EdgeClient/deployMicroservice(edgeEngineAccessToken:config:imageTarPath:)
  • EdgeClient/deployedMicroservices(edgeEngineAccessToken:)
  • EdgeClient/deployedMicroservice(imageId:containerId:edgeEngineAccessToken:)
  • EdgeClient/deployedMicroserviceImages(edgeEngineAccessToken:)
  • EdgeClient/deployedMicroserviceImage(imageId:edgeEngineAccessToken:)
  • EdgeClient/deployedMicroserviceContainers(edgeEngineAccessToken:)
  • EdgeClient/deployedMicroserviceContainer(containerId:edgeEngineAccessToken:)
  • EdgeClient/updateMicroservice(edgeEngineAccessToken:microservice:imageTarPath:envVariables:)
  • EdgeClient/updateMicroserviceEnv(edgeEngineAccessToken:microservice:envVariables:)
  • EdgeClient/undeployMicroservice(edgeEngineAccessToken:microservice:)
  • EdgeClient/undeployMicroserviceComponent(edgeEngineAccessToken:component:identifier:)

EdgeClient Type

  • EdgeClient/activateExternalEdgeEngine(host:port:)
  • EdgeClient/deactivateExternalEdgeEngine()
  • EdgeClient/edgeEngineWorkingDirectory()
  • EdgeClient/externalEdgeEngineIsActivated()
  • EdgeClient/setLoggingLevel(level:module:)

EdgeClient/Document

  • EdgeClient/Document/filenameExtensionFor(type:)
  • EdgeClient/Document/filenameExtentionFor(mimeType:)
  • EdgeClient/Document/mimeTypeFor(filenameExtension:)
  • EdgeClient/Document/mimeTypeFor(type:)
  • EdgeClient/Document/uttypeFor(filenameExtension:)
  • EdgeClient/Document/uttypeFor(mimeType:)

EdgeClient/Log

  • EdgeClient/Log/log(level:function:line:items:module:marker:privacy:)
  • EdgeClient/Log/logDebug(function:line:items:module:marker:privacy:)
  • EdgeClient/Log/logError(function:line:items:module:marker:privacy:)
  • EdgeClient/Log/logFault(function:line:items:module:marker:privacy:)
  • EdgeClient/Log/logInfo(function:line:items:module:marker:privacy:)
  • EdgeClient/Log/loggingLevel(module:)

EdgeClient/Microservice

  • EdgeClient/Microservice/basePath()
  • EdgeClient/Microservice/fullPathUrl()
  • EdgeClient/Microservice/fullPathUrl(withEndpoint:)
  • EdgeClient/Microservice/expectedDeployedBasePath(path:clientId:)
  • EdgeClient/Microservice/expectedDeployedImageId(imageName:clientId:)
  • EdgeClient/Microservice/expectedDeployedContainerId(containerName:clientId:)
  • EdgeClient/Microservice/preferredBasePath(path:)
  • EdgeClient/Microservice/preferredConfig(imageName:containerName:basePath:edgeEngineFullPathUrl:clientId:envVariables:signatureKey:ownerCode:)
  • EdgeClient/Microservice/preferredContainerName(name:)
  • EdgeClient/Microservice/preferredImageName(name:)
  • EdgeClient/Microservice/validateMicroserviceResponse(response:encapsulatedData:)

EdgeClient/Node

  • EdgeClient/Node/effectiveUrl()
  • EdgeClient/Node/preferredNodeName()

EdgeClient/Request

  • EdgeClient/Request/downloadContent(sourceUrl:destinationFileUrl:progressHandler:)
  • EdgeClient/Request/downloadImageContent(sourceUrl:)
  • EdgeClient/Request/exportVideo(session:outputURL:outFileType:)
  • EdgeClient/Request/uploadContent(sourceFileUrl:destinationUrl:mimeType:progressHandler:)
  • EdgeClient/Request/authorizedRequest(url:method:authorization:httpHeaders:parameters:contentType:)
  • EdgeClient/Request/call(config:)
  • EdgeClient/Request/call(config:type:)
  • EdgeClient/Request/decode(_:from:)
  • EdgeClient/Request/responseError(response:)
  • EdgeClient/Request/responseJSON(response:dataKey:)

EdgeClient/Service

  • EdgeClient/Service/healthCheck()
  • EdgeClient/Service/urlComponents()
  • EdgeClient/Service/versionCheck(requireMatch:)

EdgeEngineClient protocol API

NOTE: To activate the EdgeEngineClient protocol API developers needs to add EdgeEngine or EdgeEngineTrial cocoapod to their Podfile.

  • EdgeEngineClient/startEdgeEngine(parameters:)
  • EdgeEngineClient/stopEdgeEngine()
  • EdgeEngineClient/restartEdgeEngine()
  • EdgeEngineClient/resetEdgeEngine()
  • EdgeEngineClient/edgeEngineIsRunning()
  • EdgeEngineClient/edgeEngineLifecycleIsManaged()
  • EdgeEngineClient/edgeEngineParameters()
  • EdgeEngineClient/manageEdgeEngineLifecycle(manage:)
  • EdgeEngineClient/expectedEdgeEngineVersion()
  • EdgeEngineClient/setCustomPort(number:)

EdgeUserClient protocol API

NOTE: To activate the EdgeUserClient protocol API developers needs to add EdgeUser cocoapod to their Podfile.

  • EdgeUserClient/addUserProfileNotificationsConsent(service:authorization:consent:)

  • EdgeUserClient/deleteUserProfileNotificationsConsent(service:authorization:consentId:)

  • EdgeUserClient/findUser(service:authorization:email:)

  • EdgeUserClient/updateUserProfile(service:authorization:update:)

  • EdgeUserClient/updateUserProfileAttributes(service:authorization:attributes:)

  • EdgeUserClient/updateUserProfileProperties(service:authorization:parameters:)

  • EdgeUserClient/userProfile(service:authorization:)

  • EdgeUserClient/addressSuggestions(service:authorization:address:maxSuggestions:language:countries:geoLocation:geoFence:)

  • EdgeUserClient/places(service:authorization:address:maxPlaces:language:countries:geoLocation:geoFence:)

  • EdgeUserClient/acceptFriendship(service:authorization:friendId:)

  • EdgeUserClient/cancelFriendship(service:authorization:friendId:)

  • EdgeUserClient/friendList(service:authorization:)

  • EdgeUserClient/friends(service:authorization:)

  • EdgeUserClient/receivedFriendRequests(service:authorization:)

  • EdgeUserClient/receivedFriendRequestList(service:authorization:)

  • EdgeUserClient/requestFriendship(service:authorization:friendId:)

  • EdgeUserClient/sentFriendRequests(service:authorization:)

  • EdgeUserClient/sentFriendRequestList(service:authorization:)

mimik client libraries

Don't forget to checkout all mimik client libraries available on Github

Umbrella cocoapods:

Individual cocoapods:

Author

mimik Technology, Inc.

More details about how the edgeEngine platform revolutionizes computing with the hybrid-cloud approach are at mimik Developer Documentation.

License

Developers can get their edge trial license by following this tutorial.

For details about a full enterprise edge license please contact mimik support.

About

# PLEASE NOTE THIS REPOSITORY IS NO LONGER BEING MAINTAINED # THE NEXT GENERATION CLIENT LIBRARY IS AVAILABLE HERE: https://github.com/mimikgit/cocoapod-mimOE-SE-iOS-developer

Resources

License

Stars

Watchers

Forks