diff --git a/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/core/model/DataStore.java b/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/core/model/DataStore.java index 5df0f036073..fffe3420dbf 100644 --- a/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/core/model/DataStore.java +++ b/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/core/model/DataStore.java @@ -16,6 +16,7 @@ * Michael Berger (IBM) - 145799 added refresh() method with depth parameter. * David McKnight (IBM) - 202822 findDeleted should not be synchronized * David McKnight (IBM) [220123][dstore] Configurable timeout on irresponsiveness + * David McKnight (IBM) - [222168][dstore] Buffer in DataElement is not sent *******************************************************************************/ package org.eclipse.dstore.core.model; @@ -48,7 +49,9 @@ import org.eclipse.dstore.core.java.IRemoteClassInstance; import org.eclipse.dstore.core.java.RemoteClassLoader; import org.eclipse.dstore.core.util.StringCompare; import org.eclipse.dstore.extra.IDomainNotifier; +import org.eclipse.dstore.internal.core.client.ClientCommandHandler; import org.eclipse.dstore.internal.core.model.DefaultByteConverter; +import org.eclipse.dstore.internal.core.server.ServerUpdateHandler; import org.eclipse.dstore.internal.core.util.DataElementRemover; import org.eclipse.dstore.internal.core.util.ExternalLoader; import org.eclipse.dstore.internal.core.util.XMLgenerator; @@ -4362,4 +4365,23 @@ public final class DataStore return total; } + /** + * Indicates that the datastore should transfer a DataElement's buffer attribute + * in the communication layer + * @param flag true if the DataElement buffer attribute should be transfered + */ + public void setGenerateBuffer(boolean flag) + { + if (isVirtual()) + { + // client side + ((ClientCommandHandler)_commandHandler).setGenerateBuffer(flag); + } + else + { + // server side + ((ServerUpdateHandler)_updateHandler).setGenerateBuffer(flag); + } + } + } diff --git a/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/internal/core/client/ClientCommandHandler.java b/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/internal/core/client/ClientCommandHandler.java index aeb6540446f..c88bfcc9ee8 100644 --- a/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/internal/core/client/ClientCommandHandler.java +++ b/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/internal/core/client/ClientCommandHandler.java @@ -13,6 +13,7 @@ * * Contributors: * David McKnight (IBM) [220123][dstore] Configurable timeout on irresponsiveness + * David McKnight (IBM) [222168][dstore] Buffer in DataElement is not sent *******************************************************************************/ package org.eclipse.dstore.internal.core.client; @@ -380,4 +381,12 @@ public class ClientCommandHandler extends CommandHandler } } + /** + * Indicates whether the xml generator should transfer the buffer attribute of a DataElement + * @param flag true to transfer the buffer attribute + */ + public void setGenerateBuffer(boolean flag) + { + _sender.setGenerateBuffer(flag); + } } diff --git a/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/internal/core/server/ServerUpdateHandler.java b/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/internal/core/server/ServerUpdateHandler.java index e6ffc7b00b7..7f72432b5a5 100644 --- a/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/internal/core/server/ServerUpdateHandler.java +++ b/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/internal/core/server/ServerUpdateHandler.java @@ -12,7 +12,7 @@ * Emily Bruner, Mazen Faraj, Adrian Storisteanu, Li Ding, and Kent Hawley. * * Contributors: - * {Name} (company) - description of contribution. + * David McKnight (IBM) [222168][dstore] Buffer in DataElement is not sent *******************************************************************************/ package org.eclipse.dstore.internal.core.server; @@ -460,4 +460,17 @@ public class ServerUpdateHandler extends UpdateHandler super.waitForInput(); } } + + /** + * Indicates whether the xml generator should transfer the buffer attribute of a DataElement + * @param flag true to transfer the buffer attribute + */ + public void setGenerateBuffer(boolean flag) + { + for (int i = 0; i < _senders.size(); i++) + { + Sender sender = (Sender)_senders.get(i); + sender.setGenerateBuffer(flag); + } + } } diff --git a/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/internal/core/util/Sender.java b/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/internal/core/util/Sender.java index 0855b16c3ee..59249beba35 100644 --- a/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/internal/core/util/Sender.java +++ b/rse/plugins/org.eclipse.dstore.core/src/org/eclipse/dstore/internal/core/util/Sender.java @@ -12,7 +12,7 @@ * Emily Bruner, Mazen Faraj, Adrian Storisteanu, Li Ding, and Kent Hawley. * * Contributors: - * {Name} (company) - description of contribution. + * David McKnight (IBM) [222168][dstore] Buffer in DataElement is not sent *******************************************************************************/ package org.eclipse.dstore.internal.core.util; @@ -335,4 +335,14 @@ public class Sender implements ISender } } } + + + /** + * Indicates whether the xml generator should transfer the buffer attribute of a DataElement + * @param flag true to transfer the buffer attribute + */ + public void setGenerateBuffer(boolean flag) + { + _xmlGenerator.setGenerateBuffer(flag); + } }