@hpcc-js/comms 2.82.3 → 2.83.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.es6.js +1093 -639
- package/dist/index.es6.js.map +1 -1
- package/dist/index.js +1091 -637
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/dist/index.node.js +1092 -638
- package/dist/index.node.js.map +1 -1
- package/dist/index.node.min.js +1 -1
- package/dist/index.node.min.js.map +1 -1
- package/lib-es6/__package__.js +2 -2
- package/lib-es6/ecl/dfuWorkunit.js +58 -1
- package/lib-es6/ecl/dfuWorkunit.js.map +1 -1
- package/lib-es6/ecl/query.js +102 -34
- package/lib-es6/ecl/query.js.map +1 -1
- package/lib-es6/ecl/workunit.js +9 -1
- package/lib-es6/ecl/workunit.js.map +1 -1
- package/lib-es6/services/fileSpray.js +5 -1
- package/lib-es6/services/fileSpray.js.map +1 -1
- package/lib-es6/services/wsdl/FileSpray/v1.25/FileSpray.js +116 -0
- package/lib-es6/services/wsdl/FileSpray/v1.25/FileSpray.js.map +1 -0
- package/package.json +2 -2
- package/src/__package__.ts +2 -2
- package/src/ecl/dfuWorkunit.ts +56 -3
- package/src/ecl/query.ts +65 -42
- package/src/ecl/workunit.ts +10 -1
- package/src/services/fileSpray.ts +11 -96
- package/src/services/wsdl/FileSpray/v1.25/FileSpray.ts +1040 -0
- package/types/__package__.d.ts +2 -2
- package/types/ecl/dfuWorkunit.d.ts +11 -3
- package/types/ecl/dfuWorkunit.d.ts.map +1 -1
- package/types/ecl/query.d.ts +5 -2
- package/types/ecl/query.d.ts.map +1 -1
- package/types/ecl/workunit.d.ts.map +1 -1
- package/types/services/fileSpray.d.ts +9 -95
- package/types/services/fileSpray.d.ts.map +1 -1
- package/types/services/wsdl/FileSpray/v1.25/FileSpray.d.ts +856 -0
- package/types/services/wsdl/FileSpray/v1.25/FileSpray.d.ts.map +1 -0
- package/types-3.4/__package__.d.ts +2 -2
- package/types-3.4/ecl/dfuWorkunit.d.ts +11 -3
- package/types-3.4/ecl/query.d.ts +5 -2
- package/types-3.4/services/fileSpray.d.ts +9 -95
- package/types-3.4/services/wsdl/FileSpray/v1.25/FileSpray.d.ts +856 -0
package/dist/index.es6.js
CHANGED
|
@@ -13,8 +13,8 @@ import * as tmp from 'tmp';
|
|
|
13
13
|
var trustwave = "\nTrustwave Secure Global Extended Validation CA, Level 1\nSecureTrust Corporation\n00F6F61CE4A3635BB0CA8AACEEFCB2D0F0\n-----BEGIN CERTIFICATE-----\nMIIE+DCCA+CgAwIBAgIRAPb2HOSjY1uwyoqs7vyy0PAwDQYJKoZIhvcNAQELBQAw\nSjELMAkGA1UEBhMCVVMxIDAeBgNVBAoTF1NlY3VyZVRydXN0IENvcnBvcmF0aW9u\nMRkwFwYDVQQDExBTZWN1cmUgR2xvYmFsIENBMB4XDTE1MDgxMjIwMTcyOVoXDTI1\nMDgwOTIwMTcyOVowgbgxCzAJBgNVBAYTAlVTMREwDwYDVQQIEwhJbGxpbm9pczEQ\nMA4GA1UEBxMHQ2hpY2FnbzEhMB8GA1UEChMYVHJ1c3R3YXZlIEhvbGRpbmdzLCBJ\nbmMuMUAwPgYDVQQDEzdUcnVzdHdhdmUgU2VjdXJlIEdsb2JhbCBFeHRlbmRlZCBW\nYWxpZGF0aW9uIENBLCBMZXZlbCAxMR8wHQYJKoZIhvcNAQkBFhBjYUB0cnVzdHdh\ndmUuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAx6D45slgLGq8\n2G/NPFnuFscv7UM1eRoQyx3h0DdSTfoRvHkkNv4Gf6OudZDOXqwV86v/SjcNEP87\nnjMOEqQ7dKQPtiYzEkK0MOrjbRySFC5dvCTI9T8tnBgFpYA9YXwbpUqXxEi0Ayoq\nhA7UQhS7Q+YGrVwZaJ6LiWrQw+x8ACPLqEvPmMZhrxagKwrsKbylMsAQ1ljk8X74\nJ76TSxi/AZpxos7tHD0XbO8elXFZexfsgPLDRpMs6jREVeQj1jVCWLtg9twiXzcI\naUCchBsTSc92WGkKwBnH70dlL2N8kT/BNe3tAsXuBpZRILANY59jLrLnHEJNfado\nt6ZpougolQIDAQABo4IBaDCCAWQwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4E\nFgQUx33qXRmrVNT6P+ZKc956sjwdbC4wDgYDVR0PAQH/BAQDAgGGMD0GA1UdIAQ2\nMDQwMgYEVR0gADAqMCgGCCsGAQUFBwIBFhxodHRwczovL3NzbC50cnVzdHdhdmUu\nY29tL0NBMDIGA1UdHwQrMCkwJ6AloCOGIWh0dHA6Ly9jcmwudHJ1c3R3YXZlLmNv\nbS9TR0NBLmNybDBsBggrBgEFBQcBAQRgMF4wJQYIKwYBBQUHMAGGGWh0dHA6Ly9v\nY3NwLnRydXN0d2F2ZS5jb20wNQYIKwYBBQUHMAKGKWh0dHA6Ly9zc2wudHJ1c3R3\nYXZlLmNvbS9pc3N1ZXJzL1NHQ0EuY3J0MB0GA1UdJQQWMBQGCCsGAQUFBwMCBggr\nBgEFBQcDATAfBgNVHSMEGDAWgBSvRATCQX5Ig9tOOQLs7IR65s7JpDANBgkqhkiG\n9w0BAQsFAAOCAQEAkn/4wKQRLo41fDRkZtfF+3o8JtUmfQXf2zoo9Ll29hhCiz8k\nBOpIek9MrFd/cdNgUw1nckIi+J3udyFrbO5p64JBvtc0K4kAOPFSKpHssFcnRLPx\nFXgGxXq6ohD4Py+xaEApslYFfMy89N6DKs/v/10/+/xD831RFEUMUoQxBimsmmNf\n+cLoMwF5bpoSz9JcWqCmSlK0Nla1dPphaoA/MObLN2iQPpeM3yF5dTUm1tPxe39W\nOlr6nLU1xO+yRDrlGLXrVDP1l1/qGVuwi+xufIAcdFycLLBjSSNX7LOIK3tbva7A\nWctLUs+qhIlUrbPyFERm7YOY4SttWdozeYFNfg==\n-----END CERTIFICATE-----\n\nSecureTrust Domain Validation CA, Level 1\nSecureTrust Corporation\n06F1EC00E80B1BAF9870A7C4B6CBE401A32D68\n-----BEGIN CERTIFICATE-----\nMIIEfzCCA2egAwIBAgITBvHsAOgLG6+YcKfEtsvkAaMtaDANBgkqhkiG9w0BAQsF\nADBIMQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRp\nb24xFzAVBgNVBAMTDlNlY3VyZVRydXN0IENBMB4XDTE5MDEyOTEyNTk1OVoXDTI5\nMDEyOTEyNTk1OVowfDEyMDAGA1UEAxMpU2VjdXJlVHJ1c3QgRG9tYWluIFZhbGlk\nYXRpb24gQ0EsIExldmVsIDExFDASBgNVBAoTC1NlY3VyZVRydXN0MRAwDgYDVQQH\nEwdDaGljYWdvMREwDwYDVQQIEwhJbGxpbm9pczELMAkGA1UEBhMCVVMwggEiMA0G\nCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCjRHBw8iIivBBrfE6HqexQK0oMt2Y/\nx8jO3fN96KEazZwEoGidwloRBk2Q7VfVvZ0ZDk+qwJZGLZJLS1ntGaZLH4/Iel+r\nPnp36IVF7J5MNDB+K81a/y9svEMfDu0p3FdlBUyhHvizZ/zFNP3tolmQfZ7T0mGL\n7lutlNAzFYoVTUlVeF5cSC8Yca906TEKyizYXuXcY8Diee+t+fQRHmSI5Hk5kyXD\nYFWcf2tXEfdkuFlDjJ7HPdFyfJzrNjD+cbqt8R5rZKnK1GNVP1dXm0cIYS+BMlMa\nCC1yF18oygbnOZLw5fDv9bxs4MOgF8E/Iypw0hLQHVkuD8wAvxVgPsqvAgMBAAGj\nggEsMIIBKDASBgNVHRMBAf8ECDAGAQH/AgEAMA4GA1UdDwEB/wQEAwIBhjATBgNV\nHSUEDDAKBggrBgEFBQcDATAdBgNVHQ4EFgQUYt6tehfefLfDfCMXo7Em5UbXOvQw\nHwYDVR0jBBgwFoAUQjK2FvoE/f5dS3rD/fdMQB1aQ68wQQYDVR0gBDowODA2BgRV\nHSAAMC4wLAYIKwYBBQUHAgEWIGh0dHBzOi8vY2VydHMuc2VjdXJldHJ1c3QuY29t\nL0NBMDIGA1UdHwQrMCkwJ6AloCOGIWh0dHA6Ly9jcmwudHJ1c3R3YXZlLmNvbS9T\nVENBLmNybDA2BggrBgEFBQcBAQQqMCgwJgYIKwYBBQUHMAGGGmh0dHA6Ly9vY3Nw\nLnRydXN0d2F2ZS5jb20vMA0GCSqGSIb3DQEBCwUAA4IBAQAHXPYhl+++o//di2Qm\naWGmC1ijxbGbKA4jOSDRvQfxlWOVkqPF11Dpxz+V8Rxw7QFFVoJ5mHpfoXtQOijV\ntsCFknxTKgzQeArNkZrkXBNpYOJAcuc5v0eX0OllBWgVdIvZRl2TM5L/u1WFrlPr\nqwWdEYTkinQwgAHXVV/7WZi6c4StcqNnlw93mlvN6Vspzaf/mWtcYp+aqT9vrqHt\nyNR1k8Ri5eIRPIU0B8woiXTj3bifLg6/O217SY5cWwQKCMFsa6nGWoRVCJ0JJXa0\nZ+m3mPQD2OcW5YMrynhL2VWohyfZAjB8l/NZaeRT7M+vki56fxbx3Bk2lqy8Z1Zz\nWd5m\n-----END CERTIFICATE-----\n\nSecureTrust Extended Validation CA, Level 1\nSecureTrust Corporation\n06F1EC00E31E46D341B2B2633CE480D915F81D\n-----BEGIN CERTIFICATE-----\nMIIEizCCA3OgAwIBAgITBvHsAOMeRtNBsrJjPOSA2RX4HTANBgkqhkiG9w0BAQsF\nADBIMQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRp\nb24xFzAVBgNVBAMTDlNlY3VyZVRydXN0IENBMB4XDTE5MDEyOTEyNTk1OVoXDTI5\nMDEyOTEyNTk1OVowfjE0MDIGA1UEAxMrU2VjdXJlVHJ1c3QgRXh0ZW5kZWQgVmFs\naWRhdGlvbiBDQSwgTGV2ZWwgMTEUMBIGA1UEChMLU2VjdXJlVHJ1c3QxEDAOBgNV\nBAcTB0NoaWNhZ28xETAPBgNVBAgTCElsbGlub2lzMQswCQYDVQQGEwJVUzCCASIw\nDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANS6vRtFpCJBJ7zJODH07Y3k54Qn\nVIBhnQmmWoqFqzCVMX97GAyAfzjcQrhl/TNiJiRCrVQWPI4n0R8eUd91Ab1Qzfsr\nnp+0NRbagVDa6+nF0KcNxbSZ6/iZQ7Ac3HyhCvJS2rH2CVYlzqdsrxDXcZk69jOO\ndPV8+w+7eNIn34BKpB/ZF7iXApDoAKG81kg1VtpGOxJhxTsKLuJmURT4pQjtZqF+\nF6rN64j5T2DOK0gOA4G7BLoTdOQuXkPS38LXKgZ43lKqEenjmiOaMF/XuLYzaHrW\nGYgCM2wJsykgdB9hCsTTEwsHRZzt2q9mLBDvYYWVhql1/kR4K/RN4JdESEECAwEA\nAaOCATYwggEyMBIGA1UdEwEB/wQIMAYBAf8CAQAwDgYDVR0PAQH/BAQDAgGGMB0G\nA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDATAdBgNVHQ4EFgQUA6uAxlUKKpWh\n4Nf+GubAynjMsJYwHwYDVR0jBBgwFoAUQjK2FvoE/f5dS3rD/fdMQB1aQ68wQQYD\nVR0gBDowODA2BgRVHSAAMC4wLAYIKwYBBQUHAgEWIGh0dHBzOi8vY2VydHMuc2Vj\ndXJldHJ1c3QuY29tL0NBMDIGA1UdHwQrMCkwJ6AloCOGIWh0dHA6Ly9jcmwudHJ1\nc3R3YXZlLmNvbS9TVENBLmNybDA2BggrBgEFBQcBAQQqMCgwJgYIKwYBBQUHMAGG\nGmh0dHA6Ly9vY3NwLnRydXN0d2F2ZS5jb20vMA0GCSqGSIb3DQEBCwUAA4IBAQB1\nfzAmGGmtbJyIvOfjq2McCpUoYkXAq6JTN51+nb9NDAihhDoTKMde+801bC1/l54h\nxPPm4HImM6GK6LFckDew/FGwbdRbEznUOJ7uVL5ploNBIjte23kTBUZa9fx3+aXK\nhUTAipSyPtNjnOwVVBVXzrMynfMhdsyRRe7gLXNFYCXIxtks3IkIpuYnc86NAuV9\nnBLFlZzgmbAsW+tMc5QsNvQJ9pQ539K8cqZaM+HFCScreDERxmNtHHbMw+hCa2yL\nOj4ntekgWLO8KQbE0lPUNLIM17QK8aktJavj+GezBztKMmJJwhVYQy9nxS388ApX\nxcZsEgIzOCeH0SOWg4FA\n-----END CERTIFICATE-----\n\nSecureTrust Organization Validation CA, Level 1\nSecureTrust Corporation\n06F1EC00E58E9ADD372C871D25843FDAB852D9\n-----BEGIN CERTIFICATE-----\nMIIEkDCCA3igAwIBAgITBvHsAOWOmt03LIcdJYQ/2rhS2TANBgkqhkiG9w0BAQsF\nADBIMQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRp\nb24xFzAVBgNVBAMTDlNlY3VyZVRydXN0IENBMB4XDTE5MDEyOTEyNTk1OVoXDTI5\nMDEyOTEyNTk1OVowgYIxODA2BgNVBAMTL1NlY3VyZVRydXN0IE9yZ2FuaXphdGlv\nbiBWYWxpZGF0aW9uIENBLCBMZXZlbCAxMRQwEgYDVQQKEwtTZWN1cmVUcnVzdDEQ\nMA4GA1UEBxMHQ2hpY2FnbzERMA8GA1UECBMISWxsaW5vaXMxCzAJBgNVBAYTAlVT\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4QVBCdYToXFIfzd1SQfi\nTEgg1bwHXM2cE2VsyxwWK8NEFH8zMYdKy2hYOAjbfpm0xE6q4TQzS8KL2vAtCNyY\nVrwX7d3IvKR25H5s1LUDeQXSl1JBBZCtgJf2caJcwaYa6n2pZ0EKt3wBB+QteSFn\n57ENB37T13y7Nn8gCt9ZZaPYqRWxHcPaIWO3CVzQZ3tXjCLqzJMCV2KqhK85DZk3\nwo33Zb6cyYDkerDbWyric+10dJ/wdgE49dkfyZxVxEGpHg1SCSJdHjGb4z85Zx/u\neBpxBS6g3dfrkDjjT3MUxyNS4EaRTZp7o/2EqVCYDWJDM1HcOZL64kyWyi0d9jqA\n7wIDAQABo4IBNjCCATIwEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMC\nAYYwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMBMB0GA1UdDgQWBBR/QuNI\nbljpLrlhyGp3tPcDuM1qWjAfBgNVHSMEGDAWgBRCMrYW+gT9/l1LesP990xAHVpD\nrzBBBgNVHSAEOjA4MDYGBFUdIAAwLjAsBggrBgEFBQcCARYgaHR0cHM6Ly9jZXJ0\ncy5zZWN1cmV0cnVzdC5jb20vQ0EwMgYDVR0fBCswKTAnoCWgI4YhaHR0cDovL2Ny\nbC50cnVzdHdhdmUuY29tL1NUQ0EuY3JsMDYGCCsGAQUFBwEBBCowKDAmBggrBgEF\nBQcwAYYaaHR0cDovL29jc3AudHJ1c3R3YXZlLmNvbS8wDQYJKoZIhvcNAQELBQAD\nggEBAIwGM/ejz4Hbjf7Vc11gS8jzf+BwtZq9N4t1Nibj4rIDsW2G2jDE0S7fCN2m\nMhq76xkfnwfXhBbXDEKz6rj/M0G2u1kHw4Y8ZtKSzYEyRtgpeBFm4qU6voCSREpD\nFJXsL+Go2/YLRSE6xkWVSocklxppx4hi5o/RVdMMQept6ooOSFzBpH5XZYUoblKi\n99Yj0FUe8egIa9qSts42TObTpH1YVRMDnH3k2MNX3rcgPf9v/QO9Cf8W6RQ2+X3R\nCaYMPdL5OIKh4RGYjxXe3LpgiTKBWik/ZWTFL5sZSjetrJFl50NONzTc8E+BJtrx\nVCHAI2OcWyloxrYd4zMipw0YjDw=\n-----END CERTIFICATE-----\n\nTrustwave Domain Validation SHA256 CA, Level 1\nSecureTrust Corporation\n00DDEDF6F64298490E694C36EFA422C88F\n-----BEGIN CERTIFICATE-----\nMIIE7jCCA9agAwIBAgIRAN3t9vZCmEkOaUw276QiyI8wDQYJKoZIhvcNAQELBQAw\nSDELMAkGA1UEBhMCVVMxIDAeBgNVBAoTF1NlY3VyZVRydXN0IENvcnBvcmF0aW9u\nMRcwFQYDVQQDEw5TZWN1cmVUcnVzdCBDQTAeFw0xNDEwMDExOTIyMzJaFw0yNDA5\nMjgxOTIyMzJaMIGvMQswCQYDVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAO\nBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5j\nLjE3MDUGA1UEAxMuVHJ1c3R3YXZlIERvbWFpbiBWYWxpZGF0aW9uIFNIQTI1NiBD\nQSwgTGV2ZWwgMTEfMB0GCSqGSIb3DQEJARYQY2FAdHJ1c3R3YXZlLmNvbTCCASIw\nDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALNr4Z91k7AKM+Pz5XXWTIuVeMts\nPU2W/pI4WdEHG9Zab1EOWPLbthB6fzUJLLLBBk1wy2OM9yG1HywB/CwfGHcoKS8Z\n/efGV+ZKTzEpIestriUWx7wUnzxKzGML48Xv7sNuY1Crru5Hgce1Ax5uOfP7OB6t\norbMunvKQC10WcSrqFg6LapZ0UhgGmQzdjYguOBF6WZJR3QLghQaNrSUZuA6neXR\ncUsBgmzrxiEVHyzt+lmnYFMFvKVwGOyIZ2RU2LAFthS6UDDrSLGsJysxc1MK1Sti\n/VP8e8wj9rJdmiWNfA+lz6hDAPzRbv+WVJNoHEGbIx8rai+rVMiLy2HIbPsCAwEA\nAaOCAWkwggFlMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFPQc4jqvtqTk\n2emd/u8cd6VjPe+IMA4GA1UdDwEB/wQEAwIBhjBIBgNVHSAEQTA/MD0GDysGAQQB\nge0YAwMDAwQFAzAqMCgGCCsGAQUFBwIBFhxodHRwczovL3NzbC50cnVzdHdhdmUu\nY29tL0NBMDIGA1UdHwQrMCkwJ6AloCOGIWh0dHA6Ly9jcmwudHJ1c3R3YXZlLmNv\nbS9TVENBLmNybDBsBggrBgEFBQcBAQRgMF4wJQYIKwYBBQUHMAGGGWh0dHA6Ly9v\nY3NwLnRydXN0d2F2ZS5jb20wNQYIKwYBBQUHMAKGKWh0dHA6Ly9zc2wudHJ1c3R3\nYXZlLmNvbS9pc3N1ZXJzL1NUQ0EuY3J0MBMGA1UdJQQMMAoGCCsGAQUFBwMBMB8G\nA1UdIwQYMBaAFEIythb6BP3+XUt6w/33TEAdWkOvMA0GCSqGSIb3DQEBCwUAA4IB\nAQAjoDrTysopn7t+onDZ6rZSQW8rYlWZQpSiNHrq9xAAcMExrhcN0bQC9OQ+VRci\noMDascvwum7hVkyh2w2Ad7lC3Ir9gIuA8HycjqQJ4t1eSF3geYyf8lp259ztZ/TO\nxSAwJ9W0Szc8fslOA0SWlyA3lnRVcYVu54Idc1dPXXBxwlQ1NUCYgcsXZs+6QjLL\nYhYL85DhuitQSddoYemGpfVJnaYH9tBiWmwtzwc4qsVqTsKEJ/1zYAy2GrEAv8sB\nFKSfMNMopBmmDA8/aCIW/tH6KTD2DC15QQwL6yAUbSa5mhzFSA9O8zmF881YwBVG\nn+z3isMPClgpNw/eWSbaSLZ+\n-----END CERTIFICATE-----\n\nTrustwave Domain Validation SHA256 CA, Level 1\nSecureTrust Corporation\n390A3F7EECA8FB4347DCAF701861662B\n-----BEGIN CERTIFICATE-----\nMIIE/zCCA+egAwIBAgIQOQo/fuyo+0NH3K9wGGFmKzANBgkqhkiG9w0BAQsFADBI\nMQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24x\nFzAVBgNVBAMTDlNlY3VyZVRydXN0IENBMB4XDTE2MDkwMTE0MzUzMloXDTI0MDky\nOTE0MzUzMlowga8xCzAJBgNVBAYTAlVTMREwDwYDVQQIEwhJbGxpbm9pczEQMA4G\nA1UEBxMHQ2hpY2FnbzEhMB8GA1UEChMYVHJ1c3R3YXZlIEhvbGRpbmdzLCBJbmMu\nMTcwNQYDVQQDEy5UcnVzdHdhdmUgRG9tYWluIFZhbGlkYXRpb24gU0hBMjU2IENB\nLCBMZXZlbCAxMR8wHQYJKoZIhvcNAQkBFhBjYUB0cnVzdHdhdmUuY29tMIIBIjAN\nBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs2vhn3WTsAoz4/PlddZMi5V4y2w9\nTZb+kjhZ0Qcb1lpvUQ5Y8tu2EHp/NQksssEGTXDLY4z3IbUfLAH8LB8YdygpLxn9\n58ZX5kpPMSkh6y2uJRbHvBSfPErMYwvjxe/uw25jUKuu7keBx7UDHm458/s4Hq2i\ntsy6e8pALXRZxKuoWDotqlnRSGAaZDN2NiC44EXpZklHdAuCFBo2tJRm4Dqd5dFx\nSwGCbOvGIRUfLO36WadgUwW8pXAY7IhnZFTYsAW2FLpQMOtIsawnKzFzUwrVK2L9\nU/x7zCP2sl2aJY18D6XPqEMA/NFu/5ZUk2gcQZsjHytqL6tUyIvLYchs+wIDAQAB\no4IBezCCAXcwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQU9BziOq+2pOTZ\n6Z3+7xx3pWM974gwDgYDVR0PAQH/BAQDAgGGMDIGA1UdHwQrMCkwJ6AloCOGIWh0\ndHA6Ly9jcmwudHJ1c3R3YXZlLmNvbS9TVENBLmNybDA9BgNVHSAENjA0MDIGBFUd\nIAAwKjAoBggrBgEFBQcCARYcaHR0cHM6Ly9zc2wudHJ1c3R3YXZlLmNvbS9DQTBs\nBggrBgEFBQcBAQRgMF4wJQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLnRydXN0d2F2\nZS5jb20wNQYIKwYBBQUHMAKGKWh0dHA6Ly9zc2wudHJ1c3R3YXZlLmNvbS9pc3N1\nZXJzL1NUQ0EuY3J0MBMGA1UdJQQMMAoGCCsGAQUFBwMBMB8GA1UdIwQYMBaAFEIy\nthb6BP3+XUt6w/33TEAdWkOvMBsGA1UdEQQUMBKBEGNhQHRydXN0d2F2ZS5jb20w\nDQYJKoZIhvcNAQELBQADggEBAFcdG0/3P/CkeGb76tz/mn1viDZiftD05i9Jw70k\nH9ulRwdCHgzhSZVN5zHvG919oHA9WHbxH04J+iAnVl1+FjoDNN+A+2icy2WXqH9w\ngaNUGyUwLdo0JCfgUeGbrCF6WUYCj47pS7zAY02CdGlstZZsqouXK3RnOMKOD3Dq\nf5kiSh56KvhW/F0OZY7PAbdV79LVAiSTiAFdoe/jMjmj8fqXOiCIjllqH/O9/DAm\nRwQStFpauwR+nBbFhq4sYwlZQvJ0NvIxN5JOTECTkMM+X21kf8mrwRdxBfw0YEPa\nUTeZhFr48Fwvnt4jpo7gqpJzt7jjsbWPd1FHtey2Q8zmSHY=\n-----END CERTIFICATE-----\n\nTrustwave Extended Validation SHA256 CA, Level 1\nSecureTrust Corporation\n00C1BD27B383958D0D8BCA5E4F08D009D9\n-----BEGIN CERTIFICATE-----\nMIIFGDCCBACgAwIBAgIRAMG9J7ODlY0Ni8peTwjQCdkwDQYJKoZIhvcNAQELBQAw\nSDELMAkGA1UEBhMCVVMxIDAeBgNVBAoTF1NlY3VyZVRydXN0IENvcnBvcmF0aW9u\nMRcwFQYDVQQDEw5TZWN1cmVUcnVzdCBDQTAeFw0xNDEwMTMxODE3MzlaFw0yNDEw\nMTAxODE3MzlaMIGxMQswCQYDVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAO\nBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5j\nLjE5MDcGA1UEAxMwVHJ1c3R3YXZlIEV4dGVuZGVkIFZhbGlkYXRpb24gU0hBMjU2\nIENBLCBMZXZlbCAxMR8wHQYJKoZIhvcNAQkBFhBjYUB0cnVzdHdhdmUuY29tMIIB\nIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAre9mHLqiv689FWIk7PaeQLuW\nos8ldRX4rNLHeD7/X7JrTfaXuIQaLfrUODtyRaZs0LtJsEHgpr7dUonDIH69PjBP\nrHg+hBLu7ob4udEx3J03NQSdnR/fqPY0ZMH2NP7e9TFSKKctZ/SmzA8jGclVmdiT\nGg1bTx6xgWuPWq9OprIQSgkP5NRe1GeTQ7U/E1zxLqaw6PeQWjESHPGeilyw0jr6\nqVyHM5ack9ps60sN3CKNGushyaQe3w2bYxRJ9RRH/sILCAmmTbjc/cXrGQMGdaYt\naiGnXbc45r39cqfbynZ71hPPNEtFbOdqk3C7I8vrhIHiKaAtFkTMRSWmHHk4HwID\nAQABo4IBkTCCAY0wEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQU5eQkWRUy\nJ8kgs0ICbLDvMt6bIFowDgYDVR0PAQH/BAQDAgGGMGYGA1UdIARfMF0wDAYKKwYB\nBAGB7RgDADAOBgxghkgBhv1kAQECBAEwPQYPKwYBBAGB7RgDAwMDBAMDMCowKAYI\nKwYBBQUHAgEWHGh0dHBzOi8vc3NsLnRydXN0d2F2ZS5jb20vQ0EwMgYDVR0fBCsw\nKTAnoCWgI4YhaHR0cDovL2NybC50cnVzdHdhdmUuY29tL1NUQ0EuY3JsMGwGCCsG\nAQUFBwEBBGAwXjAlBggrBgEFBQcwAYYZaHR0cDovL29jc3AudHJ1c3R3YXZlLmNv\nbTA1BggrBgEFBQcwAoYpaHR0cDovL3NzbC50cnVzdHdhdmUuY29tL2lzc3VlcnMv\nU1RDQS5jcnQwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMBMB8GA1UdIwQY\nMBaAFEIythb6BP3+XUt6w/33TEAdWkOvMA0GCSqGSIb3DQEBCwUAA4IBAQCly1p1\nrvcOlRS+ODBLb2kYHd4q+cXDl65X+IQ7hOlXg9dpa7CzSAGNNpzhyYMbE48mB/RE\nBXxbZkMzEhWPFj+4jdGNsmX0zjEWatJWsnNVxpA7hDR0iZssezu86oDQ/sbVoaXj\n0a5jB2cZsnMS5287CNDk5i+ImruhbMAYV9sadliXoDy3y01Sv+FLMx39C5UhYhWU\ngvoT9igbSCoc/DPOukEDqsnKMmDqTf3JzuFI1CbJcR6M8R1hAda4mZrxIdGcbT8R\nXp8JQ8Vuv/+plPMcAiZ2Bzed0hPVr5A1Mz8K8w9OyORGlRwjWS65jsr26bjMCcfj\npvuAANrc0Alu4nJC\n-----END CERTIFICATE-----\n\nTrustwave Extended Validation SHA256 CA, Level 1\nSecureTrust Corporation\n35962F305C5A0BEC400D4E9877528C65\n-----BEGIN CERTIFICATE-----\nMIIFCzCCA/OgAwIBAgIQNZYvMFxaC+xADU6Yd1KMZTANBgkqhkiG9w0BAQsFADBI\nMQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24x\nFzAVBgNVBAMTDlNlY3VyZVRydXN0IENBMB4XDTE2MDkwMTE0MzUzNFoXDTI0MDky\nOTE0MzUzNFowgbExCzAJBgNVBAYTAlVTMREwDwYDVQQIEwhJbGxpbm9pczEQMA4G\nA1UEBxMHQ2hpY2FnbzEhMB8GA1UEChMYVHJ1c3R3YXZlIEhvbGRpbmdzLCBJbmMu\nMTkwNwYDVQQDEzBUcnVzdHdhdmUgRXh0ZW5kZWQgVmFsaWRhdGlvbiBTSEEyNTYg\nQ0EsIExldmVsIDExHzAdBgkqhkiG9w0BCQEWEGNhQHRydXN0d2F2ZS5jb20wggEi\nMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCt72YcuqK/rz0VYiTs9p5Au5ai\nzyV1Ffis0sd4Pv9fsmtN9pe4hBot+tQ4O3JFpmzQu0mwQeCmvt1SicMgfr0+ME+s\neD6EEu7uhvi50THcnTc1BJ2dH9+o9jRkwfY0/t71MVIopy1n9KbMDyMZyVWZ2JMa\nDVtPHrGBa49ar06mshBKCQ/k1F7UZ5NDtT8TXPEuprDo95BaMRIc8Z6KXLDSOvqp\nXIczlpyT2mzrSw3cIo0a6yHJpB7fDZtjFEn1FEf+wgsICaZNuNz9xesZAwZ1pi1q\nIaddtzjmvf1yp9vKdnvWE880S0Vs52qTcLsjy+uEgeIpoC0WRMxFJaYceTgfAgMB\nAAGjggGFMIIBgTASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBTl5CRZFTIn\nySCzQgJssO8y3psgWjAOBgNVHQ8BAf8EBAMCAYYwMgYDVR0fBCswKTAnoCWgI4Yh\naHR0cDovL2NybC50cnVzdHdhdmUuY29tL1NUQ0EuY3JsMD0GA1UdIAQ2MDQwMgYE\nVR0gADAqMCgGCCsGAQUFBwIBFhxodHRwczovL3NzbC50cnVzdHdhdmUuY29tL0NB\nMGwGCCsGAQUFBwEBBGAwXjAlBggrBgEFBQcwAYYZaHR0cDovL29jc3AudHJ1c3R3\nYXZlLmNvbTA1BggrBgEFBQcwAoYpaHR0cDovL3NzbC50cnVzdHdhdmUuY29tL2lz\nc3VlcnMvU1RDQS5jcnQwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMBMB8G\nA1UdIwQYMBaAFEIythb6BP3+XUt6w/33TEAdWkOvMBsGA1UdEQQUMBKBEGNhQHRy\ndXN0d2F2ZS5jb20wDQYJKoZIhvcNAQELBQADggEBAGUMIDkrvlMJ0wHLuP3lkneC\nwGU6mZ3g17jyU2RJwhRinYctraryG7Jh20DQ9/ppTHoxTIADw2JDsC5ByplabteQ\nnLghrl17K1b6PO+rzWA/NFKVwo6u8Gh7Lz0iUuit7ZBD4eKcRedxRZcPQlnD9KTR\nIs94SRpootsuCv/Y5b+1FMPV1KrYtbco9yEVlaNEWLpmiEsqvLjxiWEmt71rzz+0\nS59OtA/ihnbGP9Xrnhe7wf1ybCNOO5gZQMKr/OszfLZ7oVKACGOPLlcSZRRW98gA\nszE+1ZvlHkdjamfTSs4yMvUorYn9NhXnjAWl28NuD9m3FPiE2O50ezEDnHTiaOQ=\n-----END CERTIFICATE-----\n\nTrustwave Organization Validation SHA256 CA, Level 1\nSecureTrust Corporation\n4B2C6646F434775B67DF34A04DD504E6\n-----BEGIN CERTIFICATE-----\nMIIE/TCCA+WgAwIBAgIQSyxmRvQ0d1tn3zSgTdUE5jANBgkqhkiG9w0BAQsFADBI\nMQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24x\nFzAVBgNVBAMTDlNlY3VyZVRydXN0IENBMB4XDTE0MTAwMTE5MjIzNloXDTI0MDky\nODE5MjIzNlowgbUxCzAJBgNVBAYTAlVTMREwDwYDVQQIEwhJbGxpbm9pczEQMA4G\nA1UEBxMHQ2hpY2FnbzEhMB8GA1UEChMYVHJ1c3R3YXZlIEhvbGRpbmdzLCBJbmMu\nMT0wOwYDVQQDEzRUcnVzdHdhdmUgT3JnYW5pemF0aW9uIFZhbGlkYXRpb24gU0hB\nMjU2IENBLCBMZXZlbCAxMR8wHQYJKoZIhvcNAQkBFhBjYUB0cnVzdHdhdmUuY29t\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA49OohlJHBJ/juiQTmibO\nS28pHvCCp1bPOc6elQ62DCYE/A14JXUtI8yaUc9nFjh6dNzR7KjFPEq/qDplQl7f\n1Tvh5ifBNNP2wQ6e820TWlPO4HhR/5g4+3iFmJ1N7kFrxDp1/P8e3+9lcJsXckXC\ntfFkQ9slogJqnaCsipgdrH4gQhicFAL5YqHw2AKfctZLSPpxhI3xISMV/lIQwZPW\nI2221v9ALckokh5pW6dTK8x8yNUUye1zt5msWzqunfBjVYVUj5/LXu46hS99Mfxu\n80ARJRyHsXIuHbMzwVXGqKVPZfKAdHBl5e3ElCjNwNy+Hgi09vS7PoAUhjCf/wbO\nnQIDAQABo4IBczCCAW8wEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUys4d\nGAN3HhzzfFiymnCoCIAW9K4wDgYDVR0PAQH/BAQDAgGGMEgGA1UdIARBMD8wPQYP\nKwYBBAGB7RgDAwMDBAQDMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8vc3NsLnRydXN0\nd2F2ZS5jb20vQ0EwMgYDVR0fBCswKTAnoCWgI4YhaHR0cDovL2NybC50cnVzdHdh\ndmUuY29tL1NUQ0EuY3JsMGwGCCsGAQUFBwEBBGAwXjAlBggrBgEFBQcwAYYZaHR0\ncDovL29jc3AudHJ1c3R3YXZlLmNvbTA1BggrBgEFBQcwAoYpaHR0cDovL3NzbC50\ncnVzdHdhdmUuY29tL2lzc3VlcnMvU1RDQS5jcnQwHQYDVR0lBBYwFAYIKwYBBQUH\nAwIGCCsGAQUFBwMBMB8GA1UdIwQYMBaAFEIythb6BP3+XUt6w/33TEAdWkOvMA0G\nCSqGSIb3DQEBCwUAA4IBAQBN/Qb6x5VSQHIt/FqvXAkjfCI7jwXGzRoxThavUqv0\npJr1azXKv2L2ye9Sl4OCqiDHZ8ZJZ/Z19Ae1yvGTpG++0O5dWTHZ8qy/JSj17Mg1\nvWiefVpJKtkYflzhC9B9/eB3QuKVTRKDqm1ZC9kbm3MWOwtnEOw4WURWS1X2v4Hv\n2AJaXe11ZRqjx7/c6U50tYp3eVpRDCw7bOIXRffLG0oibhjHiEu8dgq7KkTSrx9m\nQFS6T2x9GLiJKhj2mEfPuGr73TfBPyKsRBymOpG67LThKVnwoUfH3pghA6VkZp5Z\n1Vm6AcDm+eelf5XPvZtNve4evLVPYueA3TmGyxXh1m2d\n-----END CERTIFICATE-----\n\nTrustwave Organization Validation SHA256 CA, Level 1\nSecureTrust Corporation\n0092B8744F71CED0E26C72A3D8D5D925B2\n-----BEGIN CERTIFICATE-----\nMIIFEDCCA/igAwIBAgIRAJK4dE9xztDibHKj2NXZJbIwDQYJKoZIhvcNAQELBQAw\nSDELMAkGA1UEBhMCVVMxIDAeBgNVBAoTF1NlY3VyZVRydXN0IENvcnBvcmF0aW9u\nMRcwFQYDVQQDEw5TZWN1cmVUcnVzdCBDQTAeFw0xNjA5MDExNDM1MzVaFw0yNDA5\nMjkxNDM1MzVaMIG1MQswCQYDVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAO\nBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5j\nLjE9MDsGA1UEAxM0VHJ1c3R3YXZlIE9yZ2FuaXphdGlvbiBWYWxpZGF0aW9uIFNI\nQTI1NiBDQSwgTGV2ZWwgMTEfMB0GCSqGSIb3DQEJARYQY2FAdHJ1c3R3YXZlLmNv\nbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOPTqIZSRwSf47okE5om\nzktvKR7wgqdWzznOnpUOtgwmBPwNeCV1LSPMmlHPZxY4enTc0eyoxTxKv6g6ZUJe\n39U74eYnwTTT9sEOnvNtE1pTzuB4Uf+YOPt4hZidTe5Ba8Q6dfz/Ht/vZXCbF3JF\nwrXxZEPbJaICap2grIqYHax+IEIYnBQC+WKh8NgCn3LWS0j6cYSN8SEjFf5SEMGT\n1iNtttb/QC3JKJIeaVunUyvMfMjVFMntc7eZrFs6rp3wY1WFVI+fy17uOoUvfTH8\nbvNAESUch7FyLh2zM8FVxqilT2XygHRwZeXtxJQozcDcvh4ItPb0uz6AFIYwn/8G\nzp0CAwEAAaOCAYUwggGBMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFMrO\nHRgDdx4c83xYsppwqAiAFvSuMA4GA1UdDwEB/wQEAwIBhjAyBgNVHR8EKzApMCeg\nJaAjhiFodHRwOi8vY3JsLnRydXN0d2F2ZS5jb20vU1RDQS5jcmwwPQYDVR0gBDYw\nNDAyBgRVHSAAMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8vc3NsLnRydXN0d2F2ZS5j\nb20vQ0EwbAYIKwYBBQUHAQEEYDBeMCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC50\ncnVzdHdhdmUuY29tMDUGCCsGAQUFBzAChilodHRwOi8vc3NsLnRydXN0d2F2ZS5j\nb20vaXNzdWVycy9TVENBLmNydDAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUH\nAwEwHwYDVR0jBBgwFoAUQjK2FvoE/f5dS3rD/fdMQB1aQ68wGwYDVR0RBBQwEoEQ\nY2FAdHJ1c3R3YXZlLmNvbTANBgkqhkiG9w0BAQsFAAOCAQEAC0OvN7/UJBcRDXch\nA4b2qJo7mBD05+XR96N7vucMaanz26CnUxs1o8DcBckpqyEXCxdOanIr+/UJNbBL\nXLJCzNLJEJcgV9TjbVu33eQR23yMuXD+cZsqLMF+L5IIM47W8dlwKJvMy0xs7Jb1\nS3NOIhcoVu+XPzRsgKv8Yi2B6l278RfzegiCx4vYJv0pBjFzizEiFH9bWTYIOlIJ\nJSM57hoICgjCTS8BoEgndwWIyc/nEmlYaUwmCo9QynY+UmW1WPWmVITEJPMdMK6A\nZqvvaWmuHJ6/vURaz+Hoc5D3z0yJDDCkv52bXV04ZoF6cbcWry7JvNA+djvay/4B\nRR4SZQ==\n-----END CERTIFICATE-----\n\nSecureTrust TWG Secure Email CA, Level 2\nTrustwave Holdings, Inc.\n072F30E9C25181828DAC4F5F7DE4AFC87AD132\n-----BEGIN CERTIFICATE-----\nMIIG2zCCBMOgAwIBAgITBy8w6cJRgYKNrE9ffeSvyHrRMjANBgkqhkiG9w0BAQsF\nADCBiDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCElsbGlub2lzMRAwDgYDVQQHDAdD\naGljYWdvMSEwHwYDVQQKDBhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xMTAvBgNV\nBAMMKFRydXN0d2F2ZSBHbG9iYWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcN\nMjAxMDA4MDY0OTQwWhcNMzAxMDA4MDY0ODQwWjBWMQswCQYDVQQGEwJVUzEUMBIG\nA1UEChMLU2VjdXJlVHJ1c3QxMTAvBgNVBAMTKFNlY3VyZVRydXN0IFRXRyBTZWN1\ncmUgRW1haWwgQ0EsIExldmVsIDIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIK\nAoICAQCcD5Wc7H480gOv3ae6SELBls0oNOvpw1ZFjK55nLw+W6PhgqTGNEHlO/Ga\nWt13yS1iO1/WzRaUc2XsFRGcjv3QIfDZb+6UzhL1LL9ZE8zcs0B6fepn4smQg1yK\ngtAWGoD70Z9kEBtypkG23sO5xIiRACJWgRWVZ/891pQBBz+ElCxUnIyDGghHlWCD\nzn5dLoBIVic69Pfpi384uNoNfHV/WATUQEEnwY+5yMMUALAWrRD6Jeh5R4m9qKxG\nUlrO9ObDebK9mFEJvrCPtkTIWT1He4ZD58Lt0NIkaItQ7KsKF9wgwH7BTsRGwQXb\nP6/0LvfO8UDRKNE/4C39u9dwUw/Zpu2iNXTadVWBtaSDsrPFVb5rBu+pvn4l4Hw5\njtySyHAOWn4mhuxDXMuKBtaoTi/qF94d7N0CbqPdN9WSN79Cy2O0BexTGHSJVndX\nEbKyn96b5STPshKVpG9DmUekfnDtnHR9dmH74a05X/A8k/XeSJWXphM6NvyZap2A\nWiIkrS7MsfwnCdZlX+9WGY2qHxnm4Y6JdNah0qxozBbQHkqHsSN4k8O7zr2lfZhC\nuarm0Q1t6tjsmp7PUh26u6PCe0m+MctIrD6ZckUzZeuPduRb55K2p8MxjQSVNH1S\nJ2aaHp77qOYV+rvHXIL7le4OR5lDWyzYtXLc8u17/kLbUtgnmQIDAQABo4IBbTCC\nAWkwEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMCAYYwEwYDVR0lBAww\nCgYIKwYBBQUHAwQwHQYDVR0OBBYEFKpD9MNsQCriSoEcg6nez7XhG7bOMB8GA1Ud\nIwQYMBaAFJngGWcNYtt2s9o9uFvo/ULSMQ6HMEEGA1UdIAQ6MDgwNgYEVR0gADAu\nMCwGCCsGAQUFBwIBFiBodHRwczovL2NlcnRzLnNlY3VyZXRydXN0LmNvbS9DQTA1\nBgNVHR8ELjAsMCqgKKAmhiRodHRwOi8vY3JsLnNlY3VyZXRydXN0LmNvbS9UV0dD\nQS5jcmwwdAYIKwYBBQUHAQEEaDBmMCgGCCsGAQUFBzABhhxodHRwOi8vb2NzcC5z\nZWN1cmV0cnVzdC5jb20vMDoGCCsGAQUFBzAChi5odHRwOi8vY2VydHMuc2VjdXJl\ndHJ1c3QuY29tL2lzc3VlcnMvVFdHQ0EuY3J0MA0GCSqGSIb3DQEBCwUAA4ICAQBb\ntCXryLFewOafyNENB3NzgAQVVztwaWSyvF5FYSqav95JKcoHZzy3wG7aKlTPtGnq\n1QzJst03qPmZJ3j63obz2AvfEEzLEMlsPmOTy3B9oIrNzd2QhpGW1oF6pIgGB/VP\n5zh7U2ibUC+zRLmihwt+j2+7NBbuLbPozgxDTWh2f9O4rJb5bv98Q8RdbGrypBb9\nhOhDvmNCCfjSe+Q8myqsvawEG5p7s8gsIK/V3xbyqDihXjsGc7xeEWNftlU91jBL\nKPRbrLmXhhWnHJjYs4y5IHu735HA3aAT4TqURS9dGHOMVDRumkFpLqR2W7ptpDki\nOtIFZjO5smU29OD4AlcNUXqQuKEFasyTtkRlORnWhU37c36HB8dc57xWQKOf8pMq\n7lK+ublO9G4mO1Aqr9mioTN4oMONFJG4W5dWwG9baNg682ZACkvPaw45MqSztL3A\nKb4s2cDTWu/D34hV3oafkTwu8B7B2mFZnWRJ9q4akPmZF45uw4RZx2ALaYGGGs67\n+r5qS300As9ONg8hxfVkFQSHOc00IiBkgi3OpoCofEKTgDwZwHVqOJyyPjk6H9Sh\nZANmUOT2mGDLwl86Ar5bTu8ipzlsyDYQMFjho7WaVs8I5OXyVdONXDYLIOtpITGT\n1fRcXFzxYHhrNuFwrdj2zBVyvVD4O6xV97/9nv2Eng==\n-----END CERTIFICATE-----\n\nTrustwave Global Domain Validation CA, Level 1\nTrustwave Holdings, Inc.\n06CE82D9AD30465CF22697F246B101EC92953B\n-----BEGIN CERTIFICATE-----\nMIIHCDCCBPCgAwIBAgITBs6C2a0wRlzyJpfyRrEB7JKVOzANBgkqhkiG9w0BAQsF\nADCBiDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCElsbGlub2lzMRAwDgYDVQQHDAdD\naGljYWdvMSEwHwYDVQQKDBhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xMTAvBgNV\nBAMMKFRydXN0d2F2ZSBHbG9iYWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcN\nMTgwMjA2MTIyMTIxWhcNMjgwMjI0MDUwMTIxWjCBjjE3MDUGA1UEAxMuVHJ1c3R3\nYXZlIEdsb2JhbCBEb21haW4gVmFsaWRhdGlvbiBDQSwgTGV2ZWwgMTEhMB8GA1UE\nChMYVHJ1c3R3YXZlIEhvbGRpbmdzLCBJbmMuMRAwDgYDVQQHEwdDaGljYWdvMREw\nDwYDVQQIEwhJbGxpbm9pczELMAkGA1UEBhMCVVMwggIiMA0GCSqGSIb3DQEBAQUA\nA4ICDwAwggIKAoICAQChh5brvvk/kFUZwhlUhqdsUmsMCBjzYqBBLnTyNrKPr4nd\nS9s2h2JvA+9TY7NnJc/Mq1eN5V6zqvbn/LN3c8W06f76xrVvFEKs5SzCefUS/V3Z\nC18dgwXXFrP+RgfK2kqfTHGIPrWoRSnUiLn3iUNEBtJ06oXjAqAMnAyL5AzD+eHm\nZzRK/yCw/gMPnVp2S7Dstka607fS4fW9Sl33mOMNwJRxEjQWHHR25PAb4muP6wjN\nvmoLMgiDMKseHSFVtC7SpmO89PsrUV6MahKJrZcAfquAyoO1zR2c2eGaCI/m8oSx\n3B7KiMZJ3NZims/siMp/5szemsutf36WJ31nmr7PqLJGJdVpoxbLckWIhZnNYSFm\n/pTutpNONqpyYC2gGSXdw5LuxU61913SbAPpk8DZiHi3WslHBo26ghXG++sgJUGj\nhtKZhiYlp8uD21WTP6/60wngpXyCtt9cpHxW1lXmqcxwe2J4/2S3xjHz1dC6BKxb\nr61HCPVrbTD90CZUpMI8JPdsVbz5eegv+SIyybHxZe4S0D9Kv5pgWfqdXf0BAiJC\nTbGwYmFr4uisKhkfMThyOgWEH+CRBzQqdZREQ5lTIlVyzi3jGPuu9Q6brAS9U9Ue\nQhUwX8TtY8Igfo8HlhjugDpy6WvDYQ9i+tG3AC6v8sJLdOOU83Lr+2C1LEF5ZwID\nAQABo4IBYTCCAV0wEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMCAYYw\nEwYDVR0lBAwwCgYIKwYBBQUHAwEwHQYDVR0OBBYEFIaZQQzOP7aMcEnlkwfwhgcd\nLXqVMB8GA1UdIwQYMBaAFJngGWcNYtt2s9o9uFvo/ULSMQ6HMD0GA1UdIAQ2MDQw\nMgYEVR0gADAqMCgGCCsGAQUFBwIBFhxodHRwczovL3NzbC50cnVzdHdhdmUuY29t\nL0NBMDMGA1UdHwQsMCowKKAmoCSGImh0dHA6Ly9jcmwudHJ1c3R3YXZlLmNvbS9U\nV0dDQS5jcmwwbgYIKwYBBQUHAQEEYjBgMCYGCCsGAQUFBzABhhpodHRwOi8vb2Nz\ncC50cnVzdHdhdmUuY29tLzA2BggrBgEFBQcwAoYqaHR0cDovL3NzbC50cnVzdHdh\ndmUuY29tL2lzc3VlcnMvVFdHQ0EuY3J0MA0GCSqGSIb3DQEBCwUAA4ICAQAmn0jp\n+lNp188KxjKQZtpJ3mixLmuqGdH6SVpRs40BYQg/68xOPH3C6AJ17tqE6IwZMW9s\nlgiO4B7khR3ESA6Sct3zmkA8woR/KJVzzegjscHhtQUifQ+Eb9Gi0ORNnetGV+5g\n5vlrFZMptBRGUxXMo2xa+Z/NTyimpMopfXj7qCW/nQWQbzvkQGchK9IokyqV2wra\ntX68/P3zleG+LLwzoJd5AhHYSXWrIRJpClZHN+LQKkbI3MYW7+upo/1e9HEmFKxu\n5SFV3nuQm5wSOsz/ZtIL1AS8IoZYxcSe1Q/yuV9GjnxtL1jkPbzsBx4eBGxUrcIe\nsBat6SI8G58uHTpIPpqUxRYsg8w0FdjK3kNBB5QWDeXiDxzqIRzA0iE1kHeTXRZ3\n7qgGXUcce7ciW5KqeRApjQbD5BSZG2EKkQ7aaOhvxK0LiuxHZnjPW4/fdEcaCuku\nMT5qMDiF2U85V9BvanEy/xkYn4I2UeK4EdSXe7q6j+CIJz9WnoLQDbIS04GqIWe0\nVRQUlx3idUWYSJU/SG8KrEHhlJLmgSjshCwtT6qo4vHwT5WcWDLIbjMqgL1iQ6JS\n4gxXuOGia3d0I4/wec5x23EWwx9V8BtDJ8N7NDeRNmZ8RXOHSYJsVQYIQuFUEXE1\nv3WMSIxuyQMyR5FYSCG9xnKRFzNmiPngDil5IA==\n-----END CERTIFICATE-----\n\nTrustwave Global Extended Validation CA, Level 1\nTrustwave Holdings, Inc.\n06CE82D99FB3B180C281020314A2D1C7640017\n-----BEGIN CERTIFICATE-----\nMIIHFDCCBPygAwIBAgITBs6C2Z+zsYDCgQIDFKLRx2QAFzANBgkqhkiG9w0BAQsF\nADCBiDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCElsbGlub2lzMRAwDgYDVQQHDAdD\naGljYWdvMSEwHwYDVQQKDBhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xMTAvBgNV\nBAMMKFRydXN0d2F2ZSBHbG9iYWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcN\nMTgwMjA2MTIyMTIwWhcNMjgwMjI0MDUwMTIwWjCBkDE5MDcGA1UEAxMwVHJ1c3R3\nYXZlIEdsb2JhbCBFeHRlbmRlZCBWYWxpZGF0aW9uIENBLCBMZXZlbCAxMSEwHwYD\nVQQKExhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xEDAOBgNVBAcTB0NoaWNhZ28x\nETAPBgNVBAgTCElsbGlub2lzMQswCQYDVQQGEwJVUzCCAiIwDQYJKoZIhvcNAQEB\nBQADggIPADCCAgoCggIBAMRO7orfWjfmz6Y6qoAmDp2lqCJcdvbRQ8w18rl1JE3j\nf/1CScZLrnLg4RDm8JiRcvFuvoMXn/XNUWy5ICG57tjG2nO7jvBuXfvbdkGA+foN\n3yJKMTX/PmmGlN4qpzFtsB0kLrP14/0TRGeJB7qDfAFH0ReFk0ftQobLBGBOpEca\n+bv+LhcTe40/uNUSK2yQ9GpIw200mcsD3B9c29Im4tSZFuA2o1vnEeizYW5M4sPX\nHu7p5ZCxjJrXVNqWUPM38rShhMUNL5uaVYWoi7TG5JXbg0Lmt2nq1k5nnig9Yp/W\nlAFooWXjKQzHf/z+XZ57bqPe7SzLW5pzpZdSmY2VRybAwEmzMjCXgHiP2ru3TpAD\n+giakPDoz3ZmbKjwYKZ5PmnOmXx0Z2GloO37MjamjPor/+fZohfyma7VAQE8znJt\nI9MVoRN3G3gW/tuT3jXfzYdFBlfGoO7OYyLN1LK5YBKH2qXrCHD8rG2DauBt7U+w\nfOvwfkp8FcdTnfQ92Xe65U3Xdu0eCgQJbChxZtWhhLnbY6xhmwAWyJ1my+Im72Kx\nGP/XcA8SH2sz6/k0782BjRckDuFpVVpTNYl9wqe/tuOrZhWPapOsRlfsDTuhgGu5\n2inM9sU3CAzmFE85zoRQFZQSof3kFN2rUZF20bmTak99cBNLli6/ja3+KntpZ08d\nAgMBAAGjggFrMIIBZzASBgNVHRMBAf8ECDAGAQH/AgEAMA4GA1UdDwEB/wQEAwIB\nhjAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwHQYDVR0OBBYEFHM4IMZH\nbabGL3tQ4EDe3sedR958MB8GA1UdIwQYMBaAFJngGWcNYtt2s9o9uFvo/ULSMQ6H\nMD0GA1UdIAQ2MDQwMgYEVR0gADAqMCgGCCsGAQUFBwIBFhxodHRwczovL3NzbC50\ncnVzdHdhdmUuY29tL0NBMDMGA1UdHwQsMCowKKAmoCSGImh0dHA6Ly9jcmwudHJ1\nc3R3YXZlLmNvbS9UV0dDQS5jcmwwbgYIKwYBBQUHAQEEYjBgMCYGCCsGAQUFBzAB\nhhpodHRwOi8vb2NzcC50cnVzdHdhdmUuY29tLzA2BggrBgEFBQcwAoYqaHR0cDov\nL3NzbC50cnVzdHdhdmUuY29tL2lzc3VlcnMvVFdHQ0EuY3J0MA0GCSqGSIb3DQEB\nCwUAA4ICAQBwnSHECaf+hfGrm3Cg+aRr57ytoOSzI1DjlTNcM7k4uSt6kJRPHJ4c\nldIujMaETV52RgE6ykaMGkuIwQOIsLI6SXwjU1f5gXFUbDTS3KTWc/jwQeyLmdOe\nhvc+wBSFv8d10Sx/Qiti8mqsTqr0+N94Cx01+SkiWxWWoSZOAPkz8DMQGlD4yndK\nceTMGtQ03cLnD/36Mv6tz/Ds9l/OExrJGGxHD0tmYwYwBZpPHm7BBY2ZzycVxLcg\n+uuggcX1pg5MhJ1rDyod+7X+ilvTgH7ftHCmxvR7viMLwSUuytZ05zb2teRQgU+8\niWnPEHO/ADm5VD1Zb5Rx0579/YEENBJtGUPPJzo+JEpiZIOIlwZ69ETWWNCLZr0V\nvoi+SDl65cr+dgR9JreJ2I4W9FzS45ruxYEC8LGKEmV46sAk1YLbnIBmhehAKy9t\nP8RVz3QXYJ6rLOAuXF7R2eVV0SqfivW9bVzvBZTUTFsbdSMBAAF1BJjdRqYR63DI\ncQASY7CRoUiak1NTgPkzeV8VcNJmUt8c2eKJIifqBAjquH6+6UXs9Ol0aMPn6v0y\nB+TSuxhX2sSrpna9QcOh/QyoR5Hvcd81rZSbMc7yasKoUMXviotV1SfEqs3RU5Ts\nwnU4NHPn5ITRiuh5VMuvB/VnjnPC953u5uqAGtZ8BkC7X9cu5E0rMQ==\n-----END CERTIFICATE-----\n\nTrustwave Global Organization Validation CA, Level 1\nTrustwave Holdings, Inc.\n06CE82D9A69703AEFE5D37D18858C74026B004\n-----BEGIN CERTIFICATE-----\nMIIHGDCCBQCgAwIBAgITBs6C2aaXA67+XTfRiFjHQCawBDANBgkqhkiG9w0BAQsF\nADCBiDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCElsbGlub2lzMRAwDgYDVQQHDAdD\naGljYWdvMSEwHwYDVQQKDBhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xMTAvBgNV\nBAMMKFRydXN0d2F2ZSBHbG9iYWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcN\nMTgwMjA2MTIyMTIwWhcNMjgwMjI0MDUwMTIwWjCBlDE9MDsGA1UEAxM0VHJ1c3R3\nYXZlIEdsb2JhbCBPcmdhbml6YXRpb24gVmFsaWRhdGlvbiBDQSwgTGV2ZWwgMTEh\nMB8GA1UEChMYVHJ1c3R3YXZlIEhvbGRpbmdzLCBJbmMuMRAwDgYDVQQHEwdDaGlj\nYWdvMREwDwYDVQQIEwhJbGxpbm9pczELMAkGA1UEBhMCVVMwggIiMA0GCSqGSIb3\nDQEBAQUAA4ICDwAwggIKAoICAQC8BzZtA3eWejFOGHc2DLgex6P471dLWIIHSlrF\nY4a2BCtzAd/VlpQ3gslWnTgthOmK2/hCc+WSaOLPVZzZf3lGnxbb0+Y87Kx+nS1m\nIfJ/4OR6o8XLMLoCTAI1jsWxggiB4NBMqsW2xXQ5VAvBb66KEQYbshNlRpTbtBFq\nEed4YIvCdjbnCUOy1zubgVHUVyCFHzN4XPjEQCtT5vZM576Lt10Je9COnqG0CtPU\nQNP2tjnSmOOYdWcVRZ0UqXUl2fMBfmSDHd8902foigjpP04AYYbq6AetqEgqdvQP\nxz5pVbZqzy8UrE/s/raJLFyTuIAYVt18M0whSgWzGgUWkq2xRqbfn7b1hd56dwRb\nR7pKc51FyTbeocnKlYLC+Dlzp7iKQ3Pb7WHRwLhaJB7u4CzwqhUxHc0xplMYsq92\nMbZ6WN5L5mI7hxY8gLMOR7vNX9CKz9XcYRS01iCDe5Y/9muW8bzGyNXLX1YaHAy4\n+6ncksb3Y3RUKj3f0+T4nbiRISmGazravJKSssBLP3kPa9h5aX+Vd00eL+Q7sXrh\nFO7xz+oWtOL5rfVszyc87JQvjw1sDHA710nViqzUE1bJZNe61EXdCb/RV+Wsu+rO\ncAMSr5x2j/wW875sh+U3EJmTzdEBUBxHnBD2mDTyonT7wL47TRXTEO1IaS4mVbnv\no0jWvQIDAQABo4IBazCCAWcwEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8E\nBAMCAYYwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMBMB0GA1UdDgQWBBS3\n/VNzOCaKcKuTyoupCOrH07fj/TAfBgNVHSMEGDAWgBSZ4BlnDWLbdrPaPbhb6P1C\n0jEOhzA9BgNVHSAENjA0MDIGBFUdIAAwKjAoBggrBgEFBQcCARYcaHR0cHM6Ly9z\nc2wudHJ1c3R3YXZlLmNvbS9DQTAzBgNVHR8ELDAqMCigJqAkhiJodHRwOi8vY3Js\nLnRydXN0d2F2ZS5jb20vVFdHQ0EuY3JsMG4GCCsGAQUFBwEBBGIwYDAmBggrBgEF\nBQcwAYYaaHR0cDovL29jc3AudHJ1c3R3YXZlLmNvbS8wNgYIKwYBBQUHMAKGKmh0\ndHA6Ly9zc2wudHJ1c3R3YXZlLmNvbS9pc3N1ZXJzL1RXR0NBLmNydDANBgkqhkiG\n9w0BAQsFAAOCAgEAFXwfmELpEGKUguzVTMix79XbUnkfLa7IXcqBOrwOWEF1V8F1\nxGY6jLlUTtoEXRYZwCpqOK/i4m4nmWCYE45O7URR8nqeFffceTi62t4Yvh6LkC9g\nUnj3aChLiO/Zdxilq6vfsXO0mKafrGtZXwjyskS250Pj9DsANs57QqvYN4hqbplJ\nzc95p09OUvEhPiyRyx6FyY28U+3X6+mSNMJWd4Nhr+3HtvmItLIXP2JCLxuYtu/K\n6nKcpFCFFKeF8K3PWpjsAb0hfXL4vc3WfyCYsQnvJeisyAh7yEuge2iDwl1/xXIo\nEOAyyYAxvy5UnzcAa0Z2lwjptve+jZ4gQ+A1ioYUavR3pSfBNzuJW30nZCWFadKc\nNXOPoAPkK8JLxgRBH3JboeBCXG6xgy/pXrTjyhW7/SS+Z+7eKkp9jgdTVQ12yUtc\nCiYWUuM4l240D/z+s03WOEcLTluESwFkJhzs3D9i5crTL72uSkDDmlh8HXoPAyYO\nl3Mn9cGWhd8M8IeQRXmb6O7gvvQZDoSXDVDbjBKcW1lFpi0wBxIBzLaOi4CX4OhI\nJHJ/H3duOMaltuzXLSLkc26jwHzMeq8seQRSXraXJi1t5oBKlmEWFEgq6xlH7mLW\n3TOqS19cuiSWl/CsnlLGaW8MH5YHmk+MJxQE1BcLBs6ciapvHlhLEd9EUpU=\n-----END CERTIFICATE-----\n\nSecureTrust TWG ECDSA P-256 Secure Email CA, Level 2\nTrustwave Holdings, Inc.\n072F30E9C4627001DECFEBF6BF5D3B1066D7E3\n-----BEGIN CERTIFICATE-----\nMIIDbTCCAxKgAwIBAgITBy8w6cRicAHez+v2v107EGbX4zAKBggqhkjOPQQDAjCB\nkTELMAkGA1UEBhMCVVMxETAPBgNVBAgTCElsbGlub2lzMRAwDgYDVQQHEwdDaGlj\nYWdvMSEwHwYDVQQKExhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xOjA4BgNVBAMT\nMVRydXN0d2F2ZSBHbG9iYWwgRUNDIFAyNTYgQ2VydGlmaWNhdGlvbiBBdXRob3Jp\ndHkwHhcNMjAxMDA4MDY0OTQxWhcNMzAxMDA4MDY0ODQxWjBiMQswCQYDVQQGEwJV\nUzEUMBIGA1UEChMLU2VjdXJlVHJ1c3QxPTA7BgNVBAMTNFNlY3VyZVRydXN0IFRX\nRyBFQ0RTQSBQLTI1NiBTZWN1cmUgRW1haWwgQ0EsIExldmVsIDIwWTATBgcqhkjO\nPQIBBggqhkjOPQMBBwNCAAT4KazLm94aiykBGkNQVkBrjmK77RlP627D2n3EwK3s\n49ljRkN6wiTWXHx3jPD5BBE/7mWhGWnphzGu1Deb6yzco4IBdTCCAXEwEgYDVR0T\nAQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMCAYYwEwYDVR0lBAwwCgYIKwYBBQUH\nAwQwHQYDVR0OBBYEFHMQ2nwjQr8tFHfBImxM7ct8lbBYMB8GA1UdIwQYMBaAFKNB\nBqyQbdFK63WlShCZs7Ghi0r3MEEGA1UdIAQ6MDgwNgYEVR0gADAuMCwGCCsGAQUF\nBwIBFiBodHRwczovL2NlcnRzLnNlY3VyZXRydXN0LmNvbS9DQTA5BgNVHR8EMjAw\nMC6gLKAqhihodHRwOi8vY3JsLnNlY3VyZXRydXN0LmNvbS9UV0dQMjU2Q0EuY3Js\nMHgGCCsGAQUFBwEBBGwwajAoBggrBgEFBQcwAYYcaHR0cDovL29jc3Auc2VjdXJl\ndHJ1c3QuY29tLzA+BggrBgEFBQcwAoYyaHR0cDovL2NlcnRzLnNlY3VyZXRydXN0\nLmNvbS9pc3N1ZXJzL1RXR1AyNTZDQS5jcnQwCgYIKoZIzj0EAwIDSQAwRgIhAN8G\nPwKUpMgV3LZjq7fuKS96f15BrwBjmTlKhOwgX83BAiEA9WpWhzRRoKeJGAqqXrMk\nZ8RE9xRtOFBqYdv9H5CeTVk=\n-----END CERTIFICATE-----\n\nTrustwave Global ECDSA P-256 Domain Validation CA, Level 1\nTrustwave Holdings, Inc.\n06CE82D9AF531423847B85FB677932AAF80508\n-----BEGIN CERTIFICATE-----\nMIIDmDCCAz+gAwIBAgITBs6C2a9TFCOEe4X7Z3kyqvgFCDAKBggqhkjOPQQDAjCB\nkTELMAkGA1UEBhMCVVMxETAPBgNVBAgTCElsbGlub2lzMRAwDgYDVQQHEwdDaGlj\nYWdvMSEwHwYDVQQKExhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xOjA4BgNVBAMT\nMVRydXN0d2F2ZSBHbG9iYWwgRUNDIFAyNTYgQ2VydGlmaWNhdGlvbiBBdXRob3Jp\ndHkwHhcNMTgwMjA2MTIyMTIxWhcNMjgwMjI0MDUwMTIxWjCBmjFDMEEGA1UEAxM6\nVHJ1c3R3YXZlIEdsb2JhbCBFQ0RTQSBQLTI1NiBEb21haW4gVmFsaWRhdGlvbiBD\nQSwgTGV2ZWwgMTEhMB8GA1UEChMYVHJ1c3R3YXZlIEhvbGRpbmdzLCBJbmMuMRAw\nDgYDVQQHEwdDaGljYWdvMREwDwYDVQQIEwhJbGxpbm9pczELMAkGA1UEBhMCVVMw\nWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAATWpfTIQFPkZIoXXMDN9utRU+AbLGcg\nBmLA06x2qqdcpCMlYFoJhuRWzYCiqz1mKrAvNlQYkgoHfemk92sf8iaro4IBaTCC\nAWUwEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMCAYYwEwYDVR0lBAww\nCgYIKwYBBQUHAwEwHQYDVR0OBBYEFA/DUGGZflb1xtmcOeiDWJAHuhq0MB8GA1Ud\nIwQYMBaAFKNBBqyQbdFK63WlShCZs7Ghi0r3MD0GA1UdIAQ2MDQwMgYEVR0gADAq\nMCgGCCsGAQUFBwIBFhxodHRwczovL3NzbC50cnVzdHdhdmUuY29tL0NBMDcGA1Ud\nHwQwMC4wLKAqoCiGJmh0dHA6Ly9jcmwudHJ1c3R3YXZlLmNvbS9UV0dQMjU2Q0Eu\nY3JsMHIGCCsGAQUFBwEBBGYwZDAmBggrBgEFBQcwAYYaaHR0cDovL29jc3AudHJ1\nc3R3YXZlLmNvbS8wOgYIKwYBBQUHMAKGLmh0dHA6Ly9zc2wudHJ1c3R3YXZlLmNv\nbS9pc3N1ZXJzL1RXR1AyNTZDQS5jcnQwCgYIKoZIzj0EAwIDRwAwRAIgICvA5ttD\n0oeUcd37iYvoQ7iMIpZINp4e1j5NrlI3UnYCIEZhimm9+1dUWAfx9ZkGmIu0HiHR\nzEZifAHbPM3SJbRu\n-----END CERTIFICATE-----\n\nTrustwave Global ECDSA P-256 Extended Validation CA, Level 1\nTrustwave Holdings, Inc.\n06CE82D9A20A3797CD878EB3DAA41D08680AF7\n-----BEGIN CERTIFICATE-----\nMIIDpjCCA0ugAwIBAgITBs6C2aIKN5fNh46z2qQdCGgK9zAKBggqhkjOPQQDAjCB\nkTELMAkGA1UEBhMCVVMxETAPBgNVBAgTCElsbGlub2lzMRAwDgYDVQQHEwdDaGlj\nYWdvMSEwHwYDVQQKExhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xOjA4BgNVBAMT\nMVRydXN0d2F2ZSBHbG9iYWwgRUNDIFAyNTYgQ2VydGlmaWNhdGlvbiBBdXRob3Jp\ndHkwHhcNMTgwMjA2MTIyMTIwWhcNMjgwMjI0MDUwMTIwWjCBnDFFMEMGA1UEAxM8\nVHJ1c3R3YXZlIEdsb2JhbCBFQ0RTQSBQLTI1NiBFeHRlbmRlZCBWYWxpZGF0aW9u\nIENBLCBMZXZlbCAxMSEwHwYDVQQKExhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4x\nEDAOBgNVBAcTB0NoaWNhZ28xETAPBgNVBAgTCElsbGlub2lzMQswCQYDVQQGEwJV\nUzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABKXHfFxFDVI6uYWZlWciFFKtYzuJ\n+IBhot3PQGikE3sjU8d9dARkZCkInqmDyP/+XiLzgrYPMy7NS8lZcRsE5p2jggFz\nMIIBbzASBgNVHRMBAf8ECDAGAQH/AgEAMA4GA1UdDwEB/wQEAwIBhjAdBgNVHSUE\nFjAUBggrBgEFBQcDAgYIKwYBBQUHAwEwHQYDVR0OBBYEFAwlVqqzYgakv+7gGxtX\nzC8s9g1QMB8GA1UdIwQYMBaAFKNBBqyQbdFK63WlShCZs7Ghi0r3MD0GA1UdIAQ2\nMDQwMgYEVR0gADAqMCgGCCsGAQUFBwIBFhxodHRwczovL3NzbC50cnVzdHdhdmUu\nY29tL0NBMDcGA1UdHwQwMC4wLKAqoCiGJmh0dHA6Ly9jcmwudHJ1c3R3YXZlLmNv\nbS9UV0dQMjU2Q0EuY3JsMHIGCCsGAQUFBwEBBGYwZDAmBggrBgEFBQcwAYYaaHR0\ncDovL29jc3AudHJ1c3R3YXZlLmNvbS8wOgYIKwYBBQUHMAKGLmh0dHA6Ly9zc2wu\ndHJ1c3R3YXZlLmNvbS9pc3N1ZXJzL1RXR1AyNTZDQS5jcnQwCgYIKoZIzj0EAwID\nSQAwRgIhALahroq1NScrFeCvG5uMgMKH/bo190D+Mkh2ZIojrUOfAiEAosFXFE73\n0WLRPjX2uOkLhXuA4cQEb1R1oeGDH4MNVOo=\n-----END CERTIFICATE-----\n\nTrustwave Global ECDSA P-256 Organization Validation CA, Level 1\nTrustwave Holdings, Inc.\n06CE82D9A8B57C104843994DACD79E28633E5F\n-----BEGIN CERTIFICATE-----\nMIIDqDCCA0+gAwIBAgITBs6C2ai1fBBIQ5lNrNeeKGM+XzAKBggqhkjOPQQDAjCB\nkTELMAkGA1UEBhMCVVMxETAPBgNVBAgTCElsbGlub2lzMRAwDgYDVQQHEwdDaGlj\nYWdvMSEwHwYDVQQKExhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xOjA4BgNVBAMT\nMVRydXN0d2F2ZSBHbG9iYWwgRUNDIFAyNTYgQ2VydGlmaWNhdGlvbiBBdXRob3Jp\ndHkwHhcNMTgwMjA2MTIyMTIxWhcNMjgwMjI0MDUwMTIxWjCBoDFJMEcGA1UEAxNA\nVHJ1c3R3YXZlIEdsb2JhbCBFQ0RTQSBQLTI1NiBPcmdhbml6YXRpb24gVmFsaWRh\ndGlvbiBDQSwgTGV2ZWwgMTEhMB8GA1UEChMYVHJ1c3R3YXZlIEhvbGRpbmdzLCBJ\nbmMuMRAwDgYDVQQHEwdDaGljYWdvMREwDwYDVQQIEwhJbGxpbm9pczELMAkGA1UE\nBhMCVVMwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAQmHWo0mogvX1J61xysTqsn\n6qV06wxUH68/QJ2aDIka6beTrDoTZv3mIkyPxFTPy+9idjgSAERlBsDirgO2/NiY\no4IBczCCAW8wEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNVHQ8BAf8EBAMCAYYwHQYD\nVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMBMB0GA1UdDgQWBBSv+Ju8XTSl3tA+\nFCldDY4lrbClhTAfBgNVHSMEGDAWgBSjQQaskG3RSut1pUoQmbOxoYtK9zA9BgNV\nHSAENjA0MDIGBFUdIAAwKjAoBggrBgEFBQcCARYcaHR0cHM6Ly9zc2wudHJ1c3R3\nYXZlLmNvbS9DQTA3BgNVHR8EMDAuMCygKqAohiZodHRwOi8vY3JsLnRydXN0d2F2\nZS5jb20vVFdHUDI1NkNBLmNybDByBggrBgEFBQcBAQRmMGQwJgYIKwYBBQUHMAGG\nGmh0dHA6Ly9vY3NwLnRydXN0d2F2ZS5jb20vMDoGCCsGAQUFBzAChi5odHRwOi8v\nc3NsLnRydXN0d2F2ZS5jb20vaXNzdWVycy9UV0dQMjU2Q0EuY3J0MAoGCCqGSM49\nBAMCA0cAMEQCIGa3JyBYlXxRN5GIIulLaDxnANNRnY4j1Et166CCC5h+AiAVUlzJ\nIJTfUDBU7jnSTKSw/F+bLIPvaC6frMZv0h+RTA==\n-----END CERTIFICATE-----\n\nSecureTrust TWG ECDSA P-384 Secure Email CA, Level 2\nTrustwave Holdings, Inc.\n072F30E9C58D91DEF98A7F9EB2666CFE7BE1EE\n-----BEGIN CERTIFICATE-----\nMIIDqjCCAy+gAwIBAgITBy8w6cWNkd75in+esmZs/nvh7jAKBggqhkjOPQQDAzCB\nkTELMAkGA1UEBhMCVVMxETAPBgNVBAgTCElsbGlub2lzMRAwDgYDVQQHEwdDaGlj\nYWdvMSEwHwYDVQQKExhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xOjA4BgNVBAMT\nMVRydXN0d2F2ZSBHbG9iYWwgRUNDIFAzODQgQ2VydGlmaWNhdGlvbiBBdXRob3Jp\ndHkwHhcNMjAxMDA4MDY0OTQxWhcNMzAxMDA4MDY0ODQxWjBiMQswCQYDVQQGEwJV\nUzEUMBIGA1UEChMLU2VjdXJlVHJ1c3QxPTA7BgNVBAMTNFNlY3VyZVRydXN0IFRX\nRyBFQ0RTQSBQLTM4NCBTZWN1cmUgRW1haWwgQ0EsIExldmVsIDIwdjAQBgcqhkjO\nPQIBBgUrgQQAIgNiAAR4nTJ6MvtPBb7+L3tklhdDw0tr5FNY5Q1hsp6NR5OzZVeG\nx/X3VrCvkOsae1OEZHNqWCnnI1s/ix9qn/2+q0pPpXrT6wkN/HOQzpQaJWzCF7yX\nIfIB0o+x1Pr17UOX2qGjggF1MIIBcTASBgNVHRMBAf8ECDAGAQH/AgEAMA4GA1Ud\nDwEB/wQEAwIBhjATBgNVHSUEDDAKBggrBgEFBQcDBDAdBgNVHQ4EFgQUJd3xyUp6\n6EP6L9hCmkRrWAcU2mwwHwYDVR0jBBgwFoAUVamEidLBMr0Yy2ymB07I552+gpAw\nQQYDVR0gBDowODA2BgRVHSAAMC4wLAYIKwYBBQUHAgEWIGh0dHBzOi8vY2VydHMu\nc2VjdXJldHJ1c3QuY29tL0NBMDkGA1UdHwQyMDAwLqAsoCqGKGh0dHA6Ly9jcmwu\nc2VjdXJldHJ1c3QuY29tL1RXR1AzODRDQS5jcmwweAYIKwYBBQUHAQEEbDBqMCgG\nCCsGAQUFBzABhhxodHRwOi8vb2NzcC5zZWN1cmV0cnVzdC5jb20vMD4GCCsGAQUF\nBzAChjJodHRwOi8vY2VydHMuc2VjdXJldHJ1c3QuY29tL2lzc3VlcnMvVFdHUDM4\nNENBLmNydDAKBggqhkjOPQQDAwNpADBmAjEA8X5zwZHtdHjLIn60rwG3Z3NAa6cU\n6gOFxyF+ksTCXvWCUP0oFUqsRPMKMYE2mtdQAjEA2diuEHTPUgCQ0ynhLjged8BO\nFyzL3UlFieGGp90v58gUpfjoFq0BReAw7MPYo/Qa\n-----END CERTIFICATE-----\n\nTrustwave Global ECDSA P-384 Domain Validation CA, Level 1\nTrustwave Holdings, Inc.\n06CE82D9B07A17CC5376157813389A2930A44A\n-----BEGIN CERTIFICATE-----\nMIID1TCCA1ygAwIBAgITBs6C2bB6F8xTdhV4EziaKTCkSjAKBggqhkjOPQQDAzCB\nkTELMAkGA1UEBhMCVVMxETAPBgNVBAgTCElsbGlub2lzMRAwDgYDVQQHEwdDaGlj\nYWdvMSEwHwYDVQQKExhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xOjA4BgNVBAMT\nMVRydXN0d2F2ZSBHbG9iYWwgRUNDIFAzODQgQ2VydGlmaWNhdGlvbiBBdXRob3Jp\ndHkwHhcNMTgwMjA2MTIyMTIxWhcNMjgwMjI0MDUwMTIxWjCBmjFDMEEGA1UEAxM6\nVHJ1c3R3YXZlIEdsb2JhbCBFQ0RTQSBQLTM4NCBEb21haW4gVmFsaWRhdGlvbiBD\nQSwgTGV2ZWwgMTEhMB8GA1UEChMYVHJ1c3R3YXZlIEhvbGRpbmdzLCBJbmMuMRAw\nDgYDVQQHEwdDaGljYWdvMREwDwYDVQQIEwhJbGxpbm9pczELMAkGA1UEBhMCVVMw\ndjAQBgcqhkjOPQIBBgUrgQQAIgNiAASxlBEflNumTKsypgdOscM2x6ZRpQGSyB4B\nhJScRQI81UhZvzYSwxPWcxNZwFQoV457HfqR51pviJnHltRS8MJhJ9Q9Rf1sSmy4\nW6SPsM9qnBjwfBRxghByIsEIaTW/PKyjggFpMIIBZTASBgNVHRMBAf8ECDAGAQH/\nAgEAMA4GA1UdDwEB/wQEAwIBhjATBgNVHSUEDDAKBggrBgEFBQcDATAdBgNVHQ4E\nFgQUp6etGGS1u/oGGEfIwJ68Zf9pAWAwHwYDVR0jBBgwFoAUVamEidLBMr0Yy2ym\nB07I552+gpAwPQYDVR0gBDYwNDAyBgRVHSAAMCowKAYIKwYBBQUHAgEWHGh0dHBz\nOi8vc3NsLnRydXN0d2F2ZS5jb20vQ0EwNwYDVR0fBDAwLjAsoCqgKIYmaHR0cDov\nL2NybC50cnVzdHdhdmUuY29tL1RXR1AzODRDQS5jcmwwcgYIKwYBBQUHAQEEZjBk\nMCYGCCsGAQUFBzABhhpodHRwOi8vb2NzcC50cnVzdHdhdmUuY29tLzA6BggrBgEF\nBQcwAoYuaHR0cDovL3NzbC50cnVzdHdhdmUuY29tL2lzc3VlcnMvVFdHUDM4NENB\nLmNydDAKBggqhkjOPQQDAwNnADBkAjA6fS1jRjt+DvnWSI58v4lX+8DCXbdEhDaB\nbBOS/rXwS/ntsFXqTf0B90GPv3AWlFMCMBbz6nXMwX0jKRkaFZOZx9tvwUapdq7M\n6jYpT/NnAzH68x1t3/7ysZ8lPuKIqAwdKQ==\n-----END CERTIFICATE-----\n\nTrustwave Global ECDSA P-384 Extended Validation CA, Level 1\nTrustwave Holdings, Inc.\n06CE82D9A331594530006781829387E40DBCB6\n-----BEGIN CERTIFICATE-----\nMIID4zCCA2igAwIBAgITBs6C2aMxWUUwAGeBgpOH5A28tjAKBggqhkjOPQQDAzCB\nkTELMAkGA1UEBhMCVVMxETAPBgNVBAgTCElsbGlub2lzMRAwDgYDVQQHEwdDaGlj\nYWdvMSEwHwYDVQQKExhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xOjA4BgNVBAMT\nMVRydXN0d2F2ZSBHbG9iYWwgRUNDIFAzODQgQ2VydGlmaWNhdGlvbiBBdXRob3Jp\ndHkwHhcNMTgwMjA2MTIyMTIwWhcNMjgwMjI0MDUwMTIwWjCBnDFFMEMGA1UEAxM8\nVHJ1c3R3YXZlIEdsb2JhbCBFQ0RTQSBQLTM4NCBFeHRlbmRlZCBWYWxpZGF0aW9u\nIENBLCBMZXZlbCAxMSEwHwYDVQQKExhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4x\nEDAOBgNVBAcTB0NoaWNhZ28xETAPBgNVBAgTCElsbGlub2lzMQswCQYDVQQGEwJV\nUzB2MBAGByqGSM49AgEGBSuBBAAiA2IABKcVGieqBjW3BuVza9VhkBlpGLHLZqQg\nI0GXaTpt5CogNWz6BmlZ1yAPjRnDUVfVwl57ATRtV7u+5TPFzKZ+RheFVc0iA8vl\nQ2JINGRz8XLDaivvuygQtFKSzCWn4e66cKOCAXMwggFvMBIGA1UdEwEB/wQIMAYB\nAf8CAQAwDgYDVR0PAQH/BAQDAgGGMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEF\nBQcDATAdBgNVHQ4EFgQUMFfit09gayJACkNfT/oNzXO8JCcwHwYDVR0jBBgwFoAU\nVamEidLBMr0Yy2ymB07I552+gpAwPQYDVR0gBDYwNDAyBgRVHSAAMCowKAYIKwYB\nBQUHAgEWHGh0dHBzOi8vc3NsLnRydXN0d2F2ZS5jb20vQ0EwNwYDVR0fBDAwLjAs\noCqgKIYmaHR0cDovL2NybC50cnVzdHdhdmUuY29tL1RXR1AzODRDQS5jcmwwcgYI\nKwYBBQUHAQEEZjBkMCYGCCsGAQUFBzABhhpodHRwOi8vb2NzcC50cnVzdHdhdmUu\nY29tLzA6BggrBgEFBQcwAoYuaHR0cDovL3NzbC50cnVzdHdhdmUuY29tL2lzc3Vl\ncnMvVFdHUDM4NENBLmNydDAKBggqhkjOPQQDAwNpADBmAjEA6pScrGT+SruK7iON\n7iDJZfhQsjfQIhaq9sHiEXd89B8ibWOb57no/K265dPxeuALAjEA27NTMZM344eT\nX3df9B22dY5ZshsUMIiRcMo1K4B/GBO8SIA0jParkHS5g4WO5K7O\n-----END CERTIFICATE-----\n\nTrustwave Global ECDSA P-384 Organization Validation CA, Level 1\nTrustwave Holdings, Inc.\n06CE82D9A9D8E29837EF90BEAF59DC6551BED6\n-----BEGIN CERTIFICATE-----\nMIID5jCCA2ygAwIBAgITBs6C2anY4pg375C+r1ncZVG+1jAKBggqhkjOPQQDAzCB\nkTELMAkGA1UEBhMCVVMxETAPBgNVBAgTCElsbGlub2lzMRAwDgYDVQQHEwdDaGlj\nYWdvMSEwHwYDVQQKExhUcnVzdHdhdmUgSG9sZGluZ3MsIEluYy4xOjA4BgNVBAMT\nMVRydXN0d2F2ZSBHbG9iYWwgRUNDIFAzODQgQ2VydGlmaWNhdGlvbiBBdXRob3Jp\ndHkwHhcNMTgwMjA2MTIyMTIxWhcNMjgwMjI0MDUwMTIxWjCBoDFJMEcGA1UEAxNA\nVHJ1c3R3YXZlIEdsb2JhbCBFQ0RTQSBQLTM4NCBPcmdhbml6YXRpb24gVmFsaWRh\ndGlvbiBDQSwgTGV2ZWwgMTEhMB8GA1UEChMYVHJ1c3R3YXZlIEhvbGRpbmdzLCBJ\nbmMuMRAwDgYDVQQHEwdDaGljYWdvMREwDwYDVQQIEwhJbGxpbm9pczELMAkGA1UE\nBhMCVVMwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAATvG09PrsO8UQZhH5Zw54rwgcUw\nKjC9D2V3myjD5WOa8uxdTL8PzdwPk4TCcSf6UUG1Tt74j/I+vBOi2tgMcDt68Zld\nvTj+jZT1BBYTQtYh6/dOUjmiapQU5XqoFMRNubGjggFzMIIBbzASBgNVHRMBAf8E\nCDAGAQH/AgEAMA4GA1UdDwEB/wQEAwIBhjAdBgNVHSUEFjAUBggrBgEFBQcDAgYI\nKwYBBQUHAwEwHQYDVR0OBBYEFDoXwH5iO1eguEDKzDRHzZZ+/AmIMB8GA1UdIwQY\nMBaAFFWphInSwTK9GMtspgdOyOedvoKQMD0GA1UdIAQ2MDQwMgYEVR0gADAqMCgG\nCCsGAQUFBwIBFhxodHRwczovL3NzbC50cnVzdHdhdmUuY29tL0NBMDcGA1UdHwQw\nMC4wLKAqoCiGJmh0dHA6Ly9jcmwudHJ1c3R3YXZlLmNvbS9UV0dQMzg0Q0EuY3Js\nMHIGCCsGAQUFBwEBBGYwZDAmBggrBgEFBQcwAYYaaHR0cDovL29jc3AudHJ1c3R3\nYXZlLmNvbS8wOgYIKwYBBQUHMAKGLmh0dHA6Ly9zc2wudHJ1c3R3YXZlLmNvbS9p\nc3N1ZXJzL1RXR1AzODRDQS5jcnQwCgYIKoZIzj0EAwMDaAAwZQIwMyHlVCVMacxP\nO0fC+uc4M7Eq1F9woaWBmLSSNC6EWe3nShMqsR9HrNWrOHBHucNWAjEArwrzEM8g\nJkR4iZxbyYNIn2sNEkNZt2pxqJn4G2cDDDFfOarykKVzP1aJ9OMdYUvs\n-----END CERTIFICATE-----\n\nTrustwave S/MIME SHA256 CA, Level 1\nXRamp Security Services Inc\n3A83B71EE02C3CCA1CE1A2643E9B66EA\n-----BEGIN CERTIFICATE-----\nMIIFHTCCBAWgAwIBAgIQOoO3HuAsPMoc4aJkPptm6jANBgkqhkiG9w0BAQsFADCB\ngjELMAkGA1UEBhMCVVMxHjAcBgNVBAsTFXd3dy54cmFtcHNlY3VyaXR5LmNvbTEk\nMCIGA1UEChMbWFJhbXAgU2VjdXJpdHkgU2VydmljZXMgSW5jMS0wKwYDVQQDEyRY\nUmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTQxMDAxMTky\nMjM4WhcNMjQwOTI4MTkyMjM4WjCBpDELMAkGA1UEBhMCVVMxETAPBgNVBAgTCEls\nbGlub2lzMRAwDgYDVQQHEwdDaGljYWdvMSEwHwYDVQQKExhUcnVzdHdhdmUgSG9s\nZGluZ3MsIEluYy4xLDAqBgNVBAMTI1RydXN0d2F2ZSBTL01JTUUgU0hBMjU2IENB\nLCBMZXZlbCAxMR8wHQYJKoZIhvcNAQkBFhBjYUB0cnVzdHdhdmUuY29tMIIBIjAN\nBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4c5I5giD0wEh+RuoLIJkD7a6mBlm\n+YzTtXSefGejVVYtpjclkUl4C4hEfQMCUcrBnU3ORHVprXi/Q82dKNFPac8FI9bj\n8mtq0cjdSDfXJKfdf52wPXnTjASwKyhJt+CoJik+Fz72KAkjxi+OUSpWdQBeAQra\ndbtu4UGFTgPcuU/cwpF8J0g4CGk/saVKkkJNpq5wqpfQRYl025FyKbzmRjqhB/Ta\npoHlbHMQ7aeoZ+qtDC+eWnE3AqTUHx14Z5fegjLQRmPWqqdeZafthouglbEuHt4A\neyzefTDNwyXjUiRD/n0kaNNW+lcsLpw7ouw1OU8mwQ0C7LoPJljpXRjvOwIDAQAB\no4IBaTCCAWUwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUDDOjV6rjq9ZL\ncBs2nqPtYVDmr3QwDgYDVR0PAQH/BAQDAgGGMEgGA1UdIARBMD8wPQYPKwYBBAGB\n7RgDAwMFBAMDMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8vc3NsLnRydXN0d2F2ZS5j\nb20vQ0EwMgYDVR0fBCswKTAnoCWgI4YhaHR0cDovL2NybC50cnVzdHdhdmUuY29t\nL1hHQ0EuY3JsMGwGCCsGAQUFBwEBBGAwXjAlBggrBgEFBQcwAYYZaHR0cDovL29j\nc3AudHJ1c3R3YXZlLmNvbTA1BggrBgEFBQcwAoYpaHR0cDovL3NzbC50cnVzdHdh\ndmUuY29tL2lzc3VlcnMvWEdDQS5jcnQwEwYDVR0lBAwwCgYIKwYBBQUHAwQwHwYD\nVR0jBBgwFoAUxk+iPQZjhAmczmLkBKyNXLXpthswDQYJKoZIhvcNAQELBQADggEB\nAIdGLHufUegzFKVBQVWs3YAIFqCcJvdak14TMRImxJsnQWLz+jIW0olC0JATY6Ng\nxAbjIJA4wtW/tA+rgE6WcA5y3bLN3bRMQVDSu6X26hkVjvwo4/VYykOp3e9Cqlfe\ngJAsrqBQKXkUpEbYEmmorXxj6/74e//xwXTz0XS0BS9cXhONlTQffyJnMeLaunzQ\nS1x/MvALfPCHCZCTOfLDmwylKtHHu+V2Ks0HV+ZrzCBRR5W3MhGTU7PpNEMQwyGF\n+MG5eZTd0jyxOSOjaXQm7iDh0tG/iKZZegn5AhNdaHE74QEHTjK+teLQlo60QGBk\necyzakgVYZ/Ezalz8nQwhCA=\n-----END CERTIFICATE-----\n\nTrustwave XRamp Global Extended Validation CA, Level 1\nXRamp Security Services Inc\n00D3D519C2B2EB5C7040F64CBC957BBD2C\n-----BEGIN CERTIFICATE-----\nMIIFMDCCBBigAwIBAgIRANPVGcKy61xwQPZMvJV7vSwwDQYJKoZIhvcNAQELBQAw\ngYIxCzAJBgNVBAYTAlVTMR4wHAYDVQQLExV3d3cueHJhbXBzZWN1cml0eS5jb20x\nJDAiBgNVBAoTG1hSYW1wIFNlY3VyaXR5IFNlcnZpY2VzIEluYzEtMCsGA1UEAxMk\nWFJhbXAgR2xvYmFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTE1MDgxMjIw\nMTczMVoXDTI1MDgwOTIwMTczMVowgbcxCzAJBgNVBAYTAlVTMREwDwYDVQQIEwhJ\nbGxpbm9pczEQMA4GA1UEBxMHQ2hpY2FnbzEhMB8GA1UEChMYVHJ1c3R3YXZlIEhv\nbGRpbmdzLCBJbmMuMT8wPQYDVQQDEzZUcnVzdHdhdmUgWFJhbXAgR2xvYmFsIEV4\ndGVuZGVkIFZhbGlkYXRpb24gQ0EsIExldmVsIDExHzAdBgkqhkiG9w0BCQEWEGNh\nQHRydXN0d2F2ZS5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC9\nAAbj9SknrNJT9pDatGvlR386KRi0SkqIOGr+C5W91+8E8PqydEHwjrnrWt/MTLGO\n+2kfEO3TEJlWxQQqbHy8SdhjCANefLzOT1cfTfjroWBIS9yiHpBIQytAaz/td95Y\n+JKrRBVCnIR/wB5qMMQ982RWwqggD763XLma0c1AIndsZL+dXp1zET4KBreoxn3q\nRYzMIsZIL2mAJoiCOTYuOGrOMVuaQn0HSu3K7bU+CpkdLQ/j+ikcQiI10IL9oOcO\nU9Gnt/hRyUX66Gk91RIpYXhla2tIYrg7ezrAnFoZIZCb891JjFtbSEOvAAK9F5d6\nfkkjPx0432o/v1c5GRFPAgMBAAGjggFoMIIBZDASBgNVHRMBAf8ECDAGAQH/AgEA\nMB0GA1UdDgQWBBTFzrk7QkXAzQnlaOhIOoNdbI6rGDAOBgNVHQ8BAf8EBAMCAYYw\nPQYDVR0gBDYwNDAyBgRVHSAAMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8vc3NsLnRy\ndXN0d2F2ZS5jb20vQ0EwMgYDVR0fBCswKTAnoCWgI4YhaHR0cDovL2NybC50cnVz\ndHdhdmUuY29tL1hHQ0EuY3JsMGwGCCsGAQUFBwEBBGAwXjAlBggrBgEFBQcwAYYZ\naHR0cDovL29jc3AudHJ1c3R3YXZlLmNvbTA1BggrBgEFBQcwAoYpaHR0cDovL3Nz\nbC50cnVzdHdhdmUuY29tL2lzc3VlcnMvWEdDQS5jcnQwHQYDVR0lBBYwFAYIKwYB\nBQUHAwIGCCsGAQUFBwMBMB8GA1UdIwQYMBaAFMZPoj0GY4QJnM5i5ASsjVy16bYb\nMA0GCSqGSIb3DQEBCwUAA4IBAQCA2N/WVTGYRGNTuvF2qKWPrQUx0/6pKmGqELl6\nNXs1bwRXCci98SkeNjiaa2dHEwcGR43/M1Y0nekXP8QCEFVqGOwaY0pnTb8wL+CI\n/HTp1zfmoCYNvtzt1fIq/+9ynLYEjX8rsrf51HIEjJJK8K3k/Ub3cFT+yJKNN2YN\nJS0IvJYlbpqS6VbcInwLcW7WvJmXUuL7t0Vtt0d2q1h5UdnJQP+skiOmN/B0zPut\nbRC4v5pNGJJmwbk58UlOSeviH2qzDGutamOJ6dFNWqQFoZorAT7fUsr3WDA4HKtx\neraYdCIRJX7weW9xpdMNsVO7Wy/Ma7Fz9fzKnOH5mnInBOof\n-----END CERTIFICATE-----\n\nSecure Global CA\nSecureTrust Corporation\n075622A4E8D48A894DF413C8F0F8EAA5\n-----BEGIN CERTIFICATE-----\nMIIDvDCCAqSgAwIBAgIQB1YipOjUiolN9BPI8PjqpTANBgkqhkiG9w0BAQUFADBK\nMQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24x\nGTAXBgNVBAMTEFNlY3VyZSBHbG9iYWwgQ0EwHhcNMDYxMTA3MTk0MjI4WhcNMjkx\nMjMxMTk1MjA2WjBKMQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3Qg\nQ29ycG9yYXRpb24xGTAXBgNVBAMTEFNlY3VyZSBHbG9iYWwgQ0EwggEiMA0GCSqG\nSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvNS7YrGxVaQZx5RNoJLNP2MwhR/jxYDiJ\niQPpvepeRlMJ3Fz1Wuj3RSoC6zFh1ykzTM7HfAo3fg+6MpjhHZevj8fcyTiW89sa\n/FHtaMbQbqR8JNGuQsiWUGMu4P51/pinX0kuleM5M2SOHqRfkNJnPLLZ/kG5VacJ\njnIFHovdRIWCQtBJwB1g8NEXLJXr9qXBkqPFwqcIYA1gBBCWeZ4WNOaptvolRTnI\nHmX5k/Wq8VLcmZg9pYYaDDUz+kulBAYVHDGA76oYa8J719rO+TMg1fW9ajMtgQT7\nsFzUnKPiXB3jqUJ1XnvUd+85VLrJChgbEplJL4hL/VBi0XPnj3pDAgMBAAGjgZ0w\ngZowEwYJKwYBBAGCNxQCBAYeBABDAEEwCwYDVR0PBAQDAgGGMA8GA1UdEwEB/wQF\nMAMBAf8wHQYDVR0OBBYEFK9EBMJBfkiD2045AuzshHrmzsmkMDQGA1UdHwQtMCsw\nKaAnoCWGI2h0dHA6Ly9jcmwuc2VjdXJldHJ1c3QuY29tL1NHQ0EuY3JsMBAGCSsG\nAQQBgjcVAQQDAgEAMA0GCSqGSIb3DQEBBQUAA4IBAQBjGghAfaReUw132HquHw0L\nURYD7xh8yOOvaliTFGCRsoTciE6+OYo68+aCiV0BN7OrJKQVDpI1WkpEXk5X+nXO\nH0jOZvQ8QCaSmGwb7iRGDBezUqXbpZGRzzfTb+cnCDpOGR86p1hcF895P4vkp9Mm\nI50mD1hp/Ed+stCNi5O/KU9DaXR2Z0vPB4zmAve14bRDtUstFJ/53CYNv6ZHdAbY\niNE6KTCEztI5gGIbqMdXSbxqVVFnFUq+NQfk1XWYN3kwFNspnWzFacxHVaIw98xc\nf8LDmBxrThaA63p4ZUWiABqvDA1VZDRIuJK58bRQKfJPIx/abKwfROHdI3hRW8cW\n-----END CERTIFICATE-----\n\nSecureTrust CA\nSecureTrust Corporation\n0CF08E5C0816A5AD427FF0EB271859D0\n-----BEGIN CERTIFICATE-----\nMIIDuDCCAqCgAwIBAgIQDPCOXAgWpa1Cf/DrJxhZ0DANBgkqhkiG9w0BAQUFADBI\nMQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24x\nFzAVBgNVBAMTDlNlY3VyZVRydXN0IENBMB4XDTA2MTEwNzE5MzExOFoXDTI5MTIz\nMTE5NDA1NVowSDELMAkGA1UEBhMCVVMxIDAeBgNVBAoTF1NlY3VyZVRydXN0IENv\ncnBvcmF0aW9uMRcwFQYDVQQDEw5TZWN1cmVUcnVzdCBDQTCCASIwDQYJKoZIhvcN\nAQEBBQADggEPADCCAQoCggEBAKukgeWVzfX2FI7CT8rU4niVWJxB4Q2ZQCQXOZEz\nZum+4YOvYlyJ0fwkW2Gz4BERQRwdbvC4u/jep4G6pkjGnx29vo6pQT64lO0pGtSO\n0gMdA+9tDWccV9cGrcrI9f4Or2YlSASWC12juhbDCE/RRvgUXPLIXgGZbf2IzIao\nwW8xQmxSPmjL8xk037uHGFaAJsTQ3MBv396gwpEWoGQRS0S8Hvbn+mPeZqx2pHGj\n7DaUaHp3pLHnDi+BeuK1cobvomuL8A/b01k/unK8RCSc43Oz969XL0Imnal0ugBS\n8kvNU3xHCzaFDmapCJcWNFfBZveA4+1wVMeT4C4oFVmHursCAwEAAaOBnTCBmjAT\nBgkrBgEEAYI3FAIEBh4EAEMAQTALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB\n/zAdBgNVHQ4EFgQUQjK2FvoE/f5dS3rD/fdMQB1aQ68wNAYDVR0fBC0wKzApoCeg\nJYYjaHR0cDovL2NybC5zZWN1cmV0cnVzdC5jb20vU1RDQS5jcmwwEAYJKwYBBAGC\nNxUBBAMCAQAwDQYJKoZIhvcNAQEFBQADggEBADDtT0rhWDpSclu1pqNlGKa7UTt3\n6Z3q059c4EVlew3KW+JwULKUBRSuSceNQQcSc5R+DCMh/bwQf2AQWnL1mA6s7Ll/\n3XpvXdMc9P+IBWlCqQVxyLesJugutIxq/3HcuLHfmbx8IVQr5Fiiu1cprp6poxkm\nD5kuCLDv/WnPmRoJjeOnnyvJNjR7JLN4TJUXpAYmHrZkUjZfYGfZnMUFdAvnZyPS\nCPyI6a6Lf+Ew9Dd+/cYy2i2eRDAwbO4H3tI0/NL/QPZL9GZGBlSm8jIKYyYwa5vR\n3ItHuuG51WLQoqD0ZwV4KWMabwTW+MZMo5qxN7SN5ShLHZ4swrhovO0C7jE=\n-----END CERTIFICATE-----\n\nTrustwave Global Certification Authority\nTrustwave Holdings, Inc.\n05F70E86DA49F346352EBAB2\n-----BEGIN CERTIFICATE-----\nMIIF2jCCA8KgAwIBAgIMBfcOhtpJ80Y1LrqyMA0GCSqGSIb3DQEBCwUAMIGIMQsw\nCQYDVQQGEwJVUzERMA8GA1UECAwISWxsaW5vaXMxEDAOBgNVBAcMB0NoaWNhZ28x\nITAfBgNVBAoMGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjExMC8GA1UEAwwoVHJ1\nc3R3YXZlIEdsb2JhbCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0xNzA4MjMx\nOTM0MTJaFw00MjA4MjMxOTM0MTJaMIGIMQswCQYDVQQGEwJVUzERMA8GA1UECAwI\nSWxsaW5vaXMxEDAOBgNVBAcMB0NoaWNhZ28xITAfBgNVBAoMGFRydXN0d2F2ZSBI\nb2xkaW5ncywgSW5jLjExMC8GA1UEAwwoVHJ1c3R3YXZlIEdsb2JhbCBDZXJ0aWZp\nY2F0aW9uIEF1dGhvcml0eTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB\nALldUShLPDeS0YLOvR29zd24q88KPuFd5dyqCblXAj7mY2Hf8g+CY66j96xz0Xzn\nswuvCAAJWX/NKSqIk4cXGIDtiLK0thAfLdZfVaITXdHG6wZWiYj+rDKd/VzDBcdu\n7oaJuogDnXIhhpCujwOl3J+IKMujkkkP7NAP4m1ET4BqstTnoApTAbqOl5F2brz8\n1Ws25kCI1nsvXwXoLG0R8+eyvpJETNKXpP7ScoFDB5zpET71ixpZfR9oWN0EACyW\n80OzfpgZdNmcc9kYvkHHNHnZ9GLCQ7mzJ7Aiy/k9UscwR7PJPrhq4ufogXBeQotP\nJqX+OsIgbrv4Fo7NDKm0G2x2EOFYeUY+VM6AqFcJNykbmROPDMjWLBz7BegIlT1l\nRtzuzWniTY+HKE40Cz7PFNm73bZQmq131BnW2hqIyE4bJ3XYsgjxroMwuREOzYfw\nhI0Vcnyh78zyiGG69Gm7DIwLdVcEuE4qFC49DxweMqZiNu5m4iK4BUBjECLzMx10\ncoos9TkpoNPnG4CELcU9402x/RpvumUHO1jsQkUm+9jaJXLE9gCxInm943xZYkqc\nBW89zubWR2OZxiRvchLIrH+QtAuRcOi35hYQcRfO3gZPSEF9NUqjifLJS3tBEW1n\ntwiYTOURGa5CgNz7kAXU+FDKvuStx8KU1xad5hePrzb7AgMBAAGjQjBAMA8GA1Ud\nEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJngGWcNYtt2s9o9uFvo/ULSMQ6HMA4GA1Ud\nDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAmHNw4rDT7TnsTGDZqRKGFx6W\n0OhUKDtkLSGm+J1WE2pIPU/HPinbbViDVD2HfSMF1OQc3Og4ZYbFdada2zUFvXfe\nuyk3QAUHw5RSn8pk3fEbK9xGChACMf1KaA0HZJDmHvUqoai7PF35owgLEQzxPy0Q\nlG/+4jSHg9bP5Rs1bdID4bANqKCqRieCNqcVtgimQlRXtpla4gt5kNdXElE1GYhB\naCXUNxeEFfsBctyV3lImIJgm4nb1J2/6ADtKYdkNy1GTKv0WBpanI5ojSP5RvbbE\nsLFUzt5sQa0WZ37b/TjNuThOssFgy50X31ieemKyJo90lZvkWx3SD92YHJtZuSPT\nMaCm/zjdzyBP6VhWOmfD0faZmZ26NraAL4hHT4a/RDqA5Dccprrql5gR0IRiR2Qe\nqu5AvzSxnI9O4fKSTx+O856X3vOmeWqJcU9LJxdI/uz0UA9PSX3MReO9ekDFQdxh\nVicGaeVyQYHTtgGJoC86cnn+OjC/QezHYj6RS8fZMXZC+fc8Y+wmjHMMfRod6qh8\nh6jCJ3zhM0EPz8/8AKAigJ5Kp28AsEFFtyLKaEjFQqKu3R3y4G5OBVixwJAWKqQ9\nEEC+j2Jjg6mcgn0tAumDMHzLJ8n9HmYAsC7TIS+OMxZsmO0QqAfWzJPP29FpHOTK\nyeC2nOnOcXHebD8WpHk=\n-----END CERTIFICATE-----\n\nTrustwave Global ECC P256 Certification Authority\nTrustwave Holdings, Inc.\n0D6A5F083F285C3E5195DF5D\n-----BEGIN CERTIFICATE-----\nMIICYDCCAgegAwIBAgIMDWpfCD8oXD5Rld9dMAoGCCqGSM49BAMCMIGRMQswCQYD\nVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAf\nBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3\nYXZlIEdsb2JhbCBFQ0MgUDI1NiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0x\nNzA4MjMxOTM1MTBaFw00MjA4MjMxOTM1MTBaMIGRMQswCQYDVQQGEwJVUzERMA8G\nA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0\nd2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBF\nQ0MgUDI1NiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTBZMBMGByqGSM49AgEGCCqG\nSM49AwEHA0IABH77bOYj43MyCMpg5lOcunSNGLB4kFKA3TjASh3RqMyTpJcGOMoN\nFWLGjgEqZZ2q3zSRLoHB5DOSMcT9CTqmP62jQzBBMA8GA1UdEwEB/wQFMAMBAf8w\nDwYDVR0PAQH/BAUDAwcGADAdBgNVHQ4EFgQUo0EGrJBt0UrrdaVKEJmzsaGLSvcw\nCgYIKoZIzj0EAwIDRwAwRAIgB+ZU2g6gWrKuEZ+Hxbb/ad4lvvigtwjzRM4q3wgh\nDDcCIC0mA6AFvWvR9lz4ZcyGbbOcNEhjhAnFjXca4syc4XR7\n-----END CERTIFICATE-----\n\nTrustwave Global ECC P384 Certification Authority\nTrustwave Holdings, Inc.\n08BD85976C9927A48068473B\n-----BEGIN CERTIFICATE-----\nMIICnTCCAiSgAwIBAgIMCL2Fl2yZJ6SAaEc7MAoGCCqGSM49BAMDMIGRMQswCQYD\nVQQGEwJVUzERMA8GA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAf\nBgNVBAoTGFRydXN0d2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3\nYXZlIEdsb2JhbCBFQ0MgUDM4NCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0x\nNzA4MjMxOTM2NDNaFw00MjA4MjMxOTM2NDNaMIGRMQswCQYDVQQGEwJVUzERMA8G\nA1UECBMISWxsaW5vaXMxEDAOBgNVBAcTB0NoaWNhZ28xITAfBgNVBAoTGFRydXN0\nd2F2ZSBIb2xkaW5ncywgSW5jLjE6MDgGA1UEAxMxVHJ1c3R3YXZlIEdsb2JhbCBF\nQ0MgUDM4NCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTB2MBAGByqGSM49AgEGBSuB\nBAAiA2IABGvaDXU1CDFHBa5FmVXxERMuSvgQMSOjfoPTfygIOiYaOs+Xgh+AtycJ\nj9GOMMQKmw6sWASr9zZ9lCOkmwqKi6vr/TklZvFe/oyujUF5nQlgziip04pt89ZF\n1PKYhDhloKNDMEEwDwYDVR0TAQH/BAUwAwEB/zAPBgNVHQ8BAf8EBQMDBwYAMB0G\nA1UdDgQWBBRVqYSJ0sEyvRjLbKYHTsjnnb6CkDAKBggqhkjOPQQDAwNnADBkAjA3\nAZKXRRJ+oPM+rRk6ct30UJMDEr5E0k9BpIycnR+j9sKS50gU/k6bpZFXrsY3crsC\nMGclCrEMXu6pY5Jv5ZAL/mYiykf9ijH3g/56vxC+GCsej/YpHpRZ744hN8tRmKVu\nSw==\n-----END CERTIFICATE-----\n";
|
|
14
14
|
|
|
15
15
|
var PKG_NAME = "@hpcc-js/comms";
|
|
16
|
-
var PKG_VERSION = "2.
|
|
17
|
-
var BUILD_VERSION = "2.104.
|
|
16
|
+
var PKG_VERSION = "2.83.1";
|
|
17
|
+
var BUILD_VERSION = "2.104.23";
|
|
18
18
|
|
|
19
19
|
/******************************************************************************
|
|
20
20
|
Copyright (c) Microsoft Corporation.
|
|
@@ -106,7 +106,7 @@ function __spreadArray(to, from, pack) {
|
|
|
106
106
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
107
107
|
}
|
|
108
108
|
|
|
109
|
-
var logger$
|
|
109
|
+
var logger$5 = scopedLogger("comms/connection.ts");
|
|
110
110
|
function instanceOfIOptions(object) {
|
|
111
111
|
return "baseUrl" in object;
|
|
112
112
|
}
|
|
@@ -208,12 +208,12 @@ function jsonp(opts, action, request, responseType, header) {
|
|
|
208
208
|
respondedTimeout -= respondedTick;
|
|
209
209
|
if (respondedTimeout <= 0) {
|
|
210
210
|
clearInterval(progress);
|
|
211
|
-
logger$
|
|
211
|
+
logger$5.error("Request timeout: " + script.src);
|
|
212
212
|
doCallback();
|
|
213
213
|
reject(Error("Request timeout: " + script.src));
|
|
214
214
|
}
|
|
215
215
|
else {
|
|
216
|
-
logger$
|
|
216
|
+
logger$5.debug("Request pending (" + respondedTimeout / 1000 + " sec): " + script.src);
|
|
217
217
|
}
|
|
218
218
|
}
|
|
219
219
|
}, respondedTick);
|
|
@@ -491,109 +491,114 @@ var Service = /** @class */ (function () {
|
|
|
491
491
|
return Service;
|
|
492
492
|
}());
|
|
493
493
|
|
|
494
|
-
var
|
|
495
|
-
(function (
|
|
496
|
-
DFUWUActions
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
494
|
+
var FileSpray;
|
|
495
|
+
(function (FileSpray) {
|
|
496
|
+
(function (DFUWUActions) {
|
|
497
|
+
DFUWUActions["Delete"] = "Delete";
|
|
498
|
+
DFUWUActions["Protect"] = "Protect";
|
|
499
|
+
DFUWUActions["Unprotect"] = "Unprotect";
|
|
500
|
+
DFUWUActions["Restore"] = "Restore";
|
|
501
|
+
DFUWUActions["SetToFailed"] = "SetToFailed";
|
|
502
|
+
DFUWUActions["Archive"] = "Archive";
|
|
503
|
+
})(FileSpray.DFUWUActions || (FileSpray.DFUWUActions = {}));
|
|
504
|
+
})(FileSpray || (FileSpray = {}));
|
|
503
505
|
var FileSprayServiceBase = /** @class */ (function (_super) {
|
|
504
506
|
__extends(FileSprayServiceBase, _super);
|
|
505
507
|
function FileSprayServiceBase(optsConnection) {
|
|
506
|
-
return _super.call(this, optsConnection, "FileSpray", "1.
|
|
508
|
+
return _super.call(this, optsConnection, "FileSpray", "1.25") || this;
|
|
507
509
|
}
|
|
508
510
|
FileSprayServiceBase.prototype.AbortDFUWorkunit = function (request) {
|
|
509
|
-
return this._connection.send("AbortDFUWorkunit", request);
|
|
511
|
+
return this._connection.send("AbortDFUWorkunit", request, "json", false, undefined, "AbortDFUWorkunitResponse");
|
|
510
512
|
};
|
|
511
513
|
FileSprayServiceBase.prototype.Copy = function (request) {
|
|
512
|
-
return this._connection.send("Copy", request);
|
|
514
|
+
return this._connection.send("Copy", request, "json", false, undefined, "CopyResponse");
|
|
515
|
+
};
|
|
516
|
+
FileSprayServiceBase.prototype.CreateDFUPublisherWorkunit = function (request) {
|
|
517
|
+
return this._connection.send("CreateDFUPublisherWorkunit", request, "json", false, undefined, "CreateDFUPublisherWorkunitResponse");
|
|
513
518
|
};
|
|
514
519
|
FileSprayServiceBase.prototype.CreateDFUWorkunit = function (request) {
|
|
515
|
-
return this._connection.send("CreateDFUWorkunit", request);
|
|
520
|
+
return this._connection.send("CreateDFUWorkunit", request, "json", false, undefined, "CreateDFUWorkunitResponse");
|
|
516
521
|
};
|
|
517
522
|
FileSprayServiceBase.prototype.DFUWUFile = function (request) {
|
|
518
|
-
return this._connection.send("DFUWUFile", request);
|
|
523
|
+
return this._connection.send("DFUWUFile", request, "json", false, undefined, "DFUWUFileResponse");
|
|
519
524
|
};
|
|
520
525
|
FileSprayServiceBase.prototype.DFUWUSearch = function (request) {
|
|
521
|
-
return this._connection.send("DFUWUSearch", request);
|
|
526
|
+
return this._connection.send("DFUWUSearch", request, "json", false, undefined, "DFUWUSearchResponse");
|
|
522
527
|
};
|
|
523
528
|
FileSprayServiceBase.prototype.DFUWorkunitsAction = function (request) {
|
|
524
|
-
return this._connection.send("DFUWorkunitsAction", request);
|
|
529
|
+
return this._connection.send("DFUWorkunitsAction", request, "json", false, undefined, "DFUWorkunitsActionResponse");
|
|
525
530
|
};
|
|
526
531
|
FileSprayServiceBase.prototype.DeleteDFUWorkunit = function (request) {
|
|
527
|
-
return this._connection.send("DeleteDFUWorkunit", request);
|
|
532
|
+
return this._connection.send("DeleteDFUWorkunit", request, "json", false, undefined, "DeleteDFUWorkunitResponse");
|
|
528
533
|
};
|
|
529
534
|
FileSprayServiceBase.prototype.DeleteDFUWorkunits = function (request) {
|
|
530
|
-
return this._connection.send("DeleteDFUWorkunits", request);
|
|
535
|
+
return this._connection.send("DeleteDFUWorkunits", request, "json", false, undefined, "DeleteDFUWorkunitsResponse");
|
|
531
536
|
};
|
|
532
537
|
FileSprayServiceBase.prototype.DeleteDropZoneFiles = function (request) {
|
|
533
|
-
return this._connection.send("DeleteDropZoneFiles", request);
|
|
538
|
+
return this._connection.send("DeleteDropZoneFiles", request, "json", false, undefined, "DFUWorkunitsActionResponse");
|
|
534
539
|
};
|
|
535
540
|
FileSprayServiceBase.prototype.Despray = function (request) {
|
|
536
|
-
return this._connection.send("Despray", request);
|
|
541
|
+
return this._connection.send("Despray", request, "json", false, undefined, "DesprayResponse");
|
|
537
542
|
};
|
|
538
543
|
FileSprayServiceBase.prototype.DfuMonitor = function (request) {
|
|
539
|
-
return this._connection.send("DfuMonitor", request);
|
|
544
|
+
return this._connection.send("DfuMonitor", request, "json", false, undefined, "DfuMonitorResponse");
|
|
540
545
|
};
|
|
541
546
|
FileSprayServiceBase.prototype.DropZoneFileSearch = function (request) {
|
|
542
|
-
return this._connection.send("DropZoneFileSearch", request);
|
|
547
|
+
return this._connection.send("DropZoneFileSearch", request, "json", false, undefined, "DropZoneFileSearchResponse");
|
|
543
548
|
};
|
|
544
549
|
FileSprayServiceBase.prototype.DropZoneFiles = function (request) {
|
|
545
|
-
return this._connection.send("DropZoneFiles", request);
|
|
550
|
+
return this._connection.send("DropZoneFiles", request, "json", false, undefined, "DropZoneFilesResponse");
|
|
546
551
|
};
|
|
547
552
|
FileSprayServiceBase.prototype.EchoDateTime = function (request) {
|
|
548
|
-
return this._connection.send("EchoDateTime", request);
|
|
553
|
+
return this._connection.send("EchoDateTime", request, "json", false, undefined, "EchoDateTimeResponse");
|
|
549
554
|
};
|
|
550
555
|
FileSprayServiceBase.prototype.FileList = function (request) {
|
|
551
|
-
return this._connection.send("FileList", request);
|
|
556
|
+
return this._connection.send("FileList", request, "json", false, undefined, "FileListResponse");
|
|
552
557
|
};
|
|
553
558
|
FileSprayServiceBase.prototype.GetDFUExceptions = function (request) {
|
|
554
|
-
return this._connection.send("GetDFUExceptions", request);
|
|
559
|
+
return this._connection.send("GetDFUExceptions", request, "json", false, undefined, "GetDFUExceptionsResponse");
|
|
555
560
|
};
|
|
556
561
|
FileSprayServiceBase.prototype.GetDFUProgress = function (request) {
|
|
557
|
-
return this._connection.send("GetDFUProgress", request);
|
|
562
|
+
return this._connection.send("GetDFUProgress", request, "json", false, undefined, "ProgressResponse");
|
|
558
563
|
};
|
|
559
564
|
FileSprayServiceBase.prototype.GetDFUServerQueues = function (request) {
|
|
560
|
-
return this._connection.send("GetDFUServerQueues", request);
|
|
565
|
+
return this._connection.send("GetDFUServerQueues", request, "json", false, undefined, "GetDFUServerQueuesResponse");
|
|
561
566
|
};
|
|
562
567
|
FileSprayServiceBase.prototype.GetDFUWorkunit = function (request) {
|
|
563
|
-
return this._connection.send("GetDFUWorkunit", request);
|
|
568
|
+
return this._connection.send("GetDFUWorkunit", request, "json", false, undefined, "GetDFUWorkunitResponse");
|
|
564
569
|
};
|
|
565
570
|
FileSprayServiceBase.prototype.GetDFUWorkunits = function (request) {
|
|
566
|
-
return this._connection.send("GetDFUWorkunits", request);
|
|
571
|
+
return this._connection.send("GetDFUWorkunits", request, "json", false, undefined, "GetDFUWorkunitsResponse");
|
|
567
572
|
};
|
|
568
573
|
FileSprayServiceBase.prototype.GetSprayTargets = function (request) {
|
|
569
|
-
return this._connection.send("GetSprayTargets", request);
|
|
574
|
+
return this._connection.send("GetSprayTargets", request, "json", false, undefined, "GetSprayTargetsResponse");
|
|
570
575
|
};
|
|
571
576
|
FileSprayServiceBase.prototype.OpenSave = function (request) {
|
|
572
|
-
return this._connection.send("OpenSave", request);
|
|
577
|
+
return this._connection.send("OpenSave", request, "json", false, undefined, "OpenSaveResponse");
|
|
573
578
|
};
|
|
574
579
|
FileSprayServiceBase.prototype.Ping = function (request) {
|
|
575
|
-
return this._connection.send("Ping", request);
|
|
580
|
+
return this._connection.send("Ping", request, "json", false, undefined, "FileSprayPingResponse");
|
|
576
581
|
};
|
|
577
582
|
FileSprayServiceBase.prototype.Rename = function (request) {
|
|
578
|
-
return this._connection.send("Rename", request);
|
|
583
|
+
return this._connection.send("Rename", request, "json", false, undefined, "RenameResponse");
|
|
579
584
|
};
|
|
580
585
|
FileSprayServiceBase.prototype.Replicate = function (request) {
|
|
581
|
-
return this._connection.send("Replicate", request);
|
|
586
|
+
return this._connection.send("Replicate", request, "json", false, undefined, "ReplicateResponse");
|
|
582
587
|
};
|
|
583
588
|
FileSprayServiceBase.prototype.ShowResult = function (request) {
|
|
584
|
-
return this._connection.send("ShowResult", request);
|
|
589
|
+
return this._connection.send("ShowResult", request, "json", false, undefined, "ShowResultResponse");
|
|
585
590
|
};
|
|
586
591
|
FileSprayServiceBase.prototype.SprayFixed = function (request) {
|
|
587
|
-
return this._connection.send("SprayFixed", request);
|
|
592
|
+
return this._connection.send("SprayFixed", request, "json", false, undefined, "SprayFixedResponse");
|
|
588
593
|
};
|
|
589
594
|
FileSprayServiceBase.prototype.SprayVariable = function (request) {
|
|
590
|
-
return this._connection.send("SprayVariable", request);
|
|
595
|
+
return this._connection.send("SprayVariable", request, "json", false, undefined, "SprayResponse");
|
|
591
596
|
};
|
|
592
597
|
FileSprayServiceBase.prototype.SubmitDFUWorkunit = function (request) {
|
|
593
|
-
return this._connection.send("SubmitDFUWorkunit", request);
|
|
598
|
+
return this._connection.send("SubmitDFUWorkunit", request, "json", false, undefined, "SubmitDFUWorkunitResponse");
|
|
594
599
|
};
|
|
595
600
|
FileSprayServiceBase.prototype.UpdateDFUWorkunit = function (request) {
|
|
596
|
-
return this._connection.send("UpdateDFUWorkunit", request);
|
|
601
|
+
return this._connection.send("UpdateDFUWorkunit", request, "json", false, undefined, "UpdateDFUWorkunitResponse");
|
|
597
602
|
};
|
|
598
603
|
return FileSprayServiceBase;
|
|
599
604
|
}(Service));
|
|
@@ -612,6 +617,9 @@ var FileSprayService = /** @class */ (function (_super) {
|
|
|
612
617
|
FileSprayService.prototype.DesprayEx = function (request) {
|
|
613
618
|
return this._connection.send("Despray", request);
|
|
614
619
|
};
|
|
620
|
+
FileSprayService.prototype.UpdateDFUWorkunitEx = function (request) {
|
|
621
|
+
return this._connection.send("UpdateDFUWorkunit", request, "json", false, undefined, "UpdateDFUWorkunitResponse");
|
|
622
|
+
};
|
|
615
623
|
return FileSprayService;
|
|
616
624
|
}(FileSprayServiceBase));
|
|
617
625
|
|
|
@@ -1385,7 +1393,7 @@ var LogaccessServiceBase = /** @class */ (function (_super) {
|
|
|
1385
1393
|
return LogaccessServiceBase;
|
|
1386
1394
|
}(Service));
|
|
1387
1395
|
|
|
1388
|
-
var logger$
|
|
1396
|
+
var logger$4 = scopedLogger("@hpcc-js/comms/services/wsLogaccess.ts");
|
|
1389
1397
|
var ElasticKnownColumns;
|
|
1390
1398
|
(function (ElasticKnownColumns) {
|
|
1391
1399
|
ElasticKnownColumns["audience"] = "hpcc.log.audience";
|
|
@@ -1587,7 +1595,7 @@ var LogaccessService = /** @class */ (function (_super) {
|
|
|
1587
1595
|
lines = (_d = (_c = logLines.lines) === null || _c === void 0 ? void 0 : _c.map(elasticToLogLine)) !== null && _d !== void 0 ? _d : [];
|
|
1588
1596
|
break;
|
|
1589
1597
|
default:
|
|
1590
|
-
logger$
|
|
1598
|
+
logger$4.warning("Unknown RemoteLogManagerType: ".concat(logInfo.RemoteLogManagerType));
|
|
1591
1599
|
lines = [];
|
|
1592
1600
|
}
|
|
1593
1601
|
return {
|
|
@@ -1596,7 +1604,7 @@ var LogaccessService = /** @class */ (function (_super) {
|
|
|
1596
1604
|
};
|
|
1597
1605
|
}
|
|
1598
1606
|
catch (e) {
|
|
1599
|
-
logger$
|
|
1607
|
+
logger$4.error(e);
|
|
1600
1608
|
}
|
|
1601
1609
|
return {
|
|
1602
1610
|
lines: [],
|
|
@@ -2566,6 +2574,321 @@ var WorkunitsServiceEx = /** @class */ (function (_super) {
|
|
|
2566
2574
|
return WorkunitsServiceEx;
|
|
2567
2575
|
}(WorkunitsServiceBase));
|
|
2568
2576
|
|
|
2577
|
+
function formatDecimal(x) {
|
|
2578
|
+
return Math.abs(x = Math.round(x)) >= 1e21
|
|
2579
|
+
? x.toLocaleString("en").replace(/,/g, "")
|
|
2580
|
+
: x.toString(10);
|
|
2581
|
+
}
|
|
2582
|
+
|
|
2583
|
+
// Computes the decimal coefficient and exponent of the specified number x with
|
|
2584
|
+
// significant digits p, where x is positive and p is in [1, 21] or undefined.
|
|
2585
|
+
// For example, formatDecimalParts(1.23) returns ["123", 0].
|
|
2586
|
+
function formatDecimalParts(x, p) {
|
|
2587
|
+
if ((i = (x = p ? x.toExponential(p - 1) : x.toExponential()).indexOf("e")) < 0) return null; // NaN, ±Infinity
|
|
2588
|
+
var i, coefficient = x.slice(0, i);
|
|
2589
|
+
|
|
2590
|
+
// The string returned by toExponential either has the form \d\.\d+e[-+]\d+
|
|
2591
|
+
// (e.g., 1.2e+3) or the form \de[-+]\d+ (e.g., 1e+3).
|
|
2592
|
+
return [
|
|
2593
|
+
coefficient.length > 1 ? coefficient[0] + coefficient.slice(2) : coefficient,
|
|
2594
|
+
+x.slice(i + 1)
|
|
2595
|
+
];
|
|
2596
|
+
}
|
|
2597
|
+
|
|
2598
|
+
function exponent(x) {
|
|
2599
|
+
return x = formatDecimalParts(Math.abs(x)), x ? x[1] : NaN;
|
|
2600
|
+
}
|
|
2601
|
+
|
|
2602
|
+
function formatGroup(grouping, thousands) {
|
|
2603
|
+
return function(value, width) {
|
|
2604
|
+
var i = value.length,
|
|
2605
|
+
t = [],
|
|
2606
|
+
j = 0,
|
|
2607
|
+
g = grouping[0],
|
|
2608
|
+
length = 0;
|
|
2609
|
+
|
|
2610
|
+
while (i > 0 && g > 0) {
|
|
2611
|
+
if (length + g + 1 > width) g = Math.max(1, width - length);
|
|
2612
|
+
t.push(value.substring(i -= g, i + g));
|
|
2613
|
+
if ((length += g + 1) > width) break;
|
|
2614
|
+
g = grouping[j = (j + 1) % grouping.length];
|
|
2615
|
+
}
|
|
2616
|
+
|
|
2617
|
+
return t.reverse().join(thousands);
|
|
2618
|
+
};
|
|
2619
|
+
}
|
|
2620
|
+
|
|
2621
|
+
function formatNumerals(numerals) {
|
|
2622
|
+
return function(value) {
|
|
2623
|
+
return value.replace(/[0-9]/g, function(i) {
|
|
2624
|
+
return numerals[+i];
|
|
2625
|
+
});
|
|
2626
|
+
};
|
|
2627
|
+
}
|
|
2628
|
+
|
|
2629
|
+
// [[fill]align][sign][symbol][0][width][,][.precision][~][type]
|
|
2630
|
+
var re = /^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;
|
|
2631
|
+
|
|
2632
|
+
function formatSpecifier(specifier) {
|
|
2633
|
+
if (!(match = re.exec(specifier))) throw new Error("invalid format: " + specifier);
|
|
2634
|
+
var match;
|
|
2635
|
+
return new FormatSpecifier({
|
|
2636
|
+
fill: match[1],
|
|
2637
|
+
align: match[2],
|
|
2638
|
+
sign: match[3],
|
|
2639
|
+
symbol: match[4],
|
|
2640
|
+
zero: match[5],
|
|
2641
|
+
width: match[6],
|
|
2642
|
+
comma: match[7],
|
|
2643
|
+
precision: match[8] && match[8].slice(1),
|
|
2644
|
+
trim: match[9],
|
|
2645
|
+
type: match[10]
|
|
2646
|
+
});
|
|
2647
|
+
}
|
|
2648
|
+
|
|
2649
|
+
formatSpecifier.prototype = FormatSpecifier.prototype; // instanceof
|
|
2650
|
+
|
|
2651
|
+
function FormatSpecifier(specifier) {
|
|
2652
|
+
this.fill = specifier.fill === undefined ? " " : specifier.fill + "";
|
|
2653
|
+
this.align = specifier.align === undefined ? ">" : specifier.align + "";
|
|
2654
|
+
this.sign = specifier.sign === undefined ? "-" : specifier.sign + "";
|
|
2655
|
+
this.symbol = specifier.symbol === undefined ? "" : specifier.symbol + "";
|
|
2656
|
+
this.zero = !!specifier.zero;
|
|
2657
|
+
this.width = specifier.width === undefined ? undefined : +specifier.width;
|
|
2658
|
+
this.comma = !!specifier.comma;
|
|
2659
|
+
this.precision = specifier.precision === undefined ? undefined : +specifier.precision;
|
|
2660
|
+
this.trim = !!specifier.trim;
|
|
2661
|
+
this.type = specifier.type === undefined ? "" : specifier.type + "";
|
|
2662
|
+
}
|
|
2663
|
+
|
|
2664
|
+
FormatSpecifier.prototype.toString = function() {
|
|
2665
|
+
return this.fill
|
|
2666
|
+
+ this.align
|
|
2667
|
+
+ this.sign
|
|
2668
|
+
+ this.symbol
|
|
2669
|
+
+ (this.zero ? "0" : "")
|
|
2670
|
+
+ (this.width === undefined ? "" : Math.max(1, this.width | 0))
|
|
2671
|
+
+ (this.comma ? "," : "")
|
|
2672
|
+
+ (this.precision === undefined ? "" : "." + Math.max(0, this.precision | 0))
|
|
2673
|
+
+ (this.trim ? "~" : "")
|
|
2674
|
+
+ this.type;
|
|
2675
|
+
};
|
|
2676
|
+
|
|
2677
|
+
// Trims insignificant zeros, e.g., replaces 1.2000k with 1.2k.
|
|
2678
|
+
function formatTrim(s) {
|
|
2679
|
+
out: for (var n = s.length, i = 1, i0 = -1, i1; i < n; ++i) {
|
|
2680
|
+
switch (s[i]) {
|
|
2681
|
+
case ".": i0 = i1 = i; break;
|
|
2682
|
+
case "0": if (i0 === 0) i0 = i; i1 = i; break;
|
|
2683
|
+
default: if (!+s[i]) break out; if (i0 > 0) i0 = 0; break;
|
|
2684
|
+
}
|
|
2685
|
+
}
|
|
2686
|
+
return i0 > 0 ? s.slice(0, i0) + s.slice(i1 + 1) : s;
|
|
2687
|
+
}
|
|
2688
|
+
|
|
2689
|
+
var prefixExponent;
|
|
2690
|
+
|
|
2691
|
+
function formatPrefixAuto(x, p) {
|
|
2692
|
+
var d = formatDecimalParts(x, p);
|
|
2693
|
+
if (!d) return x + "";
|
|
2694
|
+
var coefficient = d[0],
|
|
2695
|
+
exponent = d[1],
|
|
2696
|
+
i = exponent - (prefixExponent = Math.max(-8, Math.min(8, Math.floor(exponent / 3))) * 3) + 1,
|
|
2697
|
+
n = coefficient.length;
|
|
2698
|
+
return i === n ? coefficient
|
|
2699
|
+
: i > n ? coefficient + new Array(i - n + 1).join("0")
|
|
2700
|
+
: i > 0 ? coefficient.slice(0, i) + "." + coefficient.slice(i)
|
|
2701
|
+
: "0." + new Array(1 - i).join("0") + formatDecimalParts(x, Math.max(0, p + i - 1))[0]; // less than 1y!
|
|
2702
|
+
}
|
|
2703
|
+
|
|
2704
|
+
function formatRounded(x, p) {
|
|
2705
|
+
var d = formatDecimalParts(x, p);
|
|
2706
|
+
if (!d) return x + "";
|
|
2707
|
+
var coefficient = d[0],
|
|
2708
|
+
exponent = d[1];
|
|
2709
|
+
return exponent < 0 ? "0." + new Array(-exponent).join("0") + coefficient
|
|
2710
|
+
: coefficient.length > exponent + 1 ? coefficient.slice(0, exponent + 1) + "." + coefficient.slice(exponent + 1)
|
|
2711
|
+
: coefficient + new Array(exponent - coefficient.length + 2).join("0");
|
|
2712
|
+
}
|
|
2713
|
+
|
|
2714
|
+
var formatTypes = {
|
|
2715
|
+
"%": function(x, p) { return (x * 100).toFixed(p); },
|
|
2716
|
+
"b": function(x) { return Math.round(x).toString(2); },
|
|
2717
|
+
"c": function(x) { return x + ""; },
|
|
2718
|
+
"d": formatDecimal,
|
|
2719
|
+
"e": function(x, p) { return x.toExponential(p); },
|
|
2720
|
+
"f": function(x, p) { return x.toFixed(p); },
|
|
2721
|
+
"g": function(x, p) { return x.toPrecision(p); },
|
|
2722
|
+
"o": function(x) { return Math.round(x).toString(8); },
|
|
2723
|
+
"p": function(x, p) { return formatRounded(x * 100, p); },
|
|
2724
|
+
"r": formatRounded,
|
|
2725
|
+
"s": formatPrefixAuto,
|
|
2726
|
+
"X": function(x) { return Math.round(x).toString(16).toUpperCase(); },
|
|
2727
|
+
"x": function(x) { return Math.round(x).toString(16); }
|
|
2728
|
+
};
|
|
2729
|
+
|
|
2730
|
+
function identity(x) {
|
|
2731
|
+
return x;
|
|
2732
|
+
}
|
|
2733
|
+
|
|
2734
|
+
var map = Array.prototype.map,
|
|
2735
|
+
prefixes = ["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];
|
|
2736
|
+
|
|
2737
|
+
function formatLocale$1(locale) {
|
|
2738
|
+
var group = locale.grouping === undefined || locale.thousands === undefined ? identity : formatGroup(map.call(locale.grouping, Number), locale.thousands + ""),
|
|
2739
|
+
currencyPrefix = locale.currency === undefined ? "" : locale.currency[0] + "",
|
|
2740
|
+
currencySuffix = locale.currency === undefined ? "" : locale.currency[1] + "",
|
|
2741
|
+
decimal = locale.decimal === undefined ? "." : locale.decimal + "",
|
|
2742
|
+
numerals = locale.numerals === undefined ? identity : formatNumerals(map.call(locale.numerals, String)),
|
|
2743
|
+
percent = locale.percent === undefined ? "%" : locale.percent + "",
|
|
2744
|
+
minus = locale.minus === undefined ? "-" : locale.minus + "",
|
|
2745
|
+
nan = locale.nan === undefined ? "NaN" : locale.nan + "";
|
|
2746
|
+
|
|
2747
|
+
function newFormat(specifier) {
|
|
2748
|
+
specifier = formatSpecifier(specifier);
|
|
2749
|
+
|
|
2750
|
+
var fill = specifier.fill,
|
|
2751
|
+
align = specifier.align,
|
|
2752
|
+
sign = specifier.sign,
|
|
2753
|
+
symbol = specifier.symbol,
|
|
2754
|
+
zero = specifier.zero,
|
|
2755
|
+
width = specifier.width,
|
|
2756
|
+
comma = specifier.comma,
|
|
2757
|
+
precision = specifier.precision,
|
|
2758
|
+
trim = specifier.trim,
|
|
2759
|
+
type = specifier.type;
|
|
2760
|
+
|
|
2761
|
+
// The "n" type is an alias for ",g".
|
|
2762
|
+
if (type === "n") comma = true, type = "g";
|
|
2763
|
+
|
|
2764
|
+
// The "" type, and any invalid type, is an alias for ".12~g".
|
|
2765
|
+
else if (!formatTypes[type]) precision === undefined && (precision = 12), trim = true, type = "g";
|
|
2766
|
+
|
|
2767
|
+
// If zero fill is specified, padding goes after sign and before digits.
|
|
2768
|
+
if (zero || (fill === "0" && align === "=")) zero = true, fill = "0", align = "=";
|
|
2769
|
+
|
|
2770
|
+
// Compute the prefix and suffix.
|
|
2771
|
+
// For SI-prefix, the suffix is lazily computed.
|
|
2772
|
+
var prefix = symbol === "$" ? currencyPrefix : symbol === "#" && /[boxX]/.test(type) ? "0" + type.toLowerCase() : "",
|
|
2773
|
+
suffix = symbol === "$" ? currencySuffix : /[%p]/.test(type) ? percent : "";
|
|
2774
|
+
|
|
2775
|
+
// What format function should we use?
|
|
2776
|
+
// Is this an integer type?
|
|
2777
|
+
// Can this type generate exponential notation?
|
|
2778
|
+
var formatType = formatTypes[type],
|
|
2779
|
+
maybeSuffix = /[defgprs%]/.test(type);
|
|
2780
|
+
|
|
2781
|
+
// Set the default precision if not specified,
|
|
2782
|
+
// or clamp the specified precision to the supported range.
|
|
2783
|
+
// For significant precision, it must be in [1, 21].
|
|
2784
|
+
// For fixed precision, it must be in [0, 20].
|
|
2785
|
+
precision = precision === undefined ? 6
|
|
2786
|
+
: /[gprs]/.test(type) ? Math.max(1, Math.min(21, precision))
|
|
2787
|
+
: Math.max(0, Math.min(20, precision));
|
|
2788
|
+
|
|
2789
|
+
function format(value) {
|
|
2790
|
+
var valuePrefix = prefix,
|
|
2791
|
+
valueSuffix = suffix,
|
|
2792
|
+
i, n, c;
|
|
2793
|
+
|
|
2794
|
+
if (type === "c") {
|
|
2795
|
+
valueSuffix = formatType(value) + valueSuffix;
|
|
2796
|
+
value = "";
|
|
2797
|
+
} else {
|
|
2798
|
+
value = +value;
|
|
2799
|
+
|
|
2800
|
+
// Determine the sign. -0 is not less than 0, but 1 / -0 is!
|
|
2801
|
+
var valueNegative = value < 0 || 1 / value < 0;
|
|
2802
|
+
|
|
2803
|
+
// Perform the initial formatting.
|
|
2804
|
+
value = isNaN(value) ? nan : formatType(Math.abs(value), precision);
|
|
2805
|
+
|
|
2806
|
+
// Trim insignificant zeros.
|
|
2807
|
+
if (trim) value = formatTrim(value);
|
|
2808
|
+
|
|
2809
|
+
// If a negative value rounds to zero after formatting, and no explicit positive sign is requested, hide the sign.
|
|
2810
|
+
if (valueNegative && +value === 0 && sign !== "+") valueNegative = false;
|
|
2811
|
+
|
|
2812
|
+
// Compute the prefix and suffix.
|
|
2813
|
+
valuePrefix = (valueNegative ? (sign === "(" ? sign : minus) : sign === "-" || sign === "(" ? "" : sign) + valuePrefix;
|
|
2814
|
+
valueSuffix = (type === "s" ? prefixes[8 + prefixExponent / 3] : "") + valueSuffix + (valueNegative && sign === "(" ? ")" : "");
|
|
2815
|
+
|
|
2816
|
+
// Break the formatted value into the integer “value” part that can be
|
|
2817
|
+
// grouped, and fractional or exponential “suffix” part that is not.
|
|
2818
|
+
if (maybeSuffix) {
|
|
2819
|
+
i = -1, n = value.length;
|
|
2820
|
+
while (++i < n) {
|
|
2821
|
+
if (c = value.charCodeAt(i), 48 > c || c > 57) {
|
|
2822
|
+
valueSuffix = (c === 46 ? decimal + value.slice(i + 1) : value.slice(i)) + valueSuffix;
|
|
2823
|
+
value = value.slice(0, i);
|
|
2824
|
+
break;
|
|
2825
|
+
}
|
|
2826
|
+
}
|
|
2827
|
+
}
|
|
2828
|
+
}
|
|
2829
|
+
|
|
2830
|
+
// If the fill character is not "0", grouping is applied before padding.
|
|
2831
|
+
if (comma && !zero) value = group(value, Infinity);
|
|
2832
|
+
|
|
2833
|
+
// Compute the padding.
|
|
2834
|
+
var length = valuePrefix.length + value.length + valueSuffix.length,
|
|
2835
|
+
padding = length < width ? new Array(width - length + 1).join(fill) : "";
|
|
2836
|
+
|
|
2837
|
+
// If the fill character is "0", grouping is applied after padding.
|
|
2838
|
+
if (comma && zero) value = group(padding + value, padding.length ? width - valueSuffix.length : Infinity), padding = "";
|
|
2839
|
+
|
|
2840
|
+
// Reconstruct the final output based on the desired alignment.
|
|
2841
|
+
switch (align) {
|
|
2842
|
+
case "<": value = valuePrefix + value + valueSuffix + padding; break;
|
|
2843
|
+
case "=": value = valuePrefix + padding + value + valueSuffix; break;
|
|
2844
|
+
case "^": value = padding.slice(0, length = padding.length >> 1) + valuePrefix + value + valueSuffix + padding.slice(length); break;
|
|
2845
|
+
default: value = padding + valuePrefix + value + valueSuffix; break;
|
|
2846
|
+
}
|
|
2847
|
+
|
|
2848
|
+
return numerals(value);
|
|
2849
|
+
}
|
|
2850
|
+
|
|
2851
|
+
format.toString = function() {
|
|
2852
|
+
return specifier + "";
|
|
2853
|
+
};
|
|
2854
|
+
|
|
2855
|
+
return format;
|
|
2856
|
+
}
|
|
2857
|
+
|
|
2858
|
+
function formatPrefix(specifier, value) {
|
|
2859
|
+
var f = newFormat((specifier = formatSpecifier(specifier), specifier.type = "f", specifier)),
|
|
2860
|
+
e = Math.max(-8, Math.min(8, Math.floor(exponent(value) / 3))) * 3,
|
|
2861
|
+
k = Math.pow(10, -e),
|
|
2862
|
+
prefix = prefixes[8 + e / 3];
|
|
2863
|
+
return function(value) {
|
|
2864
|
+
return f(k * value) + prefix;
|
|
2865
|
+
};
|
|
2866
|
+
}
|
|
2867
|
+
|
|
2868
|
+
return {
|
|
2869
|
+
format: newFormat,
|
|
2870
|
+
formatPrefix: formatPrefix
|
|
2871
|
+
};
|
|
2872
|
+
}
|
|
2873
|
+
|
|
2874
|
+
var locale$1;
|
|
2875
|
+
var format;
|
|
2876
|
+
|
|
2877
|
+
defaultLocale$1({
|
|
2878
|
+
decimal: ".",
|
|
2879
|
+
thousands: ",",
|
|
2880
|
+
grouping: [3],
|
|
2881
|
+
currency: ["$", ""],
|
|
2882
|
+
minus: "-"
|
|
2883
|
+
});
|
|
2884
|
+
|
|
2885
|
+
function defaultLocale$1(definition) {
|
|
2886
|
+
locale$1 = formatLocale$1(definition);
|
|
2887
|
+
format = locale$1.format;
|
|
2888
|
+
locale$1.formatPrefix;
|
|
2889
|
+
return locale$1;
|
|
2890
|
+
}
|
|
2891
|
+
|
|
2569
2892
|
var t0 = new Date,
|
|
2570
2893
|
t1 = new Date;
|
|
2571
2894
|
|
|
@@ -4662,7 +4985,14 @@ var Timer = /** @class */ (function (_super) {
|
|
|
4662
4985
|
|
|
4663
4986
|
var formatter = utcFormat("%Y-%m-%dT%H:%M:%S.%LZ");
|
|
4664
4987
|
var parser = utcParse("%Y-%m-%dT%H:%M:%S.%LZ");
|
|
4665
|
-
var
|
|
4988
|
+
var d3FormatNum = format(",");
|
|
4989
|
+
function formatNum(num) {
|
|
4990
|
+
if (num && !isNaN(+num)) {
|
|
4991
|
+
return d3FormatNum(+num);
|
|
4992
|
+
}
|
|
4993
|
+
return num;
|
|
4994
|
+
}
|
|
4995
|
+
var logger$3 = scopedLogger("workunit.ts");
|
|
4666
4996
|
var WUStateID = WUStateID$1;
|
|
4667
4997
|
var WorkunitCache = /** @class */ (function (_super) {
|
|
4668
4998
|
__extends(WorkunitCache, _super);
|
|
@@ -5537,7 +5867,7 @@ var Workunit = /** @class */ (function (_super) {
|
|
|
5537
5867
|
default:
|
|
5538
5868
|
props[scopeProperty.Name] = scopeProperty.RawValue;
|
|
5539
5869
|
}
|
|
5540
|
-
formattedProps[scopeProperty.Name] = (_a = scopeProperty.Formatted) !== null && _a !== void 0 ? _a : props[scopeProperty.Name];
|
|
5870
|
+
formattedProps[scopeProperty.Name] = formatNum((_a = scopeProperty.Formatted) !== null && _a !== void 0 ? _a : props[scopeProperty.Name]);
|
|
5541
5871
|
}
|
|
5542
5872
|
}
|
|
5543
5873
|
data.push(__assign({ id: scope.Id, name: scope.ScopeName, type: scope.ScopeType, __formattedProps: formattedProps }, props));
|
|
@@ -5778,7 +6108,7 @@ var Workunit = /** @class */ (function (_super) {
|
|
|
5778
6108
|
return false;
|
|
5779
6109
|
});
|
|
5780
6110
|
if (!wuMissing) {
|
|
5781
|
-
logger$
|
|
6111
|
+
logger$3.warning("Unexpected exception: ");
|
|
5782
6112
|
throw e;
|
|
5783
6113
|
}
|
|
5784
6114
|
return {};
|
|
@@ -5815,7 +6145,7 @@ var Workunit = /** @class */ (function (_super) {
|
|
|
5815
6145
|
return false;
|
|
5816
6146
|
});
|
|
5817
6147
|
if (!wuMissing) {
|
|
5818
|
-
logger$
|
|
6148
|
+
logger$3.warning("Unexpected exception: ");
|
|
5819
6149
|
throw e;
|
|
5820
6150
|
}
|
|
5821
6151
|
return {};
|
|
@@ -5904,7 +6234,7 @@ var Workunit = /** @class */ (function (_super) {
|
|
|
5904
6234
|
}
|
|
5905
6235
|
return new XMLNode(command);
|
|
5906
6236
|
}).catch(function (_) {
|
|
5907
|
-
logger$
|
|
6237
|
+
logger$3.error(_);
|
|
5908
6238
|
return Promise.resolve(new XMLNode(command));
|
|
5909
6239
|
});
|
|
5910
6240
|
};
|
|
@@ -6723,776 +7053,843 @@ var Machine = /** @class */ (function (_super) {
|
|
|
6723
7053
|
return Machine;
|
|
6724
7054
|
}(StateObject));
|
|
6725
7055
|
|
|
6726
|
-
var
|
|
6727
|
-
__extends(
|
|
6728
|
-
function
|
|
7056
|
+
var TargetClusterCache = /** @class */ (function (_super) {
|
|
7057
|
+
__extends(TargetClusterCache, _super);
|
|
7058
|
+
function TargetClusterCache() {
|
|
6729
7059
|
return _super.call(this, function (obj) {
|
|
6730
|
-
return
|
|
7060
|
+
return "".concat(obj.BaseUrl, "-").concat(obj.Name);
|
|
6731
7061
|
}) || this;
|
|
6732
7062
|
}
|
|
6733
|
-
return
|
|
7063
|
+
return TargetClusterCache;
|
|
6734
7064
|
}(Cache));
|
|
6735
|
-
var
|
|
6736
|
-
var
|
|
6737
|
-
__extends(
|
|
6738
|
-
function
|
|
7065
|
+
var _targetCluster = new TargetClusterCache();
|
|
7066
|
+
var TargetCluster = /** @class */ (function (_super) {
|
|
7067
|
+
__extends(TargetCluster, _super);
|
|
7068
|
+
function TargetCluster(optsConnection, name) {
|
|
6739
7069
|
var _this = _super.call(this) || this;
|
|
6740
|
-
if (optsConnection instanceof
|
|
7070
|
+
if (optsConnection instanceof TopologyService) {
|
|
6741
7071
|
_this.connection = optsConnection;
|
|
6742
|
-
|
|
7072
|
+
_this.machineConnection = new MachineService(optsConnection.connectionOptions());
|
|
6743
7073
|
}
|
|
6744
7074
|
else {
|
|
6745
|
-
_this.connection = new
|
|
6746
|
-
|
|
7075
|
+
_this.connection = new TopologyService(optsConnection);
|
|
7076
|
+
_this.machineConnection = new MachineService(optsConnection);
|
|
6747
7077
|
}
|
|
6748
|
-
_this.
|
|
6749
|
-
|
|
7078
|
+
_this.clear({
|
|
7079
|
+
Name: name
|
|
7080
|
+
});
|
|
6750
7081
|
return _this;
|
|
6751
7082
|
}
|
|
6752
|
-
Object.defineProperty(
|
|
7083
|
+
Object.defineProperty(TargetCluster.prototype, "BaseUrl", {
|
|
6753
7084
|
get: function () { return this.connection.baseUrl; },
|
|
6754
7085
|
enumerable: false,
|
|
6755
7086
|
configurable: true
|
|
6756
7087
|
});
|
|
6757
|
-
Object.defineProperty(
|
|
6758
|
-
get: function () { return this.get(); },
|
|
6759
|
-
enumerable: false,
|
|
6760
|
-
configurable: true
|
|
6761
|
-
});
|
|
6762
|
-
Object.defineProperty(Query.prototype, "Exceptions", {
|
|
6763
|
-
get: function () { return this.get("Exceptions"); },
|
|
6764
|
-
enumerable: false,
|
|
6765
|
-
configurable: true
|
|
6766
|
-
});
|
|
6767
|
-
Object.defineProperty(Query.prototype, "QueryId", {
|
|
6768
|
-
get: function () { return this.get("QueryId"); },
|
|
6769
|
-
enumerable: false,
|
|
6770
|
-
configurable: true
|
|
6771
|
-
});
|
|
6772
|
-
Object.defineProperty(Query.prototype, "QuerySet", {
|
|
6773
|
-
get: function () { return this.get("QuerySet"); },
|
|
6774
|
-
enumerable: false,
|
|
6775
|
-
configurable: true
|
|
6776
|
-
});
|
|
6777
|
-
Object.defineProperty(Query.prototype, "QueryName", {
|
|
6778
|
-
get: function () { return this.get("QueryName"); },
|
|
6779
|
-
enumerable: false,
|
|
6780
|
-
configurable: true
|
|
6781
|
-
});
|
|
6782
|
-
Object.defineProperty(Query.prototype, "Wuid", {
|
|
6783
|
-
get: function () { return this.get("Wuid"); },
|
|
6784
|
-
enumerable: false,
|
|
6785
|
-
configurable: true
|
|
6786
|
-
});
|
|
6787
|
-
Object.defineProperty(Query.prototype, "Dll", {
|
|
6788
|
-
get: function () { return this.get("Dll"); },
|
|
6789
|
-
enumerable: false,
|
|
6790
|
-
configurable: true
|
|
6791
|
-
});
|
|
6792
|
-
Object.defineProperty(Query.prototype, "Suspended", {
|
|
6793
|
-
get: function () { return this.get("Suspended"); },
|
|
6794
|
-
enumerable: false,
|
|
6795
|
-
configurable: true
|
|
6796
|
-
});
|
|
6797
|
-
Object.defineProperty(Query.prototype, "Activated", {
|
|
6798
|
-
get: function () { return this.get("Activated"); },
|
|
6799
|
-
enumerable: false,
|
|
6800
|
-
configurable: true
|
|
6801
|
-
});
|
|
6802
|
-
Object.defineProperty(Query.prototype, "SuspendedBy", {
|
|
6803
|
-
get: function () { return this.get("SuspendedBy"); },
|
|
6804
|
-
enumerable: false,
|
|
6805
|
-
configurable: true
|
|
6806
|
-
});
|
|
6807
|
-
Object.defineProperty(Query.prototype, "Clusters", {
|
|
6808
|
-
get: function () { return this.get("Clusters"); },
|
|
6809
|
-
enumerable: false,
|
|
6810
|
-
configurable: true
|
|
6811
|
-
});
|
|
6812
|
-
Object.defineProperty(Query.prototype, "PublishedBy", {
|
|
6813
|
-
get: function () { return this.get("PublishedBy"); },
|
|
6814
|
-
enumerable: false,
|
|
6815
|
-
configurable: true
|
|
6816
|
-
});
|
|
6817
|
-
Object.defineProperty(Query.prototype, "Comment", {
|
|
6818
|
-
get: function () { return this.get("Comment"); },
|
|
6819
|
-
enumerable: false,
|
|
6820
|
-
configurable: true
|
|
6821
|
-
});
|
|
6822
|
-
Object.defineProperty(Query.prototype, "LogicalFiles", {
|
|
6823
|
-
get: function () { return this.get("LogicalFiles"); },
|
|
6824
|
-
enumerable: false,
|
|
6825
|
-
configurable: true
|
|
6826
|
-
});
|
|
6827
|
-
Object.defineProperty(Query.prototype, "SuperFiles", {
|
|
6828
|
-
get: function () { return this.get("SuperFiles"); },
|
|
7088
|
+
Object.defineProperty(TargetCluster.prototype, "Name", {
|
|
7089
|
+
get: function () { return this.get("Name"); },
|
|
6829
7090
|
enumerable: false,
|
|
6830
7091
|
configurable: true
|
|
6831
7092
|
});
|
|
6832
|
-
Object.defineProperty(
|
|
6833
|
-
get: function () { return this.get("
|
|
7093
|
+
Object.defineProperty(TargetCluster.prototype, "Prefix", {
|
|
7094
|
+
get: function () { return this.get("Prefix"); },
|
|
6834
7095
|
enumerable: false,
|
|
6835
7096
|
configurable: true
|
|
6836
7097
|
});
|
|
6837
|
-
Object.defineProperty(
|
|
6838
|
-
get: function () { return this.get("
|
|
7098
|
+
Object.defineProperty(TargetCluster.prototype, "Type", {
|
|
7099
|
+
get: function () { return this.get("Type"); },
|
|
6839
7100
|
enumerable: false,
|
|
6840
7101
|
configurable: true
|
|
6841
7102
|
});
|
|
6842
|
-
Object.defineProperty(
|
|
6843
|
-
get: function () { return this.get("
|
|
7103
|
+
Object.defineProperty(TargetCluster.prototype, "IsDefault", {
|
|
7104
|
+
get: function () { return this.get("IsDefault"); },
|
|
6844
7105
|
enumerable: false,
|
|
6845
7106
|
configurable: true
|
|
6846
7107
|
});
|
|
6847
|
-
Object.defineProperty(
|
|
6848
|
-
get: function () { return this.get("
|
|
7108
|
+
Object.defineProperty(TargetCluster.prototype, "TpClusters", {
|
|
7109
|
+
get: function () { return this.get("TpClusters"); },
|
|
6849
7110
|
enumerable: false,
|
|
6850
7111
|
configurable: true
|
|
6851
7112
|
});
|
|
6852
|
-
Object.defineProperty(
|
|
6853
|
-
get: function () { return this.get("
|
|
7113
|
+
Object.defineProperty(TargetCluster.prototype, "TpEclCCServers", {
|
|
7114
|
+
get: function () { return this.get("TpEclCCServers"); },
|
|
6854
7115
|
enumerable: false,
|
|
6855
7116
|
configurable: true
|
|
6856
7117
|
});
|
|
6857
|
-
Object.defineProperty(
|
|
6858
|
-
get: function () { return this.get("
|
|
7118
|
+
Object.defineProperty(TargetCluster.prototype, "TpEclServers", {
|
|
7119
|
+
get: function () { return this.get("TpEclServers"); },
|
|
6859
7120
|
enumerable: false,
|
|
6860
7121
|
configurable: true
|
|
6861
7122
|
});
|
|
6862
|
-
Object.defineProperty(
|
|
6863
|
-
get: function () { return this.get("
|
|
7123
|
+
Object.defineProperty(TargetCluster.prototype, "TpEclAgents", {
|
|
7124
|
+
get: function () { return this.get("TpEclAgents"); },
|
|
6864
7125
|
enumerable: false,
|
|
6865
7126
|
configurable: true
|
|
6866
7127
|
});
|
|
6867
|
-
Object.defineProperty(
|
|
6868
|
-
get: function () { return this.get("
|
|
7128
|
+
Object.defineProperty(TargetCluster.prototype, "TpEclSchedulers", {
|
|
7129
|
+
get: function () { return this.get("TpEclSchedulers"); },
|
|
6869
7130
|
enumerable: false,
|
|
6870
7131
|
configurable: true
|
|
6871
7132
|
});
|
|
6872
|
-
Object.defineProperty(
|
|
6873
|
-
get: function () { return this.get("
|
|
7133
|
+
Object.defineProperty(TargetCluster.prototype, "MachineInfoEx", {
|
|
7134
|
+
get: function () { return this.get("MachineInfoEx", []); },
|
|
6874
7135
|
enumerable: false,
|
|
6875
7136
|
configurable: true
|
|
6876
7137
|
});
|
|
6877
|
-
Object.defineProperty(
|
|
6878
|
-
get: function () {
|
|
7138
|
+
Object.defineProperty(TargetCluster.prototype, "CMachineInfoEx", {
|
|
7139
|
+
get: function () {
|
|
7140
|
+
var _this = this;
|
|
7141
|
+
return this.MachineInfoEx.map(function (machineInfoEx) { return Machine.attach(_this.machineConnection, machineInfoEx.Address, machineInfoEx); });
|
|
7142
|
+
},
|
|
6879
7143
|
enumerable: false,
|
|
6880
7144
|
configurable: true
|
|
6881
7145
|
});
|
|
6882
|
-
|
|
6883
|
-
var retVal =
|
|
6884
|
-
return new
|
|
7146
|
+
TargetCluster.attach = function (optsConnection, name, state) {
|
|
7147
|
+
var retVal = _targetCluster.get({ BaseUrl: optsConnection.baseUrl, Name: name }, function () {
|
|
7148
|
+
return new TargetCluster(optsConnection, name);
|
|
6885
7149
|
});
|
|
7150
|
+
if (state) {
|
|
7151
|
+
retVal.set(__assign({}, state));
|
|
7152
|
+
}
|
|
6886
7153
|
return retVal;
|
|
6887
7154
|
};
|
|
6888
|
-
|
|
6889
|
-
|
|
6890
|
-
|
|
6891
|
-
|
|
6892
|
-
|
|
6893
|
-
|
|
6894
|
-
|
|
6895
|
-
|
|
6896
|
-
|
|
6897
|
-
|
|
6898
|
-
|
|
6899
|
-
|
|
6900
|
-
})];
|
|
6901
|
-
case 1:
|
|
6902
|
-
queryDetails = _a.sent();
|
|
6903
|
-
this.set(__assign({}, queryDetails));
|
|
6904
|
-
return [2 /*return*/];
|
|
6905
|
-
}
|
|
6906
|
-
});
|
|
6907
|
-
});
|
|
6908
|
-
};
|
|
6909
|
-
Query.prototype.fetchRequestSchema = function () {
|
|
6910
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
6911
|
-
var _a;
|
|
6912
|
-
return __generator(this, function (_b) {
|
|
6913
|
-
switch (_b.label) {
|
|
6914
|
-
case 0:
|
|
6915
|
-
_a = this;
|
|
6916
|
-
return [4 /*yield*/, this.connection.requestJson(this.QuerySet, this.QueryId)];
|
|
6917
|
-
case 1:
|
|
6918
|
-
_a._requestSchema = _b.sent();
|
|
6919
|
-
return [2 /*return*/];
|
|
7155
|
+
TargetCluster.prototype.fetchMachines = function (request) {
|
|
7156
|
+
var _this = this;
|
|
7157
|
+
if (request === void 0) { request = {}; }
|
|
7158
|
+
return this.machineConnection.GetTargetClusterInfo(__assign({ TargetClusters: {
|
|
7159
|
+
Item: ["".concat(this.Type, ":").concat(this.Name)]
|
|
7160
|
+
} }, request)).then(function (response) {
|
|
7161
|
+
var retVal = [];
|
|
7162
|
+
for (var _i = 0, _a = response.TargetClusterInfoList.TargetClusterInfo; _i < _a.length; _i++) {
|
|
7163
|
+
var machineInfo = _a[_i];
|
|
7164
|
+
for (var _b = 0, _c = machineInfo.Processes.MachineInfoEx; _b < _c.length; _b++) {
|
|
7165
|
+
var machineInfoEx = _c[_b];
|
|
7166
|
+
retVal.push(machineInfoEx);
|
|
6920
7167
|
}
|
|
6921
|
-
}
|
|
7168
|
+
}
|
|
7169
|
+
_this.set("MachineInfoEx", retVal);
|
|
7170
|
+
return _this.CMachineInfoEx;
|
|
6922
7171
|
});
|
|
6923
7172
|
};
|
|
6924
|
-
|
|
6925
|
-
|
|
6926
|
-
|
|
6927
|
-
|
|
6928
|
-
|
|
6929
|
-
|
|
6930
|
-
|
|
6931
|
-
|
|
6932
|
-
|
|
6933
|
-
|
|
6934
|
-
|
|
6935
|
-
|
|
6936
|
-
|
|
6937
|
-
});
|
|
6938
|
-
};
|
|
6939
|
-
Query.prototype.fetchSchema = function () {
|
|
6940
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
6941
|
-
return __generator(this, function (_a) {
|
|
6942
|
-
switch (_a.label) {
|
|
6943
|
-
case 0: return [4 /*yield*/, Promise.all([this.fetchRequestSchema(), this.fetchResponseSchema()])];
|
|
6944
|
-
case 1:
|
|
6945
|
-
_a.sent();
|
|
6946
|
-
return [2 /*return*/];
|
|
7173
|
+
TargetCluster.prototype.machineStats = function () {
|
|
7174
|
+
var maxDisk = 0;
|
|
7175
|
+
var totalFree = 0;
|
|
7176
|
+
var total = 0;
|
|
7177
|
+
for (var _i = 0, _a = this.CMachineInfoEx; _i < _a.length; _i++) {
|
|
7178
|
+
var machine = _a[_i];
|
|
7179
|
+
for (var _b = 0, _c = machine.Storage.StorageInfo; _b < _c.length; _b++) {
|
|
7180
|
+
var storageInfo = _c[_b];
|
|
7181
|
+
totalFree += storageInfo.Available;
|
|
7182
|
+
total += storageInfo.Total;
|
|
7183
|
+
var usage = 1 - storageInfo.Available / storageInfo.Total;
|
|
7184
|
+
if (usage > maxDisk) {
|
|
7185
|
+
maxDisk = usage;
|
|
6947
7186
|
}
|
|
6948
|
-
});
|
|
6949
|
-
});
|
|
6950
|
-
};
|
|
6951
|
-
Query.prototype.fetchSummaryStats = function () {
|
|
6952
|
-
return this._wsWorkunits.WUQueryGetSummaryStats({ Target: this.QuerySet, QueryId: this.QueryId });
|
|
6953
|
-
};
|
|
6954
|
-
Query.prototype.submit = function (request) {
|
|
6955
|
-
return this.connection.submit(this.QuerySet, this.QueryId, request).then(function (results) {
|
|
6956
|
-
for (var key in results) {
|
|
6957
|
-
results[key] = results[key].Row;
|
|
6958
7187
|
}
|
|
6959
|
-
return results;
|
|
6960
|
-
});
|
|
6961
|
-
};
|
|
6962
|
-
Query.prototype.refresh = function () {
|
|
6963
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
6964
|
-
return __generator(this, function (_a) {
|
|
6965
|
-
switch (_a.label) {
|
|
6966
|
-
case 0: return [4 /*yield*/, Promise.all([
|
|
6967
|
-
this.fetchDetails(),
|
|
6968
|
-
this.fetchSchema()
|
|
6969
|
-
])];
|
|
6970
|
-
case 1:
|
|
6971
|
-
_a.sent();
|
|
6972
|
-
return [2 /*return*/, this];
|
|
6973
|
-
}
|
|
6974
|
-
});
|
|
6975
|
-
});
|
|
6976
|
-
};
|
|
6977
|
-
Query.prototype.requestFields = function () {
|
|
6978
|
-
if (!this._requestSchema)
|
|
6979
|
-
return [];
|
|
6980
|
-
return this._requestSchema;
|
|
6981
|
-
};
|
|
6982
|
-
Query.prototype.responseFields = function () {
|
|
6983
|
-
if (!this._responseSchema)
|
|
6984
|
-
return {};
|
|
6985
|
-
return this._responseSchema;
|
|
6986
|
-
};
|
|
6987
|
-
Query.prototype.resultNames = function () {
|
|
6988
|
-
var retVal = [];
|
|
6989
|
-
for (var key in this.responseFields()) {
|
|
6990
|
-
retVal.push(key);
|
|
6991
7188
|
}
|
|
6992
|
-
return
|
|
7189
|
+
return {
|
|
7190
|
+
maxDisk: maxDisk,
|
|
7191
|
+
meanDisk: 1 - (total ? totalFree / total : 1)
|
|
7192
|
+
};
|
|
6993
7193
|
};
|
|
6994
|
-
|
|
6995
|
-
|
|
6996
|
-
return [];
|
|
6997
|
-
return this._responseSchema[resultName];
|
|
7194
|
+
TargetCluster.prototype.fetchUsage = function () {
|
|
7195
|
+
return this.machineConnection.GetTargetClusterUsageEx([this.Name]);
|
|
6998
7196
|
};
|
|
6999
|
-
return
|
|
7197
|
+
return TargetCluster;
|
|
7000
7198
|
}(StateObject));
|
|
7199
|
+
function targetClusters(optsConnection) {
|
|
7200
|
+
var connection;
|
|
7201
|
+
if (optsConnection instanceof TopologyService) {
|
|
7202
|
+
connection = optsConnection;
|
|
7203
|
+
}
|
|
7204
|
+
else {
|
|
7205
|
+
connection = new TopologyService(optsConnection);
|
|
7206
|
+
}
|
|
7207
|
+
return connection.TpListTargetClusters({}).then(function (response) {
|
|
7208
|
+
return response.TargetClusters.TpClusterNameType.map(function (item) { return TargetCluster.attach(optsConnection, item.Name, item); });
|
|
7209
|
+
});
|
|
7210
|
+
}
|
|
7211
|
+
var _defaultTargetCluster = {};
|
|
7212
|
+
function defaultTargetCluster(optsConnection) {
|
|
7213
|
+
if (!_defaultTargetCluster[optsConnection.baseUrl]) {
|
|
7214
|
+
var connection = void 0;
|
|
7215
|
+
if (optsConnection instanceof TopologyService) {
|
|
7216
|
+
connection = optsConnection;
|
|
7217
|
+
}
|
|
7218
|
+
else {
|
|
7219
|
+
connection = new TopologyService(optsConnection);
|
|
7220
|
+
}
|
|
7221
|
+
_defaultTargetCluster[optsConnection.baseUrl] = connection.TpListTargetClusters({}).then(function (response) {
|
|
7222
|
+
var firstItem;
|
|
7223
|
+
var defaultItem;
|
|
7224
|
+
var hthorItem;
|
|
7225
|
+
response.TargetClusters.TpClusterNameType.forEach(function (item) {
|
|
7226
|
+
if (!firstItem) {
|
|
7227
|
+
firstItem = item;
|
|
7228
|
+
}
|
|
7229
|
+
if (!defaultItem && item.IsDefault === true) {
|
|
7230
|
+
defaultItem = item;
|
|
7231
|
+
}
|
|
7232
|
+
if (!hthorItem && item.Type === "hthor") {
|
|
7233
|
+
hthorItem = item;
|
|
7234
|
+
}
|
|
7235
|
+
});
|
|
7236
|
+
var defItem = defaultItem || hthorItem || firstItem;
|
|
7237
|
+
return TargetCluster.attach(optsConnection, defItem.Name, defItem);
|
|
7238
|
+
});
|
|
7239
|
+
}
|
|
7240
|
+
return _defaultTargetCluster[optsConnection.baseUrl];
|
|
7241
|
+
}
|
|
7001
7242
|
|
|
7002
|
-
var
|
|
7003
|
-
__extends(
|
|
7004
|
-
function
|
|
7243
|
+
var TopologyCache = /** @class */ (function (_super) {
|
|
7244
|
+
__extends(TopologyCache, _super);
|
|
7245
|
+
function TopologyCache() {
|
|
7005
7246
|
return _super.call(this, function (obj) {
|
|
7006
|
-
return
|
|
7247
|
+
return obj.BaseUrl;
|
|
7007
7248
|
}) || this;
|
|
7008
7249
|
}
|
|
7009
|
-
return
|
|
7250
|
+
return TopologyCache;
|
|
7010
7251
|
}(Cache));
|
|
7011
|
-
var
|
|
7012
|
-
var
|
|
7013
|
-
__extends(
|
|
7014
|
-
function
|
|
7252
|
+
var _topology = new TopologyCache();
|
|
7253
|
+
var Topology = /** @class */ (function (_super) {
|
|
7254
|
+
__extends(Topology, _super);
|
|
7255
|
+
function Topology(optsConnection) {
|
|
7015
7256
|
var _this = _super.call(this) || this;
|
|
7016
|
-
|
|
7017
|
-
|
|
7018
|
-
_this.oldValue = oldValue;
|
|
7019
|
-
return _this;
|
|
7020
|
-
}
|
|
7021
|
-
Object.defineProperty(ValueChangedMessage.prototype, "canConflate", {
|
|
7022
|
-
get: function () { return true; },
|
|
7023
|
-
enumerable: false,
|
|
7024
|
-
configurable: true
|
|
7025
|
-
});
|
|
7026
|
-
ValueChangedMessage.prototype.conflate = function (other) {
|
|
7027
|
-
if (this.key === other.key) {
|
|
7028
|
-
this.value = other.value;
|
|
7029
|
-
return true;
|
|
7030
|
-
}
|
|
7031
|
-
return false;
|
|
7032
|
-
};
|
|
7033
|
-
ValueChangedMessage.prototype.void = function () {
|
|
7034
|
-
return this.value === this.oldValue;
|
|
7035
|
-
};
|
|
7036
|
-
return ValueChangedMessage;
|
|
7037
|
-
}(Message));
|
|
7038
|
-
var Store = /** @class */ (function () {
|
|
7039
|
-
function Store(optsConnection, Name, Namespace, UserSpecific) {
|
|
7040
|
-
this._dispatch = new Dispatch();
|
|
7041
|
-
this._knownValues = {};
|
|
7042
|
-
if (optsConnection instanceof StoreService) {
|
|
7043
|
-
this.connection = optsConnection;
|
|
7257
|
+
if (optsConnection instanceof TopologyService) {
|
|
7258
|
+
_this.connection = optsConnection;
|
|
7044
7259
|
}
|
|
7045
7260
|
else {
|
|
7046
|
-
|
|
7261
|
+
_this.connection = new TopologyService(optsConnection);
|
|
7047
7262
|
}
|
|
7048
|
-
|
|
7049
|
-
this.UserSpecific = UserSpecific;
|
|
7050
|
-
this.Namespace = Namespace;
|
|
7263
|
+
return _this;
|
|
7051
7264
|
}
|
|
7052
|
-
Object.defineProperty(
|
|
7265
|
+
Object.defineProperty(Topology.prototype, "BaseUrl", {
|
|
7053
7266
|
get: function () { return this.connection.baseUrl; },
|
|
7054
7267
|
enumerable: false,
|
|
7055
7268
|
configurable: true
|
|
7056
7269
|
});
|
|
7057
|
-
|
|
7058
|
-
|
|
7059
|
-
|
|
7060
|
-
|
|
7061
|
-
|
|
7270
|
+
Object.defineProperty(Topology.prototype, "properties", {
|
|
7271
|
+
// Accessors ---
|
|
7272
|
+
get: function () { return this.get(); },
|
|
7273
|
+
enumerable: false,
|
|
7274
|
+
configurable: true
|
|
7275
|
+
});
|
|
7276
|
+
Object.defineProperty(Topology.prototype, "TargetClusters", {
|
|
7277
|
+
get: function () { return this.get("TargetClusters"); },
|
|
7278
|
+
enumerable: false,
|
|
7279
|
+
configurable: true
|
|
7280
|
+
});
|
|
7281
|
+
Object.defineProperty(Topology.prototype, "CTargetClusters", {
|
|
7282
|
+
get: function () {
|
|
7283
|
+
var _this = this;
|
|
7284
|
+
return this.TargetClusters.map(function (tc) { return TargetCluster.attach(_this.connection, tc.Name, tc); });
|
|
7285
|
+
},
|
|
7286
|
+
enumerable: false,
|
|
7287
|
+
configurable: true
|
|
7288
|
+
});
|
|
7289
|
+
Object.defineProperty(Topology.prototype, "LogicalClusters", {
|
|
7290
|
+
get: function () { return this.get("LogicalClusters"); },
|
|
7291
|
+
enumerable: false,
|
|
7292
|
+
configurable: true
|
|
7293
|
+
});
|
|
7294
|
+
Object.defineProperty(Topology.prototype, "Services", {
|
|
7295
|
+
get: function () { return this.get("Services"); },
|
|
7296
|
+
enumerable: false,
|
|
7297
|
+
configurable: true
|
|
7298
|
+
});
|
|
7299
|
+
Topology.attach = function (optsConnection) {
|
|
7300
|
+
var retVal = _topology.get({ BaseUrl: optsConnection.baseUrl }, function () {
|
|
7301
|
+
return new Topology(optsConnection);
|
|
7062
7302
|
});
|
|
7063
7303
|
return retVal;
|
|
7064
7304
|
};
|
|
7065
|
-
|
|
7066
|
-
this.connection.CreateStore({ Name: this.Name, UserSpecific: this.UserSpecific, Type: "", Description: "" });
|
|
7067
|
-
};
|
|
7068
|
-
Store.prototype.set = function (key, value, broadcast) {
|
|
7305
|
+
Topology.prototype.GetESPServiceBaseURL = function (type) {
|
|
7069
7306
|
var _this = this;
|
|
7070
|
-
if (
|
|
7071
|
-
return this.connection.
|
|
7072
|
-
|
|
7073
|
-
|
|
7074
|
-
|
|
7075
|
-
|
|
7076
|
-
|
|
7077
|
-
|
|
7078
|
-
|
|
7079
|
-
|
|
7080
|
-
|
|
7081
|
-
|
|
7307
|
+
if (type === void 0) { type = ""; }
|
|
7308
|
+
return this.connection.TpServiceQuery({}).then(function (response) {
|
|
7309
|
+
var rootProtocol = _this.connection.protocol();
|
|
7310
|
+
var ip = _this.connection.ip();
|
|
7311
|
+
var port = rootProtocol === "https:" ? "18002" : "8002";
|
|
7312
|
+
if (exists("ServiceList.TpEspServers.TpEspServer", response)) {
|
|
7313
|
+
for (var _i = 0, _a = response.ServiceList.TpEspServers.TpEspServer; _i < _a.length; _i++) {
|
|
7314
|
+
var item = _a[_i];
|
|
7315
|
+
if (exists("TpBindings.TpBinding", item)) {
|
|
7316
|
+
for (var _b = 0, _c = item.TpBindings.TpBinding; _b < _c.length; _b++) {
|
|
7317
|
+
var binding = _c[_b];
|
|
7318
|
+
if (binding.Service === type && binding.Protocol + ":" === rootProtocol) {
|
|
7319
|
+
port = binding.Port;
|
|
7320
|
+
}
|
|
7321
|
+
}
|
|
7322
|
+
}
|
|
7323
|
+
}
|
|
7082
7324
|
}
|
|
7083
|
-
|
|
7084
|
-
console.error("Store.set(\"".concat(key, "\", \"").concat(value, "\") failed:"), e);
|
|
7325
|
+
return "".concat(rootProtocol, "//").concat(ip, ":").concat(port, "/");
|
|
7085
7326
|
});
|
|
7086
7327
|
};
|
|
7087
|
-
|
|
7328
|
+
Topology.prototype.fetchTargetClusters = function () {
|
|
7088
7329
|
var _this = this;
|
|
7089
|
-
|
|
7090
|
-
|
|
7091
|
-
|
|
7092
|
-
|
|
7093
|
-
|
|
7094
|
-
|
|
7095
|
-
}).then(function (response) {
|
|
7096
|
-
var oldValue = _this._knownValues[key];
|
|
7097
|
-
_this._knownValues[key] = response.Value;
|
|
7098
|
-
if (broadcast) {
|
|
7099
|
-
_this._dispatch.post(new ValueChangedMessage(key, response.Value, oldValue));
|
|
7100
|
-
}
|
|
7101
|
-
return response.Value;
|
|
7102
|
-
}).catch(function (e) {
|
|
7103
|
-
console.error("Store.get(".concat(key, ") failed:"), e);
|
|
7104
|
-
return undefined;
|
|
7330
|
+
return this.connection.TpTargetClusterQuery({ Type: "ROOT" }).then(function (response) {
|
|
7331
|
+
var _a, _b;
|
|
7332
|
+
_this.set({
|
|
7333
|
+
TargetClusters: (_b = (_a = response.TpTargetClusters) === null || _a === void 0 ? void 0 : _a.TpTargetCluster) !== null && _b !== void 0 ? _b : []
|
|
7334
|
+
});
|
|
7335
|
+
return _this.CTargetClusters;
|
|
7105
7336
|
});
|
|
7106
7337
|
};
|
|
7107
|
-
|
|
7338
|
+
Topology.prototype.fetchLogicalClusters = function (request) {
|
|
7108
7339
|
var _this = this;
|
|
7109
|
-
if (
|
|
7110
|
-
return this.connection.
|
|
7111
|
-
|
|
7112
|
-
|
|
7113
|
-
Namespace: this.Namespace
|
|
7114
|
-
}).then(function (response) {
|
|
7115
|
-
var retVal = {};
|
|
7116
|
-
var deletedValues = _this._knownValues;
|
|
7117
|
-
_this._knownValues = {};
|
|
7118
|
-
response.Pairs.Pair.forEach(function (pair) {
|
|
7119
|
-
var oldValue = _this._knownValues[pair.Key];
|
|
7120
|
-
_this._knownValues[pair.Key] = pair.Value;
|
|
7121
|
-
delete deletedValues[pair.Key];
|
|
7122
|
-
retVal[pair.Key] = pair.Value;
|
|
7123
|
-
if (broadcast) {
|
|
7124
|
-
_this._dispatch.post(new ValueChangedMessage(pair.Key, pair.Value, oldValue));
|
|
7125
|
-
}
|
|
7340
|
+
if (request === void 0) { request = {}; }
|
|
7341
|
+
return this.connection.TpLogicalClusterQuery(request).then(function (response) {
|
|
7342
|
+
_this.set({
|
|
7343
|
+
LogicalClusters: response.TpLogicalClusters.TpLogicalCluster
|
|
7126
7344
|
});
|
|
7127
|
-
|
|
7128
|
-
for (var key in deletedValues) {
|
|
7129
|
-
_this._dispatch.post(new ValueChangedMessage(key, undefined, deletedValues[key]));
|
|
7130
|
-
}
|
|
7131
|
-
}
|
|
7132
|
-
return retVal;
|
|
7133
|
-
}).catch(function (e) {
|
|
7134
|
-
console.error("Store.getAll failed:", e);
|
|
7135
|
-
return {};
|
|
7345
|
+
return _this.LogicalClusters;
|
|
7136
7346
|
});
|
|
7137
7347
|
};
|
|
7138
|
-
|
|
7348
|
+
Topology.prototype.fetchServices = function (request) {
|
|
7139
7349
|
var _this = this;
|
|
7140
|
-
if (
|
|
7141
|
-
return this.connection.
|
|
7142
|
-
|
|
7143
|
-
|
|
7144
|
-
|
|
7145
|
-
|
|
7146
|
-
}).then(function (response) {
|
|
7147
|
-
var oldValue = _this._knownValues[key];
|
|
7148
|
-
delete _this._knownValues[key];
|
|
7149
|
-
if (broadcast) {
|
|
7150
|
-
_this._dispatch.post(new ValueChangedMessage(key, undefined, oldValue));
|
|
7151
|
-
}
|
|
7152
|
-
}).catch(function (e) {
|
|
7153
|
-
console.error("Store.delete(".concat(key, ") failed:"), e);
|
|
7350
|
+
if (request === void 0) { request = {}; }
|
|
7351
|
+
return this.connection.TpServiceQuery(request).then(function (response) {
|
|
7352
|
+
_this.set({
|
|
7353
|
+
Services: response.ServiceList
|
|
7354
|
+
});
|
|
7355
|
+
return _this.Services;
|
|
7154
7356
|
});
|
|
7155
7357
|
};
|
|
7156
|
-
|
|
7157
|
-
|
|
7358
|
+
Topology.prototype.refresh = function (force) {
|
|
7359
|
+
var _this = this;
|
|
7360
|
+
if (force === void 0) { force = false; }
|
|
7361
|
+
if (!this._prevRefresh || force) {
|
|
7362
|
+
this._prevRefresh = Promise.all([this.fetchTargetClusters(), this.fetchLogicalClusters(), this.fetchServices()]).then(function () {
|
|
7363
|
+
return _this;
|
|
7364
|
+
});
|
|
7365
|
+
}
|
|
7366
|
+
return this._prevRefresh;
|
|
7158
7367
|
};
|
|
7159
|
-
|
|
7160
|
-
|
|
7368
|
+
// Monitoring ---
|
|
7369
|
+
// Events ---
|
|
7370
|
+
Topology.prototype.on = function (eventID, propIDorCallback, callback) {
|
|
7371
|
+
if (this.isCallback(propIDorCallback)) {
|
|
7372
|
+
switch (eventID) {
|
|
7373
|
+
case "changed":
|
|
7374
|
+
_super.prototype.on.call(this, eventID, propIDorCallback);
|
|
7375
|
+
break;
|
|
7376
|
+
}
|
|
7377
|
+
}
|
|
7378
|
+
else {
|
|
7379
|
+
switch (eventID) {
|
|
7380
|
+
case "changed":
|
|
7381
|
+
_super.prototype.on.call(this, eventID, propIDorCallback, callback);
|
|
7382
|
+
break;
|
|
7383
|
+
}
|
|
7384
|
+
}
|
|
7385
|
+
this._monitor();
|
|
7386
|
+
return this;
|
|
7387
|
+
};
|
|
7388
|
+
return Topology;
|
|
7389
|
+
}(StateObject));
|
|
7161
7390
|
|
|
7162
|
-
var
|
|
7163
|
-
|
|
7164
|
-
|
|
7391
|
+
var logger$2 = scopedLogger("@hpcc-js/comms/ecl/query.ts");
|
|
7392
|
+
var QueryCache = /** @class */ (function (_super) {
|
|
7393
|
+
__extends(QueryCache, _super);
|
|
7394
|
+
function QueryCache() {
|
|
7165
7395
|
return _super.call(this, function (obj) {
|
|
7166
|
-
return
|
|
7396
|
+
return Cache.hash([obj.QueryId, obj.QuerySet]);
|
|
7167
7397
|
}) || this;
|
|
7168
7398
|
}
|
|
7169
|
-
return
|
|
7399
|
+
return QueryCache;
|
|
7170
7400
|
}(Cache));
|
|
7171
|
-
var
|
|
7172
|
-
var
|
|
7173
|
-
__extends(
|
|
7174
|
-
function
|
|
7401
|
+
var _queries = new QueryCache();
|
|
7402
|
+
var Query = /** @class */ (function (_super) {
|
|
7403
|
+
__extends(Query, _super);
|
|
7404
|
+
function Query(optsConnection, querySet, queryID, queryDetails) {
|
|
7175
7405
|
var _this = _super.call(this) || this;
|
|
7176
|
-
if (optsConnection instanceof
|
|
7177
|
-
_this.
|
|
7178
|
-
_this.machineConnection = new MachineService(optsConnection.connectionOptions());
|
|
7406
|
+
if (optsConnection instanceof WorkunitsService) {
|
|
7407
|
+
_this.wsWorkunitsService = optsConnection;
|
|
7179
7408
|
}
|
|
7180
7409
|
else {
|
|
7181
|
-
_this.
|
|
7182
|
-
_this.machineConnection = new MachineService(optsConnection);
|
|
7410
|
+
_this.wsWorkunitsService = new WorkunitsService(optsConnection);
|
|
7183
7411
|
}
|
|
7184
|
-
_this.
|
|
7185
|
-
|
|
7186
|
-
});
|
|
7412
|
+
_this.topology = Topology.attach(_this.wsWorkunitsService.opts());
|
|
7413
|
+
_this.set(__assign({ QuerySet: querySet, QueryId: queryID }, queryDetails));
|
|
7187
7414
|
return _this;
|
|
7188
7415
|
}
|
|
7189
|
-
Object.defineProperty(
|
|
7190
|
-
get: function () { return this.
|
|
7416
|
+
Object.defineProperty(Query.prototype, "BaseUrl", {
|
|
7417
|
+
get: function () { return this.wsWorkunitsService.baseUrl; },
|
|
7418
|
+
enumerable: false,
|
|
7419
|
+
configurable: true
|
|
7420
|
+
});
|
|
7421
|
+
Object.defineProperty(Query.prototype, "properties", {
|
|
7422
|
+
get: function () { return this.get(); },
|
|
7423
|
+
enumerable: false,
|
|
7424
|
+
configurable: true
|
|
7425
|
+
});
|
|
7426
|
+
Object.defineProperty(Query.prototype, "Exceptions", {
|
|
7427
|
+
get: function () { return this.get("Exceptions"); },
|
|
7428
|
+
enumerable: false,
|
|
7429
|
+
configurable: true
|
|
7430
|
+
});
|
|
7431
|
+
Object.defineProperty(Query.prototype, "QueryId", {
|
|
7432
|
+
get: function () { return this.get("QueryId"); },
|
|
7433
|
+
enumerable: false,
|
|
7434
|
+
configurable: true
|
|
7435
|
+
});
|
|
7436
|
+
Object.defineProperty(Query.prototype, "QuerySet", {
|
|
7437
|
+
get: function () { return this.get("QuerySet"); },
|
|
7438
|
+
enumerable: false,
|
|
7439
|
+
configurable: true
|
|
7440
|
+
});
|
|
7441
|
+
Object.defineProperty(Query.prototype, "QueryName", {
|
|
7442
|
+
get: function () { return this.get("QueryName"); },
|
|
7443
|
+
enumerable: false,
|
|
7444
|
+
configurable: true
|
|
7445
|
+
});
|
|
7446
|
+
Object.defineProperty(Query.prototype, "Wuid", {
|
|
7447
|
+
get: function () { return this.get("Wuid"); },
|
|
7448
|
+
enumerable: false,
|
|
7449
|
+
configurable: true
|
|
7450
|
+
});
|
|
7451
|
+
Object.defineProperty(Query.prototype, "Dll", {
|
|
7452
|
+
get: function () { return this.get("Dll"); },
|
|
7453
|
+
enumerable: false,
|
|
7454
|
+
configurable: true
|
|
7455
|
+
});
|
|
7456
|
+
Object.defineProperty(Query.prototype, "Suspended", {
|
|
7457
|
+
get: function () { return this.get("Suspended"); },
|
|
7458
|
+
enumerable: false,
|
|
7459
|
+
configurable: true
|
|
7460
|
+
});
|
|
7461
|
+
Object.defineProperty(Query.prototype, "Activated", {
|
|
7462
|
+
get: function () { return this.get("Activated"); },
|
|
7463
|
+
enumerable: false,
|
|
7464
|
+
configurable: true
|
|
7465
|
+
});
|
|
7466
|
+
Object.defineProperty(Query.prototype, "SuspendedBy", {
|
|
7467
|
+
get: function () { return this.get("SuspendedBy"); },
|
|
7468
|
+
enumerable: false,
|
|
7469
|
+
configurable: true
|
|
7470
|
+
});
|
|
7471
|
+
Object.defineProperty(Query.prototype, "Clusters", {
|
|
7472
|
+
get: function () { return this.get("Clusters"); },
|
|
7473
|
+
enumerable: false,
|
|
7474
|
+
configurable: true
|
|
7475
|
+
});
|
|
7476
|
+
Object.defineProperty(Query.prototype, "PublishedBy", {
|
|
7477
|
+
get: function () { return this.get("PublishedBy"); },
|
|
7478
|
+
enumerable: false,
|
|
7479
|
+
configurable: true
|
|
7480
|
+
});
|
|
7481
|
+
Object.defineProperty(Query.prototype, "Comment", {
|
|
7482
|
+
get: function () { return this.get("Comment"); },
|
|
7191
7483
|
enumerable: false,
|
|
7192
7484
|
configurable: true
|
|
7193
7485
|
});
|
|
7194
|
-
Object.defineProperty(
|
|
7195
|
-
get: function () { return this.get("
|
|
7486
|
+
Object.defineProperty(Query.prototype, "LogicalFiles", {
|
|
7487
|
+
get: function () { return this.get("LogicalFiles"); },
|
|
7196
7488
|
enumerable: false,
|
|
7197
7489
|
configurable: true
|
|
7198
7490
|
});
|
|
7199
|
-
Object.defineProperty(
|
|
7200
|
-
get: function () { return this.get("
|
|
7491
|
+
Object.defineProperty(Query.prototype, "SuperFiles", {
|
|
7492
|
+
get: function () { return this.get("SuperFiles"); },
|
|
7201
7493
|
enumerable: false,
|
|
7202
7494
|
configurable: true
|
|
7203
7495
|
});
|
|
7204
|
-
Object.defineProperty(
|
|
7205
|
-
get: function () { return this.get("
|
|
7496
|
+
Object.defineProperty(Query.prototype, "IsLibrary", {
|
|
7497
|
+
get: function () { return this.get("IsLibrary"); },
|
|
7206
7498
|
enumerable: false,
|
|
7207
7499
|
configurable: true
|
|
7208
7500
|
});
|
|
7209
|
-
Object.defineProperty(
|
|
7210
|
-
get: function () { return this.get("
|
|
7501
|
+
Object.defineProperty(Query.prototype, "Priority", {
|
|
7502
|
+
get: function () { return this.get("Priority"); },
|
|
7211
7503
|
enumerable: false,
|
|
7212
7504
|
configurable: true
|
|
7213
7505
|
});
|
|
7214
|
-
Object.defineProperty(
|
|
7215
|
-
get: function () { return this.get("
|
|
7506
|
+
Object.defineProperty(Query.prototype, "WUSnapShot", {
|
|
7507
|
+
get: function () { return this.get("WUSnapShot"); },
|
|
7216
7508
|
enumerable: false,
|
|
7217
7509
|
configurable: true
|
|
7218
7510
|
});
|
|
7219
|
-
Object.defineProperty(
|
|
7220
|
-
get: function () { return this.get("
|
|
7511
|
+
Object.defineProperty(Query.prototype, "CompileTime", {
|
|
7512
|
+
get: function () { return this.get("CompileTime"); },
|
|
7221
7513
|
enumerable: false,
|
|
7222
7514
|
configurable: true
|
|
7223
7515
|
});
|
|
7224
|
-
Object.defineProperty(
|
|
7225
|
-
get: function () { return this.get("
|
|
7516
|
+
Object.defineProperty(Query.prototype, "LibrariesUsed", {
|
|
7517
|
+
get: function () { return this.get("LibrariesUsed"); },
|
|
7226
7518
|
enumerable: false,
|
|
7227
7519
|
configurable: true
|
|
7228
7520
|
});
|
|
7229
|
-
Object.defineProperty(
|
|
7230
|
-
get: function () { return this.get("
|
|
7521
|
+
Object.defineProperty(Query.prototype, "CountGraphs", {
|
|
7522
|
+
get: function () { return this.get("CountGraphs"); },
|
|
7231
7523
|
enumerable: false,
|
|
7232
7524
|
configurable: true
|
|
7233
7525
|
});
|
|
7234
|
-
Object.defineProperty(
|
|
7235
|
-
get: function () { return this.get("
|
|
7526
|
+
Object.defineProperty(Query.prototype, "ResourceURLCount", {
|
|
7527
|
+
get: function () { return this.get("ResourceURLCount"); },
|
|
7236
7528
|
enumerable: false,
|
|
7237
7529
|
configurable: true
|
|
7238
7530
|
});
|
|
7239
|
-
Object.defineProperty(
|
|
7240
|
-
get: function () { return this.get("
|
|
7531
|
+
Object.defineProperty(Query.prototype, "WsEclAddresses", {
|
|
7532
|
+
get: function () { return this.get("WsEclAddresses"); },
|
|
7241
7533
|
enumerable: false,
|
|
7242
7534
|
configurable: true
|
|
7243
7535
|
});
|
|
7244
|
-
Object.defineProperty(
|
|
7245
|
-
get: function () {
|
|
7246
|
-
var _this = this;
|
|
7247
|
-
return this.MachineInfoEx.map(function (machineInfoEx) { return Machine.attach(_this.machineConnection, machineInfoEx.Address, machineInfoEx); });
|
|
7248
|
-
},
|
|
7536
|
+
Object.defineProperty(Query.prototype, "WUGraphs", {
|
|
7537
|
+
get: function () { return this.get("WUGraphs"); },
|
|
7249
7538
|
enumerable: false,
|
|
7250
7539
|
configurable: true
|
|
7251
7540
|
});
|
|
7252
|
-
|
|
7253
|
-
|
|
7254
|
-
|
|
7541
|
+
Object.defineProperty(Query.prototype, "WUTimers", {
|
|
7542
|
+
get: function () { return this.get("WUTimers"); },
|
|
7543
|
+
enumerable: false,
|
|
7544
|
+
configurable: true
|
|
7545
|
+
});
|
|
7546
|
+
Query.attach = function (optsConnection, querySet, queryId) {
|
|
7547
|
+
var retVal = _queries.get({ BaseUrl: optsConnection.baseUrl, QuerySet: querySet, QueryId: queryId }, function () {
|
|
7548
|
+
return new Query(optsConnection, querySet, queryId);
|
|
7255
7549
|
});
|
|
7256
|
-
if (state) {
|
|
7257
|
-
retVal.set(__assign({}, state));
|
|
7258
|
-
}
|
|
7259
7550
|
return retVal;
|
|
7260
7551
|
};
|
|
7261
|
-
|
|
7262
|
-
|
|
7263
|
-
|
|
7264
|
-
|
|
7265
|
-
|
|
7266
|
-
|
|
7267
|
-
|
|
7268
|
-
|
|
7269
|
-
|
|
7270
|
-
|
|
7271
|
-
|
|
7272
|
-
|
|
7552
|
+
Query.prototype.wsEclService = function () {
|
|
7553
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
7554
|
+
return __generator(this, function (_a) {
|
|
7555
|
+
if (!this._eclService) {
|
|
7556
|
+
this._eclService = this.topology.fetchServices({}).then(function (services) {
|
|
7557
|
+
var _a, _b, _c, _d;
|
|
7558
|
+
for (var _i = 0, _e = (_b = (_a = services === null || services === void 0 ? void 0 : services.TpEspServers) === null || _a === void 0 ? void 0 : _a.TpEspServer) !== null && _b !== void 0 ? _b : []; _i < _e.length; _i++) {
|
|
7559
|
+
var espServer = _e[_i];
|
|
7560
|
+
for (var _f = 0, _g = (_d = (_c = espServer === null || espServer === void 0 ? void 0 : espServer.TpBindings) === null || _c === void 0 ? void 0 : _c.TpBinding) !== null && _d !== void 0 ? _d : []; _f < _g.length; _f++) {
|
|
7561
|
+
var binding = _g[_f];
|
|
7562
|
+
if ((binding === null || binding === void 0 ? void 0 : binding.Service) === "ws_ecl") {
|
|
7563
|
+
var baseUrl = "".concat(binding.Protocol, "://").concat(globalThis.location.hostname, ":").concat(binding.Port);
|
|
7564
|
+
return new EclService({ baseUrl: baseUrl });
|
|
7565
|
+
}
|
|
7566
|
+
}
|
|
7567
|
+
}
|
|
7568
|
+
return undefined;
|
|
7569
|
+
});
|
|
7273
7570
|
}
|
|
7274
|
-
|
|
7275
|
-
|
|
7276
|
-
return _this.CMachineInfoEx;
|
|
7571
|
+
return [2 /*return*/, this._eclService];
|
|
7572
|
+
});
|
|
7277
7573
|
});
|
|
7278
7574
|
};
|
|
7279
|
-
|
|
7280
|
-
|
|
7281
|
-
|
|
7282
|
-
|
|
7283
|
-
|
|
7284
|
-
|
|
7285
|
-
|
|
7286
|
-
|
|
7287
|
-
|
|
7288
|
-
|
|
7289
|
-
|
|
7290
|
-
|
|
7291
|
-
|
|
7575
|
+
Query.prototype.fetchDetails = function () {
|
|
7576
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
7577
|
+
var queryDetails;
|
|
7578
|
+
return __generator(this, function (_a) {
|
|
7579
|
+
switch (_a.label) {
|
|
7580
|
+
case 0: return [4 /*yield*/, this.wsWorkunitsService.WUQueryDetails({
|
|
7581
|
+
QuerySet: this.QuerySet,
|
|
7582
|
+
QueryId: this.QueryId,
|
|
7583
|
+
IncludeStateOnClusters: true,
|
|
7584
|
+
IncludeSuperFiles: true,
|
|
7585
|
+
IncludeWsEclAddresses: true,
|
|
7586
|
+
CheckAllNodes: false
|
|
7587
|
+
})];
|
|
7588
|
+
case 1:
|
|
7589
|
+
queryDetails = _a.sent();
|
|
7590
|
+
this.set(__assign({}, queryDetails));
|
|
7591
|
+
return [2 /*return*/];
|
|
7292
7592
|
}
|
|
7293
|
-
}
|
|
7294
|
-
}
|
|
7295
|
-
return {
|
|
7296
|
-
maxDisk: maxDisk,
|
|
7297
|
-
meanDisk: 1 - (total ? totalFree / total : 1)
|
|
7298
|
-
};
|
|
7593
|
+
});
|
|
7594
|
+
});
|
|
7299
7595
|
};
|
|
7300
|
-
|
|
7301
|
-
|
|
7596
|
+
Query.prototype.fetchRequestSchema = function () {
|
|
7597
|
+
var _a;
|
|
7598
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
7599
|
+
var wsEclService, _b, e_1;
|
|
7600
|
+
return __generator(this, function (_c) {
|
|
7601
|
+
switch (_c.label) {
|
|
7602
|
+
case 0: return [4 /*yield*/, this.wsEclService()];
|
|
7603
|
+
case 1:
|
|
7604
|
+
wsEclService = _c.sent();
|
|
7605
|
+
_c.label = 2;
|
|
7606
|
+
case 2:
|
|
7607
|
+
_c.trys.push([2, 4, , 5]);
|
|
7608
|
+
_b = this;
|
|
7609
|
+
return [4 /*yield*/, (wsEclService === null || wsEclService === void 0 ? void 0 : wsEclService.requestJson(this.QuerySet, this.QueryId))];
|
|
7610
|
+
case 3:
|
|
7611
|
+
_b._requestSchema = (_a = _c.sent()) !== null && _a !== void 0 ? _a : [];
|
|
7612
|
+
return [3 /*break*/, 5];
|
|
7613
|
+
case 4:
|
|
7614
|
+
e_1 = _c.sent();
|
|
7615
|
+
// See: https://track.hpccsystems.com/browse/HPCC-29827
|
|
7616
|
+
logger$2.debug(e_1);
|
|
7617
|
+
this._requestSchema = [];
|
|
7618
|
+
return [3 /*break*/, 5];
|
|
7619
|
+
case 5: return [2 /*return*/];
|
|
7620
|
+
}
|
|
7621
|
+
});
|
|
7622
|
+
});
|
|
7302
7623
|
};
|
|
7303
|
-
|
|
7304
|
-
|
|
7305
|
-
function
|
|
7306
|
-
|
|
7307
|
-
|
|
7308
|
-
|
|
7309
|
-
|
|
7310
|
-
|
|
7311
|
-
|
|
7312
|
-
|
|
7313
|
-
|
|
7314
|
-
|
|
7315
|
-
|
|
7316
|
-
|
|
7317
|
-
|
|
7318
|
-
|
|
7319
|
-
|
|
7320
|
-
|
|
7321
|
-
|
|
7322
|
-
|
|
7323
|
-
|
|
7324
|
-
|
|
7325
|
-
|
|
7326
|
-
|
|
7327
|
-
_defaultTargetCluster[optsConnection.baseUrl] = connection.TpListTargetClusters({}).then(function (response) {
|
|
7328
|
-
var firstItem;
|
|
7329
|
-
var defaultItem;
|
|
7330
|
-
var hthorItem;
|
|
7331
|
-
response.TargetClusters.TpClusterNameType.forEach(function (item) {
|
|
7332
|
-
if (!firstItem) {
|
|
7333
|
-
firstItem = item;
|
|
7624
|
+
Query.prototype.fetchResponseSchema = function () {
|
|
7625
|
+
var _a;
|
|
7626
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
7627
|
+
var wsEclService, _b, e_2;
|
|
7628
|
+
return __generator(this, function (_c) {
|
|
7629
|
+
switch (_c.label) {
|
|
7630
|
+
case 0: return [4 /*yield*/, this.wsEclService()];
|
|
7631
|
+
case 1:
|
|
7632
|
+
wsEclService = _c.sent();
|
|
7633
|
+
_c.label = 2;
|
|
7634
|
+
case 2:
|
|
7635
|
+
_c.trys.push([2, 4, , 5]);
|
|
7636
|
+
_b = this;
|
|
7637
|
+
return [4 /*yield*/, (wsEclService === null || wsEclService === void 0 ? void 0 : wsEclService.responseJson(this.QuerySet, this.QueryId))];
|
|
7638
|
+
case 3:
|
|
7639
|
+
_b._responseSchema = (_a = _c.sent()) !== null && _a !== void 0 ? _a : {};
|
|
7640
|
+
return [3 /*break*/, 5];
|
|
7641
|
+
case 4:
|
|
7642
|
+
e_2 = _c.sent();
|
|
7643
|
+
// See: https://track.hpccsystems.com/browse/HPCC-29827
|
|
7644
|
+
logger$2.debug(e_2);
|
|
7645
|
+
this._responseSchema = {};
|
|
7646
|
+
return [3 /*break*/, 5];
|
|
7647
|
+
case 5: return [2 /*return*/];
|
|
7334
7648
|
}
|
|
7335
|
-
|
|
7336
|
-
|
|
7649
|
+
});
|
|
7650
|
+
});
|
|
7651
|
+
};
|
|
7652
|
+
Query.prototype.fetchSchema = function () {
|
|
7653
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
7654
|
+
return __generator(this, function (_a) {
|
|
7655
|
+
switch (_a.label) {
|
|
7656
|
+
case 0: return [4 /*yield*/, Promise.all([this.fetchRequestSchema(), this.fetchResponseSchema()])];
|
|
7657
|
+
case 1:
|
|
7658
|
+
_a.sent();
|
|
7659
|
+
return [2 /*return*/];
|
|
7337
7660
|
}
|
|
7338
|
-
|
|
7339
|
-
|
|
7661
|
+
});
|
|
7662
|
+
});
|
|
7663
|
+
};
|
|
7664
|
+
Query.prototype.fetchSummaryStats = function () {
|
|
7665
|
+
return this.wsWorkunitsService.WUQueryGetSummaryStats({ Target: this.QuerySet, QueryId: this.QueryId });
|
|
7666
|
+
};
|
|
7667
|
+
Query.prototype.submit = function (request) {
|
|
7668
|
+
var _a;
|
|
7669
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
7670
|
+
var wsEclService;
|
|
7671
|
+
return __generator(this, function (_b) {
|
|
7672
|
+
switch (_b.label) {
|
|
7673
|
+
case 0: return [4 /*yield*/, this.wsEclService()];
|
|
7674
|
+
case 1:
|
|
7675
|
+
wsEclService = _b.sent();
|
|
7676
|
+
try {
|
|
7677
|
+
return [2 /*return*/, (_a = wsEclService === null || wsEclService === void 0 ? void 0 : wsEclService.submit(this.QuerySet, this.QueryId, request).then(function (results) {
|
|
7678
|
+
for (var key in results) {
|
|
7679
|
+
results[key] = results[key].Row;
|
|
7680
|
+
}
|
|
7681
|
+
return results;
|
|
7682
|
+
})) !== null && _a !== void 0 ? _a : []];
|
|
7683
|
+
}
|
|
7684
|
+
catch (e) {
|
|
7685
|
+
// See: https://track.hpccsystems.com/browse/HPCC-29827
|
|
7686
|
+
logger$2.debug(e);
|
|
7687
|
+
return [2 /*return*/, []];
|
|
7688
|
+
}
|
|
7689
|
+
return [2 /*return*/];
|
|
7340
7690
|
}
|
|
7341
7691
|
});
|
|
7342
|
-
var defItem = defaultItem || hthorItem || firstItem;
|
|
7343
|
-
return TargetCluster.attach(optsConnection, defItem.Name, defItem);
|
|
7344
7692
|
});
|
|
7345
|
-
}
|
|
7346
|
-
|
|
7347
|
-
|
|
7693
|
+
};
|
|
7694
|
+
Query.prototype.refresh = function () {
|
|
7695
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
7696
|
+
return __generator(this, function (_a) {
|
|
7697
|
+
switch (_a.label) {
|
|
7698
|
+
case 0: return [4 /*yield*/, Promise.all([
|
|
7699
|
+
this.fetchDetails(),
|
|
7700
|
+
this.fetchSchema()
|
|
7701
|
+
])];
|
|
7702
|
+
case 1:
|
|
7703
|
+
_a.sent();
|
|
7704
|
+
return [2 /*return*/, this];
|
|
7705
|
+
}
|
|
7706
|
+
});
|
|
7707
|
+
});
|
|
7708
|
+
};
|
|
7709
|
+
Query.prototype.requestFields = function () {
|
|
7710
|
+
if (!this._requestSchema)
|
|
7711
|
+
return [];
|
|
7712
|
+
return this._requestSchema;
|
|
7713
|
+
};
|
|
7714
|
+
Query.prototype.responseFields = function () {
|
|
7715
|
+
if (!this._responseSchema)
|
|
7716
|
+
return {};
|
|
7717
|
+
return this._responseSchema;
|
|
7718
|
+
};
|
|
7719
|
+
Query.prototype.resultNames = function () {
|
|
7720
|
+
var retVal = [];
|
|
7721
|
+
for (var key in this.responseFields()) {
|
|
7722
|
+
retVal.push(key);
|
|
7723
|
+
}
|
|
7724
|
+
return retVal;
|
|
7725
|
+
};
|
|
7726
|
+
Query.prototype.resultFields = function (resultName) {
|
|
7727
|
+
if (!this._responseSchema[resultName])
|
|
7728
|
+
return [];
|
|
7729
|
+
return this._responseSchema[resultName];
|
|
7730
|
+
};
|
|
7731
|
+
return Query;
|
|
7732
|
+
}(StateObject));
|
|
7348
7733
|
|
|
7349
|
-
var
|
|
7350
|
-
__extends(
|
|
7351
|
-
function
|
|
7734
|
+
var StoreCache = /** @class */ (function (_super) {
|
|
7735
|
+
__extends(StoreCache, _super);
|
|
7736
|
+
function StoreCache() {
|
|
7352
7737
|
return _super.call(this, function (obj) {
|
|
7353
|
-
return obj.BaseUrl;
|
|
7738
|
+
return "".concat(obj.BaseUrl, "-").concat(obj.Name, ":").concat(obj.UserSpecific, "-").concat(obj.Namespace);
|
|
7354
7739
|
}) || this;
|
|
7355
7740
|
}
|
|
7356
|
-
return
|
|
7741
|
+
return StoreCache;
|
|
7357
7742
|
}(Cache));
|
|
7358
|
-
var
|
|
7359
|
-
var
|
|
7360
|
-
__extends(
|
|
7361
|
-
function
|
|
7743
|
+
var _store = new StoreCache();
|
|
7744
|
+
var ValueChangedMessage = /** @class */ (function (_super) {
|
|
7745
|
+
__extends(ValueChangedMessage, _super);
|
|
7746
|
+
function ValueChangedMessage(key, value, oldValue) {
|
|
7362
7747
|
var _this = _super.call(this) || this;
|
|
7363
|
-
|
|
7364
|
-
|
|
7365
|
-
|
|
7366
|
-
else {
|
|
7367
|
-
_this.connection = new TopologyService(optsConnection);
|
|
7368
|
-
}
|
|
7748
|
+
_this.key = key;
|
|
7749
|
+
_this.value = value;
|
|
7750
|
+
_this.oldValue = oldValue;
|
|
7369
7751
|
return _this;
|
|
7370
7752
|
}
|
|
7371
|
-
Object.defineProperty(
|
|
7372
|
-
get: function () { return
|
|
7373
|
-
enumerable: false,
|
|
7374
|
-
configurable: true
|
|
7375
|
-
});
|
|
7376
|
-
Object.defineProperty(Topology.prototype, "properties", {
|
|
7377
|
-
// Accessors ---
|
|
7378
|
-
get: function () { return this.get(); },
|
|
7379
|
-
enumerable: false,
|
|
7380
|
-
configurable: true
|
|
7381
|
-
});
|
|
7382
|
-
Object.defineProperty(Topology.prototype, "TargetClusters", {
|
|
7383
|
-
get: function () { return this.get("TargetClusters"); },
|
|
7384
|
-
enumerable: false,
|
|
7385
|
-
configurable: true
|
|
7386
|
-
});
|
|
7387
|
-
Object.defineProperty(Topology.prototype, "CTargetClusters", {
|
|
7388
|
-
get: function () {
|
|
7389
|
-
var _this = this;
|
|
7390
|
-
return this.TargetClusters.map(function (tc) { return TargetCluster.attach(_this.connection, tc.Name, tc); });
|
|
7391
|
-
},
|
|
7392
|
-
enumerable: false,
|
|
7393
|
-
configurable: true
|
|
7394
|
-
});
|
|
7395
|
-
Object.defineProperty(Topology.prototype, "LogicalClusters", {
|
|
7396
|
-
get: function () { return this.get("LogicalClusters"); },
|
|
7753
|
+
Object.defineProperty(ValueChangedMessage.prototype, "canConflate", {
|
|
7754
|
+
get: function () { return true; },
|
|
7397
7755
|
enumerable: false,
|
|
7398
7756
|
configurable: true
|
|
7399
7757
|
});
|
|
7400
|
-
|
|
7401
|
-
|
|
7758
|
+
ValueChangedMessage.prototype.conflate = function (other) {
|
|
7759
|
+
if (this.key === other.key) {
|
|
7760
|
+
this.value = other.value;
|
|
7761
|
+
return true;
|
|
7762
|
+
}
|
|
7763
|
+
return false;
|
|
7764
|
+
};
|
|
7765
|
+
ValueChangedMessage.prototype.void = function () {
|
|
7766
|
+
return this.value === this.oldValue;
|
|
7767
|
+
};
|
|
7768
|
+
return ValueChangedMessage;
|
|
7769
|
+
}(Message));
|
|
7770
|
+
var Store = /** @class */ (function () {
|
|
7771
|
+
function Store(optsConnection, Name, Namespace, UserSpecific) {
|
|
7772
|
+
this._dispatch = new Dispatch();
|
|
7773
|
+
this._knownValues = {};
|
|
7774
|
+
if (optsConnection instanceof StoreService) {
|
|
7775
|
+
this.connection = optsConnection;
|
|
7776
|
+
}
|
|
7777
|
+
else {
|
|
7778
|
+
this.connection = new StoreService(optsConnection);
|
|
7779
|
+
}
|
|
7780
|
+
this.Name = Name;
|
|
7781
|
+
this.UserSpecific = UserSpecific;
|
|
7782
|
+
this.Namespace = Namespace;
|
|
7783
|
+
}
|
|
7784
|
+
Object.defineProperty(Store.prototype, "BaseUrl", {
|
|
7785
|
+
get: function () { return this.connection.baseUrl; },
|
|
7402
7786
|
enumerable: false,
|
|
7403
7787
|
configurable: true
|
|
7404
7788
|
});
|
|
7405
|
-
|
|
7406
|
-
|
|
7407
|
-
|
|
7789
|
+
Store.attach = function (optsConnection, Name, Namespace, UserSpecific) {
|
|
7790
|
+
if (Name === void 0) { Name = "HPCCApps"; }
|
|
7791
|
+
if (UserSpecific === void 0) { UserSpecific = true; }
|
|
7792
|
+
var retVal = _store.get({ BaseUrl: optsConnection.baseUrl, Name: Name, UserSpecific: UserSpecific, Namespace: Namespace }, function () {
|
|
7793
|
+
return new Store(optsConnection, Name, Namespace, UserSpecific);
|
|
7408
7794
|
});
|
|
7409
7795
|
return retVal;
|
|
7410
7796
|
};
|
|
7411
|
-
|
|
7797
|
+
Store.prototype.create = function () {
|
|
7798
|
+
this.connection.CreateStore({ Name: this.Name, UserSpecific: this.UserSpecific, Type: "", Description: "" });
|
|
7799
|
+
};
|
|
7800
|
+
Store.prototype.set = function (key, value, broadcast) {
|
|
7412
7801
|
var _this = this;
|
|
7413
|
-
if (
|
|
7414
|
-
return this.connection.
|
|
7415
|
-
|
|
7416
|
-
|
|
7417
|
-
|
|
7418
|
-
|
|
7419
|
-
|
|
7420
|
-
|
|
7421
|
-
|
|
7422
|
-
|
|
7423
|
-
|
|
7424
|
-
|
|
7425
|
-
port = binding.Port;
|
|
7426
|
-
}
|
|
7427
|
-
}
|
|
7428
|
-
}
|
|
7429
|
-
}
|
|
7802
|
+
if (broadcast === void 0) { broadcast = true; }
|
|
7803
|
+
return this.connection.Set({
|
|
7804
|
+
StoreName: this.Name,
|
|
7805
|
+
UserSpecific: this.UserSpecific,
|
|
7806
|
+
Namespace: this.Namespace,
|
|
7807
|
+
Key: key,
|
|
7808
|
+
Value: value
|
|
7809
|
+
}).then(function (response) {
|
|
7810
|
+
var oldValue = _this._knownValues[key];
|
|
7811
|
+
_this._knownValues[key] = value;
|
|
7812
|
+
if (broadcast) {
|
|
7813
|
+
_this._dispatch.post(new ValueChangedMessage(key, value, oldValue));
|
|
7430
7814
|
}
|
|
7431
|
-
|
|
7815
|
+
}).catch(function (e) {
|
|
7816
|
+
console.error("Store.set(\"".concat(key, "\", \"").concat(value, "\") failed:"), e);
|
|
7432
7817
|
});
|
|
7433
7818
|
};
|
|
7434
|
-
|
|
7819
|
+
Store.prototype.get = function (key, broadcast) {
|
|
7435
7820
|
var _this = this;
|
|
7436
|
-
|
|
7437
|
-
|
|
7438
|
-
|
|
7439
|
-
|
|
7440
|
-
|
|
7441
|
-
|
|
7821
|
+
if (broadcast === void 0) { broadcast = true; }
|
|
7822
|
+
return this.connection.Fetch({
|
|
7823
|
+
StoreName: this.Name,
|
|
7824
|
+
UserSpecific: this.UserSpecific,
|
|
7825
|
+
Namespace: this.Namespace,
|
|
7826
|
+
Key: key
|
|
7827
|
+
}).then(function (response) {
|
|
7828
|
+
var oldValue = _this._knownValues[key];
|
|
7829
|
+
_this._knownValues[key] = response.Value;
|
|
7830
|
+
if (broadcast) {
|
|
7831
|
+
_this._dispatch.post(new ValueChangedMessage(key, response.Value, oldValue));
|
|
7832
|
+
}
|
|
7833
|
+
return response.Value;
|
|
7834
|
+
}).catch(function (e) {
|
|
7835
|
+
console.error("Store.get(".concat(key, ") failed:"), e);
|
|
7836
|
+
return undefined;
|
|
7442
7837
|
});
|
|
7443
7838
|
};
|
|
7444
|
-
|
|
7839
|
+
Store.prototype.getAll = function (broadcast) {
|
|
7445
7840
|
var _this = this;
|
|
7446
|
-
if (
|
|
7447
|
-
return this.connection.
|
|
7448
|
-
|
|
7449
|
-
|
|
7841
|
+
if (broadcast === void 0) { broadcast = true; }
|
|
7842
|
+
return this.connection.FetchAll({
|
|
7843
|
+
StoreName: this.Name,
|
|
7844
|
+
UserSpecific: this.UserSpecific,
|
|
7845
|
+
Namespace: this.Namespace
|
|
7846
|
+
}).then(function (response) {
|
|
7847
|
+
var retVal = {};
|
|
7848
|
+
var deletedValues = _this._knownValues;
|
|
7849
|
+
_this._knownValues = {};
|
|
7850
|
+
response.Pairs.Pair.forEach(function (pair) {
|
|
7851
|
+
var oldValue = _this._knownValues[pair.Key];
|
|
7852
|
+
_this._knownValues[pair.Key] = pair.Value;
|
|
7853
|
+
delete deletedValues[pair.Key];
|
|
7854
|
+
retVal[pair.Key] = pair.Value;
|
|
7855
|
+
if (broadcast) {
|
|
7856
|
+
_this._dispatch.post(new ValueChangedMessage(pair.Key, pair.Value, oldValue));
|
|
7857
|
+
}
|
|
7450
7858
|
});
|
|
7451
|
-
|
|
7859
|
+
if (broadcast) {
|
|
7860
|
+
for (var key in deletedValues) {
|
|
7861
|
+
_this._dispatch.post(new ValueChangedMessage(key, undefined, deletedValues[key]));
|
|
7862
|
+
}
|
|
7863
|
+
}
|
|
7864
|
+
return retVal;
|
|
7865
|
+
}).catch(function (e) {
|
|
7866
|
+
console.error("Store.getAll failed:", e);
|
|
7867
|
+
return {};
|
|
7452
7868
|
});
|
|
7453
7869
|
};
|
|
7454
|
-
|
|
7870
|
+
Store.prototype.delete = function (key, broadcast) {
|
|
7455
7871
|
var _this = this;
|
|
7456
|
-
if (
|
|
7457
|
-
return this.connection.
|
|
7458
|
-
|
|
7459
|
-
|
|
7460
|
-
|
|
7461
|
-
|
|
7872
|
+
if (broadcast === void 0) { broadcast = true; }
|
|
7873
|
+
return this.connection.Delete({
|
|
7874
|
+
StoreName: this.Name,
|
|
7875
|
+
UserSpecific: this.UserSpecific,
|
|
7876
|
+
Namespace: this.Namespace,
|
|
7877
|
+
Key: key
|
|
7878
|
+
}).then(function (response) {
|
|
7879
|
+
var oldValue = _this._knownValues[key];
|
|
7880
|
+
delete _this._knownValues[key];
|
|
7881
|
+
if (broadcast) {
|
|
7882
|
+
_this._dispatch.post(new ValueChangedMessage(key, undefined, oldValue));
|
|
7883
|
+
}
|
|
7884
|
+
}).catch(function (e) {
|
|
7885
|
+
console.error("Store.delete(".concat(key, ") failed:"), e);
|
|
7462
7886
|
});
|
|
7463
7887
|
};
|
|
7464
|
-
|
|
7465
|
-
|
|
7466
|
-
if (force === void 0) { force = false; }
|
|
7467
|
-
if (!this._prevRefresh || force) {
|
|
7468
|
-
this._prevRefresh = Promise.all([this.fetchTargetClusters(), this.fetchLogicalClusters(), this.fetchServices()]).then(function () {
|
|
7469
|
-
return _this;
|
|
7470
|
-
});
|
|
7471
|
-
}
|
|
7472
|
-
return this._prevRefresh;
|
|
7473
|
-
};
|
|
7474
|
-
// Monitoring ---
|
|
7475
|
-
// Events ---
|
|
7476
|
-
Topology.prototype.on = function (eventID, propIDorCallback, callback) {
|
|
7477
|
-
if (this.isCallback(propIDorCallback)) {
|
|
7478
|
-
switch (eventID) {
|
|
7479
|
-
case "changed":
|
|
7480
|
-
_super.prototype.on.call(this, eventID, propIDorCallback);
|
|
7481
|
-
break;
|
|
7482
|
-
}
|
|
7483
|
-
}
|
|
7484
|
-
else {
|
|
7485
|
-
switch (eventID) {
|
|
7486
|
-
case "changed":
|
|
7487
|
-
_super.prototype.on.call(this, eventID, propIDorCallback, callback);
|
|
7488
|
-
break;
|
|
7489
|
-
}
|
|
7490
|
-
}
|
|
7491
|
-
this._monitor();
|
|
7492
|
-
return this;
|
|
7888
|
+
Store.prototype.monitor = function (callback) {
|
|
7889
|
+
return this._dispatch.attach(callback);
|
|
7493
7890
|
};
|
|
7494
|
-
return
|
|
7495
|
-
}(
|
|
7891
|
+
return Store;
|
|
7892
|
+
}());
|
|
7496
7893
|
|
|
7497
7894
|
var logger$1 = scopedLogger("@hpcc-js/comms/dfuWorkunit.ts");
|
|
7498
7895
|
var States;
|
|
@@ -7819,6 +8216,16 @@ var DFUWorkunit = /** @class */ (function (_super) {
|
|
|
7819
8216
|
enumerable: false,
|
|
7820
8217
|
configurable: true
|
|
7821
8218
|
});
|
|
8219
|
+
Object.defineProperty(DFUWorkunit.prototype, "KbPerSecAve", {
|
|
8220
|
+
get: function () { return this.get("KbPerSecAve"); },
|
|
8221
|
+
enumerable: false,
|
|
8222
|
+
configurable: true
|
|
8223
|
+
});
|
|
8224
|
+
Object.defineProperty(DFUWorkunit.prototype, "KbPerSec", {
|
|
8225
|
+
get: function () { return this.get("KbPerSec"); },
|
|
8226
|
+
enumerable: false,
|
|
8227
|
+
configurable: true
|
|
8228
|
+
});
|
|
7822
8229
|
// Factories ---
|
|
7823
8230
|
DFUWorkunit.create = function (optsConnection, dfuServerQueue) {
|
|
7824
8231
|
var retVal = new DFUWorkunit(optsConnection);
|
|
@@ -7864,6 +8271,21 @@ var DFUWorkunit = /** @class */ (function (_super) {
|
|
|
7864
8271
|
});
|
|
7865
8272
|
});
|
|
7866
8273
|
};
|
|
8274
|
+
DFUWorkunit.prototype.update = function (request) {
|
|
8275
|
+
var _a, _b, _c, _d;
|
|
8276
|
+
return this.connection.UpdateDFUWorkunitEx({
|
|
8277
|
+
wu: {
|
|
8278
|
+
JobName: (_b = (_a = request === null || request === void 0 ? void 0 : request.wu) === null || _a === void 0 ? void 0 : _a.JobName) !== null && _b !== void 0 ? _b : this.JobName,
|
|
8279
|
+
isProtected: (_d = (_c = request === null || request === void 0 ? void 0 : request.wu) === null || _c === void 0 ? void 0 : _c.isProtected) !== null && _d !== void 0 ? _d : this.isProtected,
|
|
8280
|
+
ID: this.ID,
|
|
8281
|
+
State: this.State
|
|
8282
|
+
},
|
|
8283
|
+
ClusterOrig: this.ClusterName,
|
|
8284
|
+
JobNameOrig: this.JobName,
|
|
8285
|
+
isProtectedOrig: this.isProtected,
|
|
8286
|
+
StateOrig: this.State
|
|
8287
|
+
});
|
|
8288
|
+
};
|
|
7867
8289
|
DFUWorkunit.prototype.isComplete = function () {
|
|
7868
8290
|
switch (this.State) {
|
|
7869
8291
|
case States.Finished:
|
|
@@ -7890,6 +8312,12 @@ var DFUWorkunit = /** @class */ (function (_super) {
|
|
|
7890
8312
|
DFUWorkunit.prototype.isRunning = function () {
|
|
7891
8313
|
return !this.isComplete();
|
|
7892
8314
|
};
|
|
8315
|
+
DFUWorkunit.prototype.abort = function () {
|
|
8316
|
+
return this.connection.AbortDFUWorkunit({ wuid: this.ID });
|
|
8317
|
+
};
|
|
8318
|
+
DFUWorkunit.prototype.delete = function () {
|
|
8319
|
+
return this.DFUWUAction(FileSpray.DFUWUActions.Delete);
|
|
8320
|
+
};
|
|
7893
8321
|
DFUWorkunit.prototype.refresh = function (full) {
|
|
7894
8322
|
return __awaiter(this, void 0, void 0, function () {
|
|
7895
8323
|
return __generator(this, function (_a) {
|
|
@@ -7902,6 +8330,9 @@ var DFUWorkunit = /** @class */ (function (_super) {
|
|
|
7902
8330
|
});
|
|
7903
8331
|
});
|
|
7904
8332
|
};
|
|
8333
|
+
DFUWorkunit.prototype.fetchXML = function (callback) {
|
|
8334
|
+
return this.DFUWUFile();
|
|
8335
|
+
};
|
|
7905
8336
|
// Monitoring ---
|
|
7906
8337
|
DFUWorkunit.prototype._monitor = function () {
|
|
7907
8338
|
if (this.isComplete()) {
|
|
@@ -7923,6 +8354,29 @@ var DFUWorkunit = /** @class */ (function (_super) {
|
|
|
7923
8354
|
}
|
|
7924
8355
|
return retVal;
|
|
7925
8356
|
};
|
|
8357
|
+
DFUWorkunit.prototype.DFUWUFile = function (_request) {
|
|
8358
|
+
if (_request === void 0) { _request = {}; }
|
|
8359
|
+
return this.connection.DFUWUFile(__assign(__assign({}, _request), { Wuid: this.ID })).then(function (response) {
|
|
8360
|
+
//TODO: additional processing?
|
|
8361
|
+
return response;
|
|
8362
|
+
}).catch(function (e) {
|
|
8363
|
+
return {};
|
|
8364
|
+
});
|
|
8365
|
+
};
|
|
8366
|
+
DFUWorkunit.prototype.DFUWUAction = function (actionType) {
|
|
8367
|
+
var _this = this;
|
|
8368
|
+
return this.connection.DFUWorkunitsAction({
|
|
8369
|
+
wuids: { Item: [this.ID] },
|
|
8370
|
+
Type: actionType
|
|
8371
|
+
}).then(function (response) {
|
|
8372
|
+
if (actionType === FileSpray.DFUWUActions.Delete)
|
|
8373
|
+
return response;
|
|
8374
|
+
return _this.refresh().then(function () {
|
|
8375
|
+
_this._monitor();
|
|
8376
|
+
return response;
|
|
8377
|
+
});
|
|
8378
|
+
});
|
|
8379
|
+
};
|
|
7926
8380
|
// Events ---
|
|
7927
8381
|
DFUWorkunit.prototype.on = function (eventID, propIDorCallback, callback) {
|
|
7928
8382
|
var _this = this;
|
|
@@ -9046,5 +9500,5 @@ if (typeof root.btoa === "undefined") {
|
|
|
9046
9500
|
};
|
|
9047
9501
|
}
|
|
9048
9502
|
|
|
9049
|
-
export { AccessService, AccountService, Activity, Attr, Attribute, BUILD_VERSION, BaseScope, ClientTools, CloudService, CodesignService, Connection, DFUArrayActions, DFUChangeProtection, DFUChangeRestriction, DFUDefFileFormat, DFUService, DFUWorkunit, DFUWorkunitCache, DFUXRefService, DaliService, Definition, ECLGraph, ECLScope, ESPConnection, ESPExceptions, EclService, EclccErrors, ElkService, EnvchkErrors, Errors, Field, File, FileSprayService, Folder, GlobalResultCache, GraphCache, Import, LocalWorkunit, LogaccessService, LogicalFile, LogicalFileCache, Machine, MachineCache, MachineService, PKG_NAME, PKG_VERSION, PackageProcessService, Query, Resource, ResourcesService, Result, ResultCache, SMCService, Scope, ScopeEdge, ScopeGraph, ScopeSubgraph, ScopeVertex, Service, Source, SourceFile, Store, StoreCache, StoreService, TargetCluster, TargetClusterCache, Timer, Topology, TopologyCache, TopologyService, TpLogicalClusterQuery, ValueChangedMessage, Version, WUStateID$1 as WUStateID, WUUpdate, Workspace, Workunit, WorkunitCache, WorkunitsService, WorkunitsServiceEx, WsDfu, WsLogaccess, XGMMLEdge, XGMMLGraph, XGMMLSubgraph, XGMMLVertex, XSDNode, XSDSchema, XSDSimpleType, XSDXMLNode, attachWorkspace, clearAllClientToolsCache, createConnection, createGraph, createXGMMLGraph, defaultTargetCluster, deserializeResponse, get, hookSend, instanceOfIConnection, instanceOfIOptions, isArray, isECLResult, isExceptions, isWUInfoWorkunit, isWUQueryECLWorkunit, jsonp, locateAllClientTools, locateClientTools, parseXSD, parseXSD2, post, qualifiedIDBoundary, send, serializeRequest, setTransportFactory, targetClusters, walkXmlJson };
|
|
9503
|
+
export { AccessService, AccountService, Activity, Attr, Attribute, BUILD_VERSION, BaseScope, ClientTools, CloudService, CodesignService, Connection, DFUArrayActions, DFUChangeProtection, DFUChangeRestriction, DFUDefFileFormat, DFUService, DFUWorkunit, DFUWorkunitCache, DFUXRefService, DaliService, Definition, ECLGraph, ECLScope, ESPConnection, ESPExceptions, EclService, EclccErrors, ElkService, EnvchkErrors, Errors, Field, File, FileSpray, FileSprayService, Folder, GlobalResultCache, GraphCache, Import, LocalWorkunit, LogaccessService, LogicalFile, LogicalFileCache, Machine, MachineCache, MachineService, PKG_NAME, PKG_VERSION, PackageProcessService, Query, Resource, ResourcesService, Result, ResultCache, SMCService, Scope, ScopeEdge, ScopeGraph, ScopeSubgraph, ScopeVertex, Service, Source, SourceFile, Store, StoreCache, StoreService, TargetCluster, TargetClusterCache, Timer, Topology, TopologyCache, TopologyService, TpLogicalClusterQuery, ValueChangedMessage, Version, WUStateID$1 as WUStateID, WUUpdate, Workspace, Workunit, WorkunitCache, WorkunitsService, WorkunitsServiceEx, WsDfu, WsLogaccess, XGMMLEdge, XGMMLGraph, XGMMLSubgraph, XGMMLVertex, XSDNode, XSDSchema, XSDSimpleType, XSDXMLNode, attachWorkspace, clearAllClientToolsCache, createConnection, createGraph, createXGMMLGraph, defaultTargetCluster, deserializeResponse, get, hookSend, instanceOfIConnection, instanceOfIOptions, isArray, isECLResult, isExceptions, isWUInfoWorkunit, isWUQueryECLWorkunit, jsonp, locateAllClientTools, locateClientTools, parseXSD, parseXSD2, post, qualifiedIDBoundary, send, serializeRequest, setTransportFactory, targetClusters, walkXmlJson };
|
|
9050
9504
|
//# sourceMappingURL=index.es6.js.map
|