mina-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Goldstein Lyor (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (SSHD-530) Separate buffer decoding from processing in SFTP subsytem implementation
Date Tue, 07 Jul 2015 08:13:05 GMT

     [ https://issues.apache.org/jira/browse/SSHD-530?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Goldstein Lyor resolved SSHD-530.
---------------------------------
    Resolution: Fixed

This also helped detect (and fix) a subtle bug. The previous code looked like this:
{code:java}
protected void doSomething(int id, Buffer buffer) throws IOException {
    try {
       ...calculate the response...
       send(...response...);
    } catch(IOException e) {
        sendStatus(id, e);
    }
}
{code}
The problem was that _send_ might throw an _IOException_ as well, in which case _sendStatus_
of the _catch_ clause is invoked. Usually it will most likely fail as well with an _IOException_,
but not necessarily. The new code has the following template:
{code:java}
protected void doSomething(int id, Buffer buffer) throws IOException {
    try {
       ...calculate the response...
    } catch(IOException | RuntimeException e) {
        sendStatus(id, e);
        return;
    }

    send(....response...)
}
{code}
This way, any _IOException/RuntimeException_ occurring during the response calculation phase
are sent as a status, whereas an _IOException_ occurring during the response sending is propagated
(as it should be)

> Separate buffer decoding from processing in SFTP subsytem implementation
> ------------------------------------------------------------------------
>
>                 Key: SSHD-530
>                 URL: https://issues.apache.org/jira/browse/SSHD-530
>             Project: MINA SSHD
>          Issue Type: Improvement
>    Affects Versions: 1.0.0
>            Reporter: Goldstein Lyor
>            Assignee: Goldstein Lyor
>             Fix For: 1.0.0
>
>
> Facilitate easier extension of the implementation as well as first step towards implementing
an _SftpEventListener_



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message