Library Mobile API Reference for iPad  MicroStrategy 2019
MSINetworkRequestImpl Class Reference

#import <MSINetworkRequestImpl.h>

Inheritance diagram for MSINetworkRequestImpl:
MSINetworkRequestBase <MSINetworkRequest> CertificateServerRequest ImageRequestImpl MSICommonURLRequest MSIFileDownloadRequest MSITaskRequest MSIWebRequest BaseRESTfulRequest BrowseElementsTaskRequest BrowseHierarchyTaskRequest CloseSessionsTaskRequest CreateFolderTaskRequest DefaultProjPropTaskRequest DeleteObjectTaskRequest FolderBrowseTaskRequest GetAuthFilterConfigSessionRequest GetCacheUpdateTimes GetDimensionTaskRequest GetFolderURLsRequest InboxMessageTimeTaskRequest IsSessionAliveTaskRequest LoginTaskRequest MessageBasedTaskRequest MSIChangePasswordRequest NamedFolderIDTaskRequest ObjectInfoTaskRequest RefreshSubscriptionTaskRequest ReportListTaskRequest RWDBinaryTaskRequest RWDImageServiceTaskRequest RWDManipulationTaskRequest SaveSubscriptionTaskRequest SearchMetaDataTaskRequest UnsubscribeTaskRequest UploadImageTaskRequest XMLAPITaskRequest

Instance Methods

(WebServerConfiguration *_Nullable) - getWebServer
 
(void) - setProjectInfo:
 
(BOOL) - displayNetworkErrors
 
(NSString *_Nullable) - networkTimeoutDetailMessage
 
(void) - addSessionTo:
 
(void) - URLSessionManager:task:didCompleteWithError:
 
(void) - URLSessionManager:dataTask:didReceiveResponse:completionHandler:
 
(void) - updateErrorDetails:with:
 
- Instance Methods inherited from MSINetworkRequestBase
(void) - addParameter:forKey:
 
(NSString *_Nullable) - encode:
 
(NSURL *_Nullable) - getBaseURL
 
(void) - setBaseURL:
 
(void) - setHTTPMethod:
 
(void) - setHTTPHeaderValue:forField:
 
(void) - logURL:
 
(void) - logURLTest:data:
 
(void) - addFile:forKey:
 
(NSString *_Nullable) - getRequestBody
 
(NSString *_Nullable) - getRequestBodyWithEncoding:
 
(void) - setIsURLLoggable:
 
(void) - setAuthenticationChallengeForNormalModeHandler:
 
(void) - addParameters
 
(void) - handleResponse:data:
 
(void) - reportError:
 
(void) - reportErrorWithErrorDetails:
 
(void) - reportSuccess:
 
(NSString *_Nullable) - loggableRequestBody
 
(void) - handleAuthenticationChallengeForNormalMode:completionHandler:
 
(void) - task:didFailWithError:
 
(NSString *_Nonnull) - loggingClassName
 
