I can check the write-access to a folder by trying to write a file in it. But, I am looking for a more elegant solution.

I am testing it using Ensemble-service and terminal both. The results are the same.

I tried issuing "Open" command on a directory. But it always returns the failure "NOTOPEN", irrespective of the fact whether the directory has write-access or not. So, this does not resolve the issue I am facing.

Yes, I have blocked the user-account which Cache-service is running in.

As I wanted to get the custom error-code along with the custom error-text, I used the regex-class "%Regex.Matcher" to pull the content/custom-text within the parenthesis in the error-text.  This served my purpose.  Thanks for looking into it... :-)

Here is the modified code:

Class ISG.CommonBilling.Service.Test1 Extends EnsLib.HL7.Operation.TCPOperation
{

ClassMethod khalid() As %Status
{
Set tSC=$$$ERROR("10001","I am here")
write $$$GETERRORCODE(tSC)_$char(13,10)
write ##class(%Regex.Matcher).%New(".*\((.*)\).*",$SYSTEM.Status.GetErrorText(tSC)).ReplaceAll("$1")
}

}

 

Output:

KINDRED>do ##class(ISG.CommonBilling.Service.Test1).khalid()
10001
I am here

Setting the "Enabled Ciphersuites" to "DEFAULT:!DH" worked. Thanks...