Alon Bar-Lev has uploaded a new change for review.

Change subject: utils: ssh: optimize progress streams
......................................................................

utils: ssh: optimize progress streams

Default java implementation of filtered stream is byte-by-byte
operation.

Bypass behaviour to buffer methods.

Change-Id: I9a890581b324ae3f9223587e1eeb0c53675bd060
Signed-off-by: Alon Bar-Lev <alo...@redhat.com>
---
M 
backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ssh/ProgressInputStream.java
M 
backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ssh/ProgressOutputStream.java
2 files changed, 19 insertions(+), 2 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/70/9170/1

diff --git 
a/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ssh/ProgressInputStream.java
 
b/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ssh/ProgressInputStream.java
index 4e0ee26..b9ca26b 100644
--- 
a/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ssh/ProgressInputStream.java
+++ 
b/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ssh/ProgressInputStream.java
@@ -21,13 +21,23 @@
     @Override
     public int read(byte[] b, int off, int len)
     throws IOException {
-        int ret = super.read(b, off, len);
+        int ret = in.read(b, off, len);
         if (ret != -1) {
             this.index += ret;
         }
         return ret;
     }
 
+    @Override
+    public int read()
+    throws IOException {
+        int ret = in.read();
+        if (ret != -1) {
+            this.index++;
+        }
+        return ret;
+    }
+
     public boolean wasProgress() {
         if (this.index == 0) {
             return false;
diff --git 
a/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ssh/ProgressOutputStream.java
 
b/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ssh/ProgressOutputStream.java
index c109bf9..2aa0c4d 100644
--- 
a/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ssh/ProgressOutputStream.java
+++ 
b/backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ssh/ProgressOutputStream.java
@@ -21,10 +21,17 @@
     @Override
     public void write(byte[] b, int off, int len)
     throws IOException {
-        super.write(b, off, len);
+        out.write(b, off, len);
         this.index += len;
     }
 
+    @Override
+    public void write(int b)
+    throws IOException {
+        out.write(b);
+        this.index++;
+    }
+
     public boolean wasProgress() {
         if (this.index == 0) {
             return false;


--
To view, visit http://gerrit.ovirt.org/9170
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I9a890581b324ae3f9223587e1eeb0c53675bd060
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Alon Bar-Lev <alo...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to