Parameter User = "irisusr";

/// Get memory consumed by irisusr
/// w ##class().GetCurrentMemory()
ClassMethod GetCurrentMemory() As %Integer
{
    Set cmd = "smem"
    Set args = 8
    Set args(1) = "-u"
    Set args(2) = ..#User
    Set args(3) = "|"
    Set args(4) = "grep"
    Set args(5) = ..#User
    Set args(6) = "|"
    Set args(7) = "awk"
    Set args(8) = "'{print $6}'"
    Set sc = ..RunCommandViaZF(cmd,,.rss,,, .code, .args)
    If $$$ISOK(sc){
        Set rss = +rss
        Set ^rss($zdt($h, 3, 1)) = rss
    } Else {
        Set rss = ..#MemoryMax
    }
    Quit rss
}

/// w ##class().GetTotalMemory()
ClassMethod GetTotalMemory() As %Integer
{
    Set cmd = "free"
    Set args = 6
    Set args(1) = "|"
    Set args(2) = "grep"
    Set args(3) = "Mem"
    Set args(4) = "|"
    Set args(5) = "awk"
    Set args(6) = "'{print $2}'"
    Set sc = ..RunCommandViaZF(cmd,,.total,,, .code, .args)
    If $$$ISOK(sc){
        Set total = +total
    } Else {
        Set total = 0
    }
    Quit total
}
/// Run a command using $ZF(-100) and an external temporary file to store the command output. <br>
/// If <var>pDeleteTempFile</var> is 0 (false), the temporary file is not deleted; in this case, it is up to the caller to delete it when done with it.
ClassMethod RunCommandViaZF(pCmd As %String, Output pTempFileName As %String, Output pOutput As %String, pOpenTimeout As %Integer = 5, pDeleteTempFile As %Boolean = 1, Output pRetCode As %String, ByRef pCmdArgs, pAsynchronous As %Boolean = 0) As %Status
{
    Set tSC = $$$OK
    Set pOutput = ""
    Set pRetCode = ""
    Set IO = $IO
    Set ZEOFMode = $ZU(68,40,1)
    Set pTempFileName = ""
    Try {
        Set (tFile,pTempFileName) = ##class(%File).TempFilename("txt")
        If tFile="" Set tSC = $$$ERROR($$$ObjectScriptError, "Failed to obtain a temporary file name") Quit
        Set cmdFlags = "/SHELL /NOQUOTE " _ $Select(pAsynchronous:"/ASYNC",1:"") _"/STDOUT="""_tFile_"""/STDERR="""_tFile_""""
        Set pRetCode = $ZF(-100,cmdFlags,pCmd,.pCmdArgs)
        Close tFile Open tFile:("RS"):pOpenTimeout
        If '$T Set tSC = $$$ERROR($$$ObjectScriptError, "Failed to open temporary file '"_tFile_"'") Quit
        Set TooMuch = 0
        Use tFile
        For {
            // Keep reading through end of file; save only first 32,000 characters
            Set tLine = "" Read tLine:1
            If '$T && (tLine=$C(-1)) Quit  // Exit by timeout
            If 'TooMuch {
                Set:pOutput'="" pOutput = pOutput_$C(13,10)
                If $L(pOutput)+$l(tLine)<32000 {
                    Set pOutput = pOutput_tLine
                }
                Else {
                    Set pOutput = pOutput_$E(tLine,1,32000-$L(pOutput))_" (more...)"
                    Set TooMuch = 1
                }
            }
            If ($ZEOF=-1) Quit  // Exit by EOF
        }
    }
    Catch (ex) {
        Set tSC = ex.AsStatus()
    }
    Try {
        If pDeleteTempFile {
            Close tFile:"D"
        }
        Else {
            Close tFile
        }
    } Catch (ex) {
        // don't overwrite the error status if it's already populated
        Set:$$$ISOK(tSC) tSC = ex.AsStatus()
    }
    If 'ZEOFMode Do $ZU(68,40,0) // Restore ZEOF mode
    Use IO
    Quit tSC
}

1. You have whitespaces after commas. It should be:

Parameter SETTINGS = "-DeleteFromServer,-ArchivePath,RemoteArchive,TargetConfigNames";

Also I think you're defining your settings in Operation? I'm not sure it would work. I think you need to redefine adapter settings in adapter, like so:

Class App.FTP.InboundAdapter Extends EnsLib.FTP.InboundAdapter {

Parameter SETTINGS = "-DeleteFromServer,-ArchivePath";

}

Not sure why you're including RemoteArchive in your settings, as it's already there in ancestors. I removed it.

After that use your new adapter in your operation.

2. What does $classname(..Adapter.FTP) return?