Chilkat Online Tools

GetMergeConflicts autoit Example

AWS CodeCommit

; This example requires the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.

$oRest = ObjCreate("Chilkat_9_5_0.Rest")
Local $bSuccess

$oAuthAws = ObjCreate("Chilkat_9_5_0.AuthAws")
$oAuthAws.AccessKey = "AWS_ACCESS_KEY"
$oAuthAws.SecretKey = "AWS_SECRET_KEY"

; Don't forget to change the region to your particular region. (Also make the same change in the call to Connect below.)
$oAuthAws.Region = "us-west-2"
$oAuthAws.ServiceName = "codecommit"
; SetAuthAws causes Chilkat to automatically add the following headers: Authorization, X-Amz-Date
$oRest.SetAuthAws($oAuthAws)

; URL: https://codecommit.us-west-2.amazonaws.com/
; Use the same region as specified above.
$bSuccess = $oRest.Connect("codecommit.us-west-2.amazonaws.com",443,True,True)
If ($bSuccess <> True) Then
    ConsoleWrite("ConnectFailReason: " & $oRest.ConnectFailReason & @CRLF)
    ConsoleWrite($oRest.LastErrorText & @CRLF)
    Exit
EndIf

; The following code creates the JSON request body.
; The JSON created by this code is shown below.

; Use this online tool to generate code from sample JSON:
; Generate Code to Create JSON

$oJson = ObjCreate("Chilkat_9_5_0.JsonObject")
$oJson.UpdateString("conflictDetailLevel","string")
$oJson.UpdateString("conflictResolutionStrategy","string")
$oJson.UpdateString("destinationCommitSpecifier","string")
$oJson.UpdateInt("maxConflictFiles",123)
$oJson.UpdateString("mergeOption","string")
$oJson.UpdateString("nextToken","string")
$oJson.UpdateString("repositoryName","string")
$oJson.UpdateString("sourceCommitSpecifier","string")

; The JSON request body created by the above code:

; {
;   "conflictDetailLevel": "string",
;   "conflictResolutionStrategy": "string",
;   "destinationCommitSpecifier": "string",
;   "maxConflictFiles": number,
;   "mergeOption": "string",
;   "nextToken": "string",
;   "repositoryName": "string",
;   "sourceCommitSpecifier": "string"
; }

$oRest.AddHeader("Content-Type","application/x-amz-json-1.1")
$oRest.AddHeader("X-Amz-Target","CodeCommit_20150413.GetMergeConflicts")

$oSbRequestBody = ObjCreate("Chilkat_9_5_0.StringBuilder")
$oJson.EmitSb($oSbRequestBody)
$oSbResponseBody = ObjCreate("Chilkat_9_5_0.StringBuilder")
$bSuccess = $oRest.FullRequestSb("POST","/",$oSbRequestBody,$oSbResponseBody)
If ($bSuccess <> True) Then
    ConsoleWrite($oRest.LastErrorText & @CRLF)
    Exit
EndIf

Local $iRespStatusCode = $oRest.ResponseStatusCode
ConsoleWrite("response status code = " & $iRespStatusCode & @CRLF)
If ($iRespStatusCode <> 200) Then
    ConsoleWrite("Response Header:" & @CRLF)
    ConsoleWrite($oRest.ResponseHeader & @CRLF)
    ConsoleWrite("Response Body:" & @CRLF)
    ConsoleWrite($oSbResponseBody.GetAsString() & @CRLF)
    Exit
EndIf

$oJResp = ObjCreate("Chilkat_9_5_0.JsonObject")
$oJResp.LoadSb($oSbResponseBody)

; The following code parses the JSON response.
; A sample JSON response is shown below the sample code.

; Use this online tool to generate parsing code from sample JSON:
; Generate Parsing Code from JSON