(WebAuthModes- serverAuthenticationMode
 
(void) - setHeaderOnRequest:
 
(nullable NSString *) - getExpectedHTTPMethod
 
(NSString *_Nullable) - getLoggerObjectID
 
(ErrorDetails *_Nonnull) - getErrorDetailsFromResponse:
 
(ErrorDetails *_Nonnull) - getErrorDetailsFromError:
 
(void) - URLSessionManager:dataTask:didReceiveResponse:completionHandler:
 
- Instance Methods inherited from <MSINetworkRequest>
(void) - start
 
(void) - cancel
 

Protected Attributes

NSString * sessionState
 
- Protected Attributes inherited from MSINetworkRequestBase
NSURL * baseURL
 
NSMutableDictionary * parameters
 
long long readLength
 
BOOL isInAuthenticationError
 
BOOL isInAuthenticationErrorWithExpiration
 
int certificateError
 
BOOL isKeychainUnavailableForCertificate
 
BOOL isCertificatePinningError
 
AuthenticationChallengeForNormalModeHandler normalAuthenticationChallengeHandler
 

Properties

NSString * sessionID
 
MSIProjectConfigurationproject
 
NSString * loggerID
 
NetworkRequestServerType serverType
 
BOOL suppressNetworkErrorAlerts
 
BOOL usePreferenceStoreForNetworkConnection
 
ClientRequestExecutionHandlerFlags requestExeFlag
 
BOOL isInfluencedByOfflineMode
 
BOOL shouldPromptTouchIdForBasicChallenge
 
BOOL basicChallengeTriggeredByUI
 
- Properties inherited from MSINetworkRequestBase
id< NetworkResponseHandler > handler
 
NSMutableURLRequest * request
 
NSHTTPURLResponse * response
 
NSDate * requestStartTime
 
BOOL notifyProgress
 
EnumNetworkDownloadMode returnDataIncrementally
 
int incrementalDataMinSize
 
BOOL connectionShouldUseCredentialStorage
 
NSInteger networkTimeoutInterval
 
BOOL isAsync
 
BOOL cancelAuthenticationChallengeForClientCertificateMode
 
BOOL ignoreIdentityForClientCertificateMode
 
BOOL isXHR
 
void(^ startRequetCallback )(void)
 
NSMutableData * dataCollection
 

Method Documentation

◆ addSessionTo:()

- (void) addSessionTo: (nonnull NSMutableString *)  parametersString

append session information to the request. Introduced to support sessionID or sessionState

Parameters
parametersStringThe parameterstring that is being created by request

◆ displayNetworkErrors()

- (BOOL) displayNetworkErrors

Deprecated. Use suppressNetworkErrorAlerts instead.

◆ getWebServer()

- (WebServerConfiguration* _Nullable) getWebServer

getWebServer

Returns
web server used in this network request. If request is not on a web server, return nil

◆ networkTimeoutDetailMessage()

- (NSString* _Nullable) networkTimeoutDetailMessage

Deprecated Don't use it any more.

◆ setProjectInfo:()

- (void) setProjectInfo: (MSIProjectInfo *_Nonnull)  _prInfo

Set ProjectInfo if the network request will process on a MicroStrategy project. An alternative way is to set project property. setProjectInfo:

Returns

◆ updateErrorDetails:with:()

- (void) updateErrorDetails: (ErrorDetails *_Nullable)  errorDetails
with: (NSDictionary *_Nullable)  responseDataDictionary 

◆ URLSessionManager:dataTask:didReceiveResponse:completionHandler:()

- (void) URLSessionManager: (MSIURLSessionManager *_Nullable)  sessionManager
dataTask: (NSURLSessionDataTask *_Nullable)  dataTask
didReceiveResponse: (NSURLResponse *_Nullable)  theResponse
completionHandler: (void(^)(NSURLSessionResponseDisposition))  completionHandler 

◆ URLSessionManager:task:didCompleteWithError:()

- (void) URLSessionManager: (MSIURLSessionManager *_Nullable)  sessionManager
task: (NSURLSessionTask *_Nullable)  task
didCompleteWithError: (NSError *_Nullable)  error 

Member Data Documentation

◆ sessionState

- (NSString *) sessionState
readwritenonatomiccopyprotected

Need to set sessionState when network request need to process in MicroStrategy I-Server.

Property Documentation

◆ basicChallengeTriggeredByUI

- (BOOL) basicChallengeTriggeredByUI
readwriteatomic

Weather triggered basic trusted login by touching UI Default value is NO.

◆ isInfluencedByOfflineMode

- (BOOL) isInfluencedByOfflineMode
readwriteatomic

Wether the network request will be sent in offline mode. Default value is YES.

◆ loggerID

- (NSString*) loggerID
readwritenonatomiccopy

Set the reportID to get performance log

◆ project

- (MSIProjectConfiguration*) project
readwritenonatomicstrong

Set project if the network request will process on a MicroStrategy project. An alternative way is using method setProjectInfo

◆ requestExeFlag

- (ClientRequestExecutionHandlerFlags) requestExeFlag
readwritenonatomicassign

Request Flag.

◆ serverType

- (NetworkRequestServerType) serverType
readwriteatomic

Request server type. Can be mobile server or certificate server. Default is mobile server.

◆ sessionID

- (NSString*) sessionID
readwritenonatomiccopy

For dossier server set sessionID when network request need to process in MicroStrategy I-Server.

◆ shouldPromptTouchIdForBasicChallenge

- (BOOL) shouldPromptTouchIdForBasicChallenge
readwriteatomic

Weather prompt touchID for basic trusted when encounter challenge Default value is NO.

◆ suppressNetworkErrorAlerts

- (BOOL) suppressNetworkErrorAlerts
readwriteatomic

This property is used to control whether network error alert will be pop out.

◆ usePreferenceStoreForNetworkConnection

- (BOOL) usePreferenceStoreForNetworkConnection
readwriteatomic

This property is used to indicate that the network connection information, such as webserver configuration, credentials and other connectivity related information are retrieved from PreferenceStore. Default value is YES. Set it to NO if PreferenceStore is not used.