You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by vo...@apache.org on 2016/07/27 06:56:13 UTC
[2/6] ignite git commit: WIP. Implemented message write logic.
WIP. Implemented message write logic.
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/72b4eb58
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/72b4eb58
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/72b4eb58
Branch: refs/heads/ignite-3553
Commit: 72b4eb581541163ed4b98ac97e5e26878f52ae89
Parents: 6917ec4
Author: vozerov-gridgain <vo...@gridgain.com>
Authored: Tue Jul 26 11:05:58 2016 +0300
Committer: vozerov-gridgain <vo...@gridgain.com>
Committed: Tue Jul 26 11:05:58 2016 +0300
----------------------------------------------------------------------
.../org/apache/ignite/internal/GridTopic.java | 5 +-
.../communication/GridIoMessageFactory.java | 12 ++
.../internal/processors/igfs/IgfsManager.java | 8 +-
.../igfs/client/IgfsClientAbstractCallable.java | 51 +++++++
.../igfs/client/IgfsClientAffinityCallable.java | 22 +++
.../igfs/client/IgfsClientClosureManager.java | 94 ++++++++++++
.../igfs/client/IgfsClientClosureRequest.java | 144 +++++++++++++++++++
.../igfs/client/IgfsClientClosureResponse.java | 32 +++++
.../igfs/client/IgfsClientDeleteCallable.java | 13 ++
.../igfs/client/IgfsClientMkdirsCallable.java | 14 ++
.../igfs/client/IgfsClientRenameCallable.java | 14 ++
.../igfs/client/IgfsClientSetTimesCallable.java | 19 +++
.../igfs/client/IgfsClientSizeCallable.java | 1 -
.../igfs/client/IgfsClientUpdateCallable.java | 14 ++
14 files changed, 437 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ignite/blob/72b4eb58/modules/core/src/main/java/org/apache/ignite/internal/GridTopic.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/GridTopic.java b/modules/core/src/main/java/org/apache/ignite/internal/GridTopic.java
index 248f75b..e5d47c0 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/GridTopic.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/GridTopic.java
@@ -94,7 +94,10 @@ public enum GridTopic {
TOPIC_QUERY,
/** */
- TOPIC_TX;
+ TOPIC_TX,
+
+ /** Topic to handle IGFS closures. */
+ TOPIC_IGFS_CLO;
/** Enum values. */
private static final GridTopic[] VALS = values();
http://git-wip-us.apache.org/repos/asf/ignite/blob/72b4eb58/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
index 5f60215..b0f75dc 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
@@ -120,6 +120,8 @@ import org.apache.ignite.internal.processors.igfs.IgfsFileAffinityRange;
import org.apache.ignite.internal.processors.igfs.IgfsFragmentizerRequest;
import org.apache.ignite.internal.processors.igfs.IgfsFragmentizerResponse;
import org.apache.ignite.internal.processors.igfs.IgfsSyncMessage;
+import org.apache.ignite.internal.processors.igfs.client.IgfsClientClosureRequest;
+import org.apache.ignite.internal.processors.igfs.client.IgfsClientClosureResponse;
import org.apache.ignite.internal.processors.query.h2.twostep.messages.GridQueryCancelRequest;
import org.apache.ignite.internal.processors.query.h2.twostep.messages.GridQueryFailResponse;
import org.apache.ignite.internal.processors.query.h2.twostep.messages.GridQueryNextPageRequest;
@@ -160,6 +162,16 @@ public class GridIoMessageFactory implements MessageFactory {
Message msg = null;
switch (type) {
+ case -28:
+ msg = new IgfsClientClosureResponse();
+
+ break;
+
+ case -27:
+ msg = new IgfsClientClosureRequest();
+
+ break;
+
case -26:
msg = new TxLockList();
http://git-wip-us.apache.org/repos/asf/ignite/blob/72b4eb58/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsManager.java
index 1217d0b..cdd277b 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/IgfsManager.java
@@ -129,27 +129,27 @@ public abstract class IgfsManager {
* @return Start info.
*/
protected String startInfo() {
- return "Cache manager started: " + getClass().getSimpleName();
+ return "IGFS manager started: " + getClass().getSimpleName();
}
/**
* @return Stop info.
*/
protected String stopInfo() {
- return "Cache manager stopped: " + getClass().getSimpleName();
+ return "IGFS manager stopped: " + getClass().getSimpleName();
}
/**
* @return Start info.
*/
protected String kernalStartInfo() {
- return "Cache manager received onKernalStart() callback: " + getClass().getSimpleName();
+ return "IGFS manager received onKernalStart() callback: " + getClass().getSimpleName();
}
/**
* @return Stop info.
*/
protected String kernalStopInfo() {
- return "Cache manager received onKernalStop() callback: " + getClass().getSimpleName();
+ return "IGFS manager received onKernalStop() callback: " + getClass().getSimpleName();
}
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ignite/blob/72b4eb58/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientAbstractCallable.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientAbstractCallable.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientAbstractCallable.java
index d9c3456..85d4aea 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientAbstractCallable.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientAbstractCallable.java
@@ -29,6 +29,7 @@ import org.apache.ignite.internal.processors.igfs.IgfsContext;
import org.apache.ignite.internal.processors.igfs.IgfsEx;
import org.apache.ignite.internal.processors.igfs.IgfsUtils;
import org.apache.ignite.lang.IgniteCallable;
+import org.apache.ignite.plugin.extensions.communication.MessageWriter;
import org.apache.ignite.resources.IgniteInstanceResource;
import org.jetbrains.annotations.Nullable;
@@ -39,6 +40,9 @@ public abstract class IgfsClientAbstractCallable<T> implements IgniteCallable<T>
/** */
private static final long serialVersionUID = 0L;
+ /** Base fields count. */
+ private static final byte BASE_FIELDS_CNT = 2;
+
/** IGFS name. */
protected String igfsName;
@@ -122,4 +126,51 @@ public abstract class IgfsClientAbstractCallable<T> implements IgniteCallable<T>
protected void readBinary0(BinaryRawReader rawReader) {
// No-op.
}
+
+ /**
+ * @return Fields count.
+ */
+ public final byte fieldsCount() {
+ return (byte)(BASE_FIELDS_CNT + fieldsCount0());
+ }
+
+ /**
+ * @return Additional fields count of concrete class.
+ */
+ protected byte fieldsCount0() {
+ return 0;
+ }
+
+ /**
+ * Write callable to writer.
+ *
+ * @param writer Writer.
+ * @param fieldId Field ID.
+ * @return Result.
+ */
+ public final boolean writeTo(MessageWriter writer, int fieldId) {
+ switch (fieldId) {
+ case 0:
+ return writer.writeString("igfsName", igfsName);
+
+ case 1:
+ return writer.writeString("path", path.toString());
+
+ default:
+ return writeTo0(writer, fieldId - BASE_FIELDS_CNT);
+ }
+ }
+
+ /**
+ * Write callable to writer (for child classes).
+ *
+ * @param writer Writer.
+ * @param fieldId Field ID.
+ * @return Result.
+ */
+ protected boolean writeTo0(MessageWriter writer, int fieldId) {
+ assert false : "Should not be called.";
+
+ return true;
+ }
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/72b4eb58/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientAffinityCallable.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientAffinityCallable.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientAffinityCallable.java
index 1668f36..3a63b77 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientAffinityCallable.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientAffinityCallable.java
@@ -24,6 +24,7 @@ import org.apache.ignite.igfs.IgfsBlockLocation;
import org.apache.ignite.igfs.IgfsPath;
import org.apache.ignite.internal.processors.igfs.IgfsContext;
import org.apache.ignite.internal.util.typedef.internal.S;
+import org.apache.ignite.plugin.extensions.communication.MessageWriter;
import org.jetbrains.annotations.Nullable;
import java.util.Collection;
@@ -88,6 +89,27 @@ public class IgfsClientAffinityCallable extends IgfsClientAbstractCallable<Colle
}
/** {@inheritDoc} */
+ @Override protected byte fieldsCount0() {
+ return 3;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected boolean writeTo0(MessageWriter writer, int fieldId) {
+ switch (fieldId) {
+ case 0:
+ return writer.writeLong("start", start);
+
+ case 1:
+ return writer.writeLong("len", len);
+
+ default:
+ assert fieldId == 2;
+
+ return writer.writeLong("maxLen", maxLen);
+ }
+ }
+
+ /** {@inheritDoc} */
@Override public String toString() {
return S.toString(IgfsClientAffinityCallable.class, this);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/72b4eb58/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientClosureManager.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientClosureManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientClosureManager.java
new file mode 100644
index 0000000..7230cf2
--- /dev/null
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientClosureManager.java
@@ -0,0 +1,94 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.internal.processors.igfs.client;
+
+import org.apache.ignite.IgniteCheckedException;
+import org.apache.ignite.configuration.FileSystemConfiguration;
+import org.apache.ignite.internal.GridKernalContext;
+import org.apache.ignite.internal.managers.eventstorage.GridLocalEventListener;
+import org.apache.ignite.internal.processors.igfs.IgfsManager;
+import org.apache.ignite.internal.util.GridStripedSpinBusyLock;
+import org.apache.ignite.internal.util.typedef.internal.S;
+import org.apache.ignite.marshaller.Marshaller;
+
+import java.util.concurrent.ConcurrentLinkedDeque;
+
+/**
+ * Manager to handle IGFS client closures.
+ */
+public class IgfsClientClosureManager extends IgfsManager {
+ /** Busy lock. */
+ private final GridStripedSpinBusyLock busyLock = new GridStripedSpinBusyLock();
+
+ /** Pending closures received when manager is not started yet. */
+ private final ConcurrentLinkedDeque startupClos = new ConcurrentLinkedDeque();
+
+ /** Kernal context. */
+ private GridKernalContext ctx;
+
+ /** IGFS configuration. */
+ private FileSystemConfiguration igfsCfg;
+
+ /** Marshaller. */
+ private Marshaller marsh;
+
+ /** {@inheritDoc} */
+ @Override protected void start0() throws IgniteCheckedException {
+ ctx = igfsCtx.kernalContext();
+
+ igfsCfg = igfsCtx.configuration();
+
+ marsh = ctx.config().getMarshaller();
+
+ ctx.discovery().setCustomEventListener();
+ }
+
+ /** {@inheritDoc} */
+ @Override protected void onKernalStart0() throws IgniteCheckedException {
+ // TODO
+ }
+
+ /** {@inheritDoc} */
+ @Override protected void onKernalStop0(boolean cancel) {
+ // TODO
+ }
+
+ /** {@inheritDoc} */
+ @Override protected void stop0(boolean cancel) {
+ // TODO
+ }
+
+ /**
+ * Execute callable.
+ *
+ * @param clo Closure.
+ * @return Result.
+ */
+ public <T> T execute(IgfsClientAbstractCallable<T> clo) {
+
+ }
+
+ /** {@inheritDoc} */
+ @Override public String toString() {
+ return S.toString(IgfsClientClosureManager.class, this);
+ }
+
+ private class DiscoveryListener implements GridLocalEventListener {
+
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/72b4eb58/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientClosureRequest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientClosureRequest.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientClosureRequest.java
new file mode 100644
index 0000000..a0bc3f4
--- /dev/null
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientClosureRequest.java
@@ -0,0 +1,144 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.internal.processors.igfs.client;
+
+import org.apache.ignite.plugin.extensions.communication.Message;
+import org.apache.ignite.plugin.extensions.communication.MessageReader;
+import org.apache.ignite.plugin.extensions.communication.MessageWriter;
+
+import java.nio.ByteBuffer;
+import java.util.UUID;
+
+/**
+ * IGFS client closure execute request.
+ */
+public class IgfsClientClosureRequest implements Message {
+ /** Base fields (all except of target) count. */
+ private static final byte BASE_FIELDS_CNT = 2;
+
+ /** Originating node ID. */
+ private UUID nodeId;
+
+ /** Message ID. */
+ private long msgId;
+
+ /** Target callable. */
+ private IgfsClientAbstractCallable target;
+
+ /**
+ * Default constructor.
+ */
+ public IgfsClientClosureRequest() {
+ // No-op.
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param nodeId Originating node ID.
+ * @param msgId Message ID.
+ * @param target Target callable.
+ */
+ public IgfsClientClosureRequest(UUID nodeId, long msgId, IgfsClientAbstractCallable target) {
+ assert nodeId != null;
+ assert target != null;
+
+ this.nodeId = nodeId;
+ this.msgId = msgId;
+ this.target = target;
+ }
+
+ /**
+ * @return Node ID.
+ */
+ public UUID nodeId() {
+ return nodeId;
+ }
+
+ /**
+ * @return Message ID.
+ */
+ public long messageId() {
+ return msgId;
+ }
+
+ /**
+ * @return Target callable.
+ */
+ public IgfsClientAbstractCallable target() {
+ return target;
+ }
+
+ /** {@inheritDoc} */
+ @Override public byte directType() {
+ return -27;
+ }
+
+ /** {@inheritDoc} */
+ @Override public byte fieldsCount() {
+ return (byte)(BASE_FIELDS_CNT + target.fieldsCount());
+ }
+
+ /** {@inheritDoc} */
+ @Override public void onAckReceived() {
+ // No-op.
+ }
+
+ /** {@inheritDoc} */
+ @Override public boolean writeTo(ByteBuffer buf, MessageWriter writer) {
+ byte fieldsCount = fieldsCount();
+
+ writer.setBuffer(buf);
+
+ if (!writer.isHeaderWritten()) {
+ if (!writer.writeHeader(directType(), fieldsCount))
+ return false;
+
+ writer.onHeaderWritten();
+ }
+
+ switch (writer.state()) {
+ case 0:
+ if (!writer.writeUuid("nodeId", nodeId))
+ return false;
+
+ writer.incrementState();
+
+ case 1:
+ if (!writer.writeLong("msgId", msgId))
+ return false;
+
+ writer.incrementState();
+
+ default:
+ while (writer.state() < fieldsCount) {
+ if (!target.writeTo(writer, writer.state() - BASE_FIELDS_CNT))
+ return false;
+
+ writer.incrementState();
+ }
+ }
+
+ return true;
+ }
+
+ /** {@inheritDoc} */
+ @Override public boolean readFrom(ByteBuffer buf, MessageReader reader) {
+ return false;
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/72b4eb58/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientClosureResponse.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientClosureResponse.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientClosureResponse.java
new file mode 100644
index 0000000..3a7694a
--- /dev/null
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientClosureResponse.java
@@ -0,0 +1,32 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.ignite.internal.processors.igfs.client;
+
+import org.apache.ignite.plugin.extensions.communication.Message;
+
+/**
+ * CIGFS client closure execute response.
+ */
+public class IgfsClientClosureResponse implements Message {
+ /**
+ * Default constructor.
+ */
+ public IgfsClientClosureResponse() {
+ // No-op.
+ }
+}
http://git-wip-us.apache.org/repos/asf/ignite/blob/72b4eb58/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientDeleteCallable.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientDeleteCallable.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientDeleteCallable.java
index c1b8be8..9f12ea9 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientDeleteCallable.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientDeleteCallable.java
@@ -23,6 +23,7 @@ import org.apache.ignite.binary.BinaryRawWriter;
import org.apache.ignite.igfs.IgfsPath;
import org.apache.ignite.internal.processors.igfs.IgfsContext;
import org.apache.ignite.internal.util.typedef.internal.S;
+import org.apache.ignite.plugin.extensions.communication.MessageWriter;
import org.jetbrains.annotations.Nullable;
/**
@@ -71,6 +72,18 @@ public class IgfsClientDeleteCallable extends IgfsClientAbstractCallable<Boolean
}
/** {@inheritDoc} */
+ @Override protected byte fieldsCount0() {
+ return 1;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected boolean writeTo0(MessageWriter writer, int fieldId) {
+ assert fieldId == 0;
+
+ return writer.writeBoolean("recursive", recursive);
+ }
+
+ /** {@inheritDoc} */
@Override public String toString() {
return S.toString(IgfsClientDeleteCallable.class, this);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/72b4eb58/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientMkdirsCallable.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientMkdirsCallable.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientMkdirsCallable.java
index 944da6f..e8ca351 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientMkdirsCallable.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientMkdirsCallable.java
@@ -24,6 +24,8 @@ import org.apache.ignite.igfs.IgfsPath;
import org.apache.ignite.internal.processors.igfs.IgfsContext;
import org.apache.ignite.internal.processors.igfs.IgfsUtils;
import org.apache.ignite.internal.util.typedef.internal.S;
+import org.apache.ignite.plugin.extensions.communication.MessageCollectionItemType;
+import org.apache.ignite.plugin.extensions.communication.MessageWriter;
import org.jetbrains.annotations.Nullable;
import java.util.Map;
@@ -76,6 +78,18 @@ public class IgfsClientMkdirsCallable extends IgfsClientAbstractCallable<Void> {
}
/** {@inheritDoc} */
+ @Override protected byte fieldsCount0() {
+ return 1;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected boolean writeTo0(MessageWriter writer, int fieldId) {
+ assert fieldId == 0;
+
+ return writer.writeMap("props", props, MessageCollectionItemType.STRING, MessageCollectionItemType.STRING);
+ }
+
+ /** {@inheritDoc} */
@Override public String toString() {
return S.toString(IgfsClientMkdirsCallable.class, this);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/72b4eb58/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientRenameCallable.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientRenameCallable.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientRenameCallable.java
index 55afb83..e9cc947 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientRenameCallable.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientRenameCallable.java
@@ -24,6 +24,8 @@ import org.apache.ignite.igfs.IgfsPath;
import org.apache.ignite.internal.processors.igfs.IgfsContext;
import org.apache.ignite.internal.processors.igfs.IgfsUtils;
import org.apache.ignite.internal.util.typedef.internal.S;
+import org.apache.ignite.plugin.extensions.communication.MessageCollectionItemType;
+import org.apache.ignite.plugin.extensions.communication.MessageWriter;
import org.jetbrains.annotations.Nullable;
/**
@@ -74,6 +76,18 @@ public class IgfsClientRenameCallable extends IgfsClientAbstractCallable<Void> {
}
/** {@inheritDoc} */
+ @Override protected byte fieldsCount0() {
+ return 1;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected boolean writeTo0(MessageWriter writer, int fieldId) {
+ assert fieldId == 0;
+
+ return writer.writeString("destPath", destPath.toString());
+ }
+
+ /** {@inheritDoc} */
@Override public String toString() {
return S.toString(IgfsClientRenameCallable.class, this);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/72b4eb58/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientSetTimesCallable.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientSetTimesCallable.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientSetTimesCallable.java
index 277effc..f1beb54 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientSetTimesCallable.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientSetTimesCallable.java
@@ -23,6 +23,7 @@ import org.apache.ignite.binary.BinaryRawWriter;
import org.apache.ignite.igfs.IgfsPath;
import org.apache.ignite.internal.processors.igfs.IgfsContext;
import org.apache.ignite.internal.util.typedef.internal.S;
+import org.apache.ignite.plugin.extensions.communication.MessageWriter;
import org.jetbrains.annotations.Nullable;
/**
@@ -81,6 +82,24 @@ public class IgfsClientSetTimesCallable extends IgfsClientAbstractCallable<Void>
}
/** {@inheritDoc} */
+ @Override protected byte fieldsCount0() {
+ return 2;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected boolean writeTo0(MessageWriter writer, int fieldId) {
+ switch (fieldId) {
+ case 0:
+ return writer.writeLong("accessTime", accessTime);
+
+ default:
+ assert fieldId == 1;
+
+ return writer.writeLong("modificationTime", modificationTime);
+ }
+ }
+
+ /** {@inheritDoc} */
@Override public String toString() {
return S.toString(IgfsClientSetTimesCallable.class, this);
}
http://git-wip-us.apache.org/repos/asf/ignite/blob/72b4eb58/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientSizeCallable.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientSizeCallable.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientSizeCallable.java
index 474a940..928d65d 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientSizeCallable.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientSizeCallable.java
@@ -17,7 +17,6 @@
package org.apache.ignite.internal.processors.igfs.client;
-import org.apache.ignite.igfs.IgfsFile;
import org.apache.ignite.igfs.IgfsPath;
import org.apache.ignite.internal.processors.igfs.IgfsContext;
import org.apache.ignite.internal.util.typedef.internal.S;
http://git-wip-us.apache.org/repos/asf/ignite/blob/72b4eb58/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientUpdateCallable.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientUpdateCallable.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientUpdateCallable.java
index 4acf4eb..a03c7e6 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientUpdateCallable.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/igfs/client/IgfsClientUpdateCallable.java
@@ -25,6 +25,8 @@ import org.apache.ignite.igfs.IgfsPath;
import org.apache.ignite.internal.processors.igfs.IgfsContext;
import org.apache.ignite.internal.processors.igfs.IgfsUtils;
import org.apache.ignite.internal.util.typedef.internal.S;
+import org.apache.ignite.plugin.extensions.communication.MessageCollectionItemType;
+import org.apache.ignite.plugin.extensions.communication.MessageWriter;
import org.jetbrains.annotations.Nullable;
import java.util.Map;
@@ -75,6 +77,18 @@ public class IgfsClientUpdateCallable extends IgfsClientAbstractCallable<IgfsFil
}
/** {@inheritDoc} */
+ @Override protected byte fieldsCount0() {
+ return 1;
+ }
+
+ /** {@inheritDoc} */
+ @Override protected boolean writeTo0(MessageWriter writer, int fieldId) {
+ assert fieldId == 0;
+
+ return writer.writeMap("props", props, MessageCollectionItemType.STRING, MessageCollectionItemType.STRING);
+ }
+
+ /** {@inheritDoc} */
@Override public String toString() {
return S.toString(IgfsClientUpdateCallable.class, this);
}