Local $iContentConflict
Local $iFileModeConflict
Local $sBase
Local $sDestination
Local $sSource
Local $sFilePath
Local $iFileSizesBase
Local $iFileSizesDestination
Local $iFileSizesSource
Local $isBinaryFileBase
Local $isBinaryFileDestination
Local $isBinaryFileSource
Local $sMergeOperationsDestination
Local $sMergeOperationsSource
Local $iNumberOfConflicts
Local $iObjectTypeConflict
Local $sObjectTypesBase
Local $sObjectTypesDestination
Local $sObjectTypesSource

Local $sBaseCommitId = $oJResp.StringOf("baseCommitId")
Local $sDestinationCommitId = $oJResp.StringOf("destinationCommitId")
Local $iMergeable = $oJResp.IntOf("mergeable")
Local $sNextToken = $oJResp.StringOf("nextToken")
Local $sourceCommitId = $oJResp.StringOf("sourceCommitId")
Local $i = 0
Local $iCount_i = $oJResp.SizeOfArray("conflictMetadataList")
While $i < $iCount_i
    $oJResp.I = $i
    $iContentConflict = $oJResp.IntOf("conflictMetadataList[i].contentConflict")
    $iFileModeConflict = $oJResp.IntOf("conflictMetadataList[i].fileModeConflict")
    $sBase = $oJResp.StringOf("conflictMetadataList[i].fileModes.base")
    $sDestination = $oJResp.StringOf("conflictMetadataList[i].fileModes.destination")
    $sSource = $oJResp.StringOf("conflictMetadataList[i].fileModes.source")
    $sFilePath = $oJResp.StringOf("conflictMetadataList[i].filePath")
    $iFileSizesBase = $oJResp.IntOf("conflictMetadataList[i].fileSizes.base")
    $iFileSizesDestination = $oJResp.IntOf("conflictMetadataList[i].fileSizes.destination")
    $iFileSizesSource = $oJResp.IntOf("conflictMetadataList[i].fileSizes.source")
    $isBinaryFileBase = $oJResp.IntOf("conflictMetadataList[i].isBinaryFile.base")
    $isBinaryFileDestination = $oJResp.IntOf("conflictMetadataList[i].isBinaryFile.destination")
    $isBinaryFileSource = $oJResp.IntOf("conflictMetadataList[i].isBinaryFile.source")
    $sMergeOperationsDestination = $oJResp.StringOf("conflictMetadataList[i].mergeOperations.destination")
    $sMergeOperationsSource = $oJResp.StringOf("conflictMetadataList[i].mergeOperations.source")
    $iNumberOfConflicts = $oJResp.IntOf("conflictMetadataList[i].numberOfConflicts")
    $iObjectTypeConflict = $oJResp.IntOf("conflictMetadataList[i].objectTypeConflict")
    $sObjectTypesBase = $oJResp.StringOf("conflictMetadataList[i].objectTypes.base")
    $sObjectTypesDestination = $oJResp.StringOf("conflictMetadataList[i].objectTypes.destination")
    $sObjectTypesSource = $oJResp.StringOf("conflictMetadataList[i].objectTypes.source")
    $i = $i + 1
Wend

; A sample JSON response body parsed by the above code:

; {
;   "baseCommitId": "string",
;   "conflictMetadataList": [
;     {
;       "contentConflict": boolean,
;       "fileModeConflict": boolean,
;       "fileModes": {
;         "base": "string",
;         "destination": "string",
;         "source": "string"
;       },
;       "filePath": "string",
;       "fileSizes": {
;         "base": number,
;         "destination": number,
;         "source": number
;       },
;       "isBinaryFile": {
;         "base": boolean,
;         "destination": boolean,
;         "source": boolean
;       },
;       "mergeOperations": {
;         "destination": "string",
;         "source": "string"
;       },
;       "numberOfConflicts": number,
;       "objectTypeConflict": boolean,
;       "objectTypes": {
;         "base": "string",
;         "destination": "string",
;         "source": "string"
;       }
;     }
;   ],
;   "destinationCommitId": "string",
;   "mergeable": boolean,
;   "nextToken": "string",
;   "sourceCommitId": "string"
; }