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 2015/09/22 17:02:06 UTC

[32/51] [partial] ignite git commit: IGNITE-1513: Finalized build procedure.

http://git-wip-us.apache.org/repos/asf/ignite/blob/f0bac562/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/CacheQueryReadEvent.cs
----------------------------------------------------------------------
diff --git a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/CacheQueryReadEvent.cs b/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/CacheQueryReadEvent.cs
deleted file mode 100644
index 7338eab..0000000
--- a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/CacheQueryReadEvent.cs
+++ /dev/null
@@ -1,134 +0,0 @@
-/*
- * 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.
- */
-
-namespace Apache.Ignite.Core.Events
-{
-    using System;
-    using Apache.Ignite.Core.Portable;
-
-    /// <summary>
-    /// Cache query read event.
-    /// </summary>
-    public sealed class CacheQueryReadEvent : EventBase
-	{
-        /** */
-        private readonly string _queryType;
-
-        /** */
-        private readonly string _cacheName;
-
-        /** */
-        private readonly string _className;
-
-        /** */
-        private readonly string _clause;
-
-        /** */
-        private readonly Guid _subjectId;
-
-        /** */
-        private readonly string _taskName;
-
-        /** */
-        private readonly object _key;
-
-        /** */
-        private readonly object _value;
-
-        /** */
-        private readonly object _oldValue;
-
-        /** */
-        private readonly object _row;
-
-        /// <summary>
-        /// Constructor.
-        /// </summary>
-        /// <param name="r">The reader to read data from.</param>
-        internal CacheQueryReadEvent(IPortableRawReader r) : base(r)
-        {
-            _queryType = r.ReadString();
-            _cacheName = r.ReadString();
-            _className = r.ReadString();
-            _clause = r.ReadString();
-            _subjectId = r.ReadGuid() ?? Guid.Empty;
-            _taskName = r.ReadString();
-            _key = r.ReadObject<object>();
-            _value = r.ReadObject<object>();
-            _oldValue = r.ReadObject<object>();
-            _row = r.ReadObject<object>();
-        }
-		
-        /// <summary>
-        /// Gets query type. 
-        /// </summary>
-        public string QueryType { get { return _queryType; } }
-
-        /// <summary>
-        /// Gets cache name on which query was executed. 
-        /// </summary>
-        public string CacheName { get { return _cacheName; } }
-
-        /// <summary>
-        /// Gets queried class name. Applicable for SQL and full text queries. 
-        /// </summary>
-        public string ClassName { get { return _className; } }
-
-        /// <summary>
-        /// Gets query clause. Applicable for SQL, SQL fields and full text queries. 
-        /// </summary>
-        public string Clause { get { return _clause; } }
-
-        /// <summary>
-        /// Gets security subject ID. 
-        /// </summary>
-        public Guid SubjectId { get { return _subjectId; } }
-
-        /// <summary>
-        /// Gets the name of the task that executed the query (if any). 
-        /// </summary>
-        public string TaskName { get { return _taskName; } }
-
-        /// <summary>
-        /// Gets read entry key. 
-        /// </summary>
-        public object Key { get { return _key; } }
-
-        /// <summary>
-        /// Gets read entry value. 
-        /// </summary>
-        public object Value { get { return _value; } }
-
-        /// <summary>
-        /// Gets read entry old value (applicable for continuous queries). 
-        /// </summary>
-        public object OldValue { get { return _oldValue; } }
-
-        /// <summary>
-        /// Gets read results set row. 
-        /// </summary>
-        public object Row { get { return _row; } }
-
-        /** <inheritDoc /> */
-	    public override string ToShortString()
-	    {
-	        return string.Format("{0}: QueryType={1}, CacheName={2}, ClassName={3}, Clause={4}, SubjectId={5}, " +
-	                             "TaskName={6}, Key={7}, Value={8}, OldValue={9}, Row={10}", Name, QueryType, 
-                                 CacheName, ClassName, Clause, SubjectId, TaskName, Key, Value, OldValue, Row);
-	    }
-    }
-}

http://git-wip-us.apache.org/repos/asf/ignite/blob/f0bac562/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/CacheRebalancingEvent.cs
----------------------------------------------------------------------
diff --git a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/CacheRebalancingEvent.cs b/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/CacheRebalancingEvent.cs
deleted file mode 100644
index 656550a..0000000
--- a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/CacheRebalancingEvent.cs
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * 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.
- */
-
-namespace Apache.Ignite.Core.Events
-{
-    using Apache.Ignite.Core.Cluster;
-    using Apache.Ignite.Core.Portable;
-
-    /// <summary>
-    /// In-memory database (cache) rebalancing event. Rebalance event happens every time there is a change
-    /// </summary>
-    public sealed class CacheRebalancingEvent : EventBase
-	{
-        /** */
-        private readonly string _cacheName;
-
-        /** */
-        private readonly int _partition;
-
-        /** */
-        private readonly IClusterNode _discoveryNode;
-
-        /** */
-        private readonly int _discoveryEventType;
-
-        /** */
-        private readonly string _discoveryEventName;
-
-        /** */
-        private readonly long _discoveryTimestamp;
-
-        /// <summary>
-        /// Constructor.
-        /// </summary>
-        /// <param name="r">The reader to read data from.</param>
-        internal CacheRebalancingEvent(IPortableRawReader r) : base(r)
-        {
-            _cacheName = r.ReadString();
-            _partition = r.ReadInt();
-            _discoveryNode = ReadNode(r);
-            _discoveryEventType = r.ReadInt();
-            _discoveryEventName = r.ReadString();
-            _discoveryTimestamp = r.ReadLong();
-        }
-		
-        /// <summary>
-        /// Gets cache name. 
-        /// </summary>
-        public string CacheName { get { return _cacheName; } }
-
-        /// <summary>
-        /// Gets partition for the event. 
-        /// </summary>
-        public int Partition { get { return _partition; } }
-
-        /// <summary>
-        /// Gets shadow of the node that triggered this rebalancing event. 
-        /// </summary>
-        public IClusterNode DiscoveryNode { get { return _discoveryNode; } }
-
-        /// <summary>
-        /// Gets type of discovery event that triggered this rebalancing event. 
-        /// </summary>
-        public int DiscoveryEventType { get { return _discoveryEventType; } }
-
-        /// <summary>
-        /// Gets name of discovery event that triggered this rebalancing event. 
-        /// </summary>
-        public string DiscoveryEventName { get { return _discoveryEventName; } }
-
-        /// <summary>
-        /// Gets timestamp of discovery event that caused this rebalancing event. 
-        /// </summary>
-        public long DiscoveryTimestamp { get { return _discoveryTimestamp; } }
-
-        /** <inheritDoc /> */
-	    public override string ToShortString()
-	    {
-	        return string.Format("{0}: CacheName={1}, Partition={2}, DiscoveryNode={3}, DiscoveryEventType={4}, " +
-	                             "DiscoveryEventName={5}, DiscoveryTimestamp={6}", Name, CacheName, Partition,
-	                             DiscoveryNode, DiscoveryEventType, DiscoveryEventName, DiscoveryTimestamp);
-	    }
-    }
-}

http://git-wip-us.apache.org/repos/asf/ignite/blob/f0bac562/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/CheckpointEvent.cs
----------------------------------------------------------------------
diff --git a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/CheckpointEvent.cs b/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/CheckpointEvent.cs
deleted file mode 100644
index 7b7ea59..0000000
--- a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/CheckpointEvent.cs
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * 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.
- */
-
-namespace Apache.Ignite.Core.Events
-{
-    using Apache.Ignite.Core.Portable;
-
-    /// <summary>
-    /// Grid checkpoint event.
-    /// </summary>
-    public sealed class CheckpointEvent : EventBase
-	{
-        /** */
-        private readonly string _key;
-
-        /// <summary>
-        /// Constructor.
-        /// </summary>
-        /// <param name="r">The reader to read data from.</param>
-        internal CheckpointEvent(IPortableRawReader r) : base(r)
-        {
-            _key = r.ReadString();
-        }
-		
-        /// <summary>
-        /// Gets checkpoint key associated with this event. 
-        /// </summary>
-        public string Key { get { return _key; } }
-
-        /** <inheritDoc /> */
-	    public override string ToShortString()
-	    {
-	        return string.Format("{0}: Key={1}", Name, Key);
-	    }
-    }
-}

http://git-wip-us.apache.org/repos/asf/ignite/blob/f0bac562/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/DiscoveryEvent.cs
----------------------------------------------------------------------
diff --git a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/DiscoveryEvent.cs b/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/DiscoveryEvent.cs
deleted file mode 100644
index 5b5443c..0000000
--- a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/DiscoveryEvent.cs
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * 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.
- */
-
-namespace Apache.Ignite.Core.Events
-{
-    using System.Collections.Generic;
-    using System.Collections.ObjectModel;
-    using Apache.Ignite.Core.Cluster;
-    using Apache.Ignite.Core.Impl;
-    using Apache.Ignite.Core.Portable;
-
-    /// <summary>
-    /// Grid discovery event.
-    /// </summary>
-    public sealed class DiscoveryEvent : EventBase
-	{
-        /** */
-        private readonly IClusterNode _eventNode;
-
-        /** */
-        private readonly long _topologyVersion;
-
-        /** */
-        private readonly ReadOnlyCollection<IClusterNode> _topologyNodes;
-
-        /// <summary>
-        /// Constructor.
-        /// </summary>
-        /// <param name="r">The reader to read data from.</param>
-        internal DiscoveryEvent(IPortableRawReader r) : base(r)
-        {
-            _eventNode = ReadNode(r);
-            _topologyVersion = r.ReadLong();
-
-            var nodes = IgniteUtils.ReadNodes(r);
-
-            _topologyNodes = nodes == null ? null : new ReadOnlyCollection<IClusterNode>(nodes);
-        }
-
-        /// <summary>
-        /// Gets node that caused this event to be generated. It is potentially different from the node on which this 
-        /// event was recorded. For example, node A locally recorded the event that a remote node B joined the topology. 
-        /// In this case this method will return ID of B. 
-        /// </summary>
-        public IClusterNode EventNode { get { return _eventNode; } }
-
-        /// <summary>
-        /// Gets topology version if this event is raised on topology change and configured discovery
-        /// SPI implementation supports topology versioning.
-        /// </summary>
-        public long TopologyVersion { get { return _topologyVersion; } }
-
-        /// <summary>
-        /// Gets topology nodes from topology snapshot. If SPI implementation does not support versioning, the best 
-        /// effort snapshot will be captured. 
-        /// </summary>
-        public ICollection<IClusterNode> TopologyNodes { get { return _topologyNodes; } }
-
-        /** <inheritDoc /> */
-	    public override string ToShortString()
-	    {
-	        return string.Format("{0}: EventNode={1}, TopologyVersion={2}, TopologyNodes={3}", Name, EventNode, 
-                TopologyVersion, TopologyNodes.Count);
-	    }
-    }
-}

http://git-wip-us.apache.org/repos/asf/ignite/blob/f0bac562/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/EventBase.cs
----------------------------------------------------------------------
diff --git a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/EventBase.cs b/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/EventBase.cs
deleted file mode 100644
index 2b905a1..0000000
--- a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/EventBase.cs
+++ /dev/null
@@ -1,160 +0,0 @@
-/*
- * 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.
- */
-
-namespace Apache.Ignite.Core.Events
-{
-    using System;
-    using Apache.Ignite.Core.Cluster;
-    using Apache.Ignite.Core.Common;
-    using Apache.Ignite.Core.Impl.Portable;
-    using Apache.Ignite.Core.Portable;
-
-    /// <summary>
-    /// Base event implementation.
-    /// </summary>
-    public abstract class EventBase : IEvent, IEquatable<EventBase>
-    {
-        /** */
-        private readonly IgniteGuid _id;
-
-        /** */
-        private readonly long _localOrder;
-
-        /** */
-        private readonly IClusterNode _node;
-
-        /** */
-        private readonly string _message;
-
-        /** */
-        private readonly int _type;
-
-        /** */
-        private readonly string _name;
-
-        /** */
-        private readonly DateTime _timeStamp;
-
-        /// <summary>
-        /// Initializes a new instance of the <see cref="EventBase"/> class.
-        /// </summary>
-        /// <param name="r">The reader to read data from.</param>
-        protected EventBase(IPortableRawReader r)
-        {
-            _id = IgniteGuid.ReadPortable(r);
-
-            _localOrder = r.ReadLong();
-
-            _node = ReadNode(r);
-
-            _message = r.ReadString();
-            _type = r.ReadInt();
-            _name = r.ReadString();
-            _timeStamp = r.ReadDate() ?? DateTime.Now;
-        }
-
-        /** <inheritDoc /> */
-        public IgniteGuid Id
-        {
-            get { return _id; }
-        }
-
-        /** <inheritDoc /> */
-        public long LocalOrder
-        {
-            get { return _localOrder; }
-        }
-
-        /** <inheritDoc /> */
-        public IClusterNode Node
-        {
-            get { return _node; }
-        }
-
-        /** <inheritDoc /> */
-        public string Message
-        {
-            get { return _message; }
-        }
-
-        /** <inheritDoc /> */
-        public int Type
-        {
-            get { return _type; }
-        }
-
-        /** <inheritDoc /> */
-        public string Name
-        {
-            get { return _name; }
-        }
-
-        /** <inheritDoc /> */
-        public DateTime TimeStamp
-        {
-            get { return _timeStamp; }
-        }
-
-        /** <inheritDoc /> */
-        public virtual string ToShortString()
-        {
-            return ToString();
-        }
-
-        /** <inheritDoc /> */
-        public bool Equals(EventBase other)
-        {
-            if (ReferenceEquals(null, other)) return false;
-            if (ReferenceEquals(this, other)) return true;
-            
-            return _id.Equals(other._id);
-        }
-
-        /** <inheritDoc /> */
-        public override bool Equals(object obj)
-        {
-            if (ReferenceEquals(null, obj)) return false;
-            if (ReferenceEquals(this, obj)) return true;
-            if (obj.GetType() != GetType()) return false;
-            
-            return Equals((EventBase) obj);
-        }
-
-        /** <inheritDoc /> */
-        public override int GetHashCode()
-        {
-            return _id.GetHashCode();
-        }
-
-        /** <inheritDoc /> */
-        public override string ToString()
-        {
-            return string.Format("CacheEntry [Name={0}, Type={1}, TimeStamp={2}, Message={3}]", Name, Type, TimeStamp,
-                Message);
-        }
-
-        /// <summary>
-        /// Reads a node from stream.
-        /// </summary>
-        /// <param name="reader">Reader.</param>
-        /// <returns>Node or null.</returns>
-        protected static IClusterNode ReadNode(IPortableRawReader reader)
-        {
-            return ((PortableReaderImpl)reader).Marshaller.Ignite.GetNode(reader.ReadGuid());
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/f0bac562/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/EventReader.cs
----------------------------------------------------------------------
diff --git a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/EventReader.cs b/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/EventReader.cs
deleted file mode 100644
index aa9f538..0000000
--- a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/EventReader.cs
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * 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.
- */
-
-namespace Apache.Ignite.Core.Events
-{
-    using System;
-    using Apache.Ignite.Core.Portable;
-
-    /// <summary>
-    /// Event reader.
-    /// </summary>
-    internal static class EventReader
-    {
-        /// <summary>
-        /// Reads an event.
-        /// </summary>
-        /// <typeparam name="T">Type of the event</typeparam>
-        /// <param name="reader">Reader.</param>
-        /// <returns>Deserialized event.</returns>
-        /// <exception cref="System.InvalidCastException">Incompatible event type.</exception>
-        public static T Read<T>(IPortableReader reader) where T : IEvent
-        {
-            var r = reader.RawReader();
-
-            var clsId = r.ReadInt();
-
-            if (clsId == -1)
-                return default(T);
-
-            return (T) CreateInstance(clsId, r);
-        }
-
-        /// <summary>
-        /// Creates an event instance by type id.
-        /// </summary>
-        /// <param name="clsId">Type id.</param>
-        /// <param name="reader">Reader.</param>
-        /// <returns>Created and deserialized instance.</returns>
-        /// <exception cref="System.InvalidOperationException">Invalid event class id:  + clsId</exception>
-        private static IEvent CreateInstance(int clsId, IPortableRawReader reader)
-        {
-            switch (clsId)
-            {
-                case 2: return new CacheEvent(reader);
-                case 3: return new CacheQueryExecutedEvent(reader);
-                case 4: return new CacheQueryReadEvent(reader);
-                case 5: return new CacheRebalancingEvent(reader);
-                case 6: return new CheckpointEvent(reader);
-                case 7: return new DiscoveryEvent(reader);
-                case 8: return new JobEvent(reader);
-                case 9: return new SwapSpaceEvent(reader);
-                case 10: return new TaskEvent(reader);
-            }
-
-            throw new InvalidOperationException("Invalid event class id: " + clsId);
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/f0bac562/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/EventType.cs
----------------------------------------------------------------------
diff --git a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/EventType.cs b/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/EventType.cs
deleted file mode 100644
index 1e649bb..0000000
--- a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/EventType.cs
+++ /dev/null
@@ -1,514 +0,0 @@
-/*
- * 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.
- */
-
-namespace Apache.Ignite.Core.Events
-{
-    using System.Diagnostics.CodeAnalysis;
-    using System.Linq;
-    using System.Reflection;
-
-    /// <summary>
-    /// Contains event type constants. The decision to use class and not enumeration is dictated 
-    /// by allowing users to create their own events and/or event types which would be impossible with enumerations.
-    /// <para />
-    /// Note that this interface defines not only individual type constants, 
-    /// but arrays of types as well to be conveniently used with <see cref="IEvents"/> methods.
-    /// <para />
-    /// NOTE: all types in range <b>from 1 to 1000 are reserved</b> for internal Ignite events 
-    /// and should not be used by user-defined events.
-    /// </summary>
-    public static class EventType
-    {
-        /// <summary>
-        /// Built-in event type: checkpoint was saved.
-        /// </summary>
-        public static readonly int EvtCheckpointSaved = 1;
-
-        /// <summary>
-        /// Built-in event type: checkpoint was loaded.
-        /// </summary>
-        public static readonly int EvtCheckpointLoaded = 2;
-
-        /// <summary>
-        /// Built-in event type: checkpoint was removed. Reasons are: timeout expired, or or it was manually removed, 
-        /// or it was automatically removed by the task session.
-        /// </summary>
-        public static readonly int EvtCheckpointRemoved = 3;
-
-        /// <summary>
-        /// Built-in event type: node joined topology. New node has been discovered and joined grid topology. Note that 
-        /// even though a node has been discovered there could be a number of warnings in the log. In certain 
-        /// situations Ignite doesn't prevent a node from joining but prints warning messages into the log.
-        /// </summary>
-        public static readonly int EvtNodeJoined = 10;
-
-        /// <summary>
-        /// Built-in event type: node has normally left topology.
-        /// </summary>
-        public static readonly int EvtNodeLeft = 11;
-
-        /// <summary>
-        /// Built-in event type: node failed. Ignite detected that node has presumably crashed and is considered 
-        /// failed.
-        /// </summary>
-        public static readonly int EvtNodeFailed = 12;
-
-        /// <summary>
-        /// Built-in event type: node metrics updated. Generated when node's metrics are updated. In most cases this 
-        /// callback is invoked with every heartbeat received from a node (including local node).
-        /// </summary>
-        public static readonly int EvtNodeMetricsUpdated = 13;
-
-        /// <summary>
-        /// Built-in event type: local node segmented. Generated when node determines that it runs in invalid network 
-        /// segment.
-        /// </summary>
-        public static readonly int EvtNodeSegmented = 14;
-
-        /// <summary>
-        /// Built-in event type: client node disconnected.
-        /// </summary>
-        public static readonly int EvtClientNodeDisconnected = 16;
-
-        /// <summary>
-        /// Built-in event type: client node reconnected.
-        /// </summary>
-        public static readonly int EvtClientNodeReconnected = 17;
-
-        /// <summary>
-        /// Built-in event type: task started.
-        /// </summary>
-        public static readonly int EvtTaskStarted = 20;
-
-        /// <summary>
-        /// Built-in event type: task finished. Task got finished. This event is triggered every time a task finished 
-        /// without exception.
-        /// </summary>
-        public static readonly int EvtTaskFinished = 21;
-
-        /// <summary>
-        /// Built-in event type: task failed. Task failed. This event is triggered every time a task finished with an 
-        /// exception. Note that prior to this event, there could be other events recorded specific to the failure.
-        /// </summary>
-        public static readonly int EvtTaskFailed = 22;
-
-        /// <summary>
-        /// Built-in event type: task timed out.
-        /// </summary>
-        public static readonly int EvtTaskTimedout = 23;
-
-        /// <summary>
-        /// Built-in event type: task session attribute set.
-        /// </summary>
-        public static readonly int EvtTaskSessionAttrSet = 24;
-
-        /// <summary>
-        /// Built-in event type: task reduced.
-        /// </summary>
-        public static readonly int EvtTaskReduced = 25;
-
-        /// <summary>
-        /// Built-in event type: Ignite job was mapped in {@link org.apache.ignite.compute.ComputeTask#map(List, Object)} 
-        /// method.
-        /// </summary>
-        public static readonly int EvtJobMapped = 40;
-
-        /// <summary>
-        /// Built-in event type: Ignite job result was received by {@link 
-        /// org.apache.ignite.compute.ComputeTask#result(org.apache.ignite.compute.ComputeJobResult, List)} method.
-        /// </summary>
-        public static readonly int EvtJobResulted = 41;
-
-        /// <summary>
-        /// Built-in event type: Ignite job failed over.
-        /// </summary>
-        public static readonly int EvtJobFailedOver = 43;
-
-        /// <summary>
-        /// Built-in event type: Ignite job started.
-        /// </summary>
-        public static readonly int EvtJobStarted = 44;
-
-        /// <summary>
-        /// Built-in event type: Ignite job finished. Job has successfully completed and produced a result which from the 
-        /// user perspective can still be either negative or positive.
-        /// </summary>
-        public static readonly int EvtJobFinished = 45;
-
-        /// <summary>
-        /// Built-in event type: Ignite job timed out.
-        /// </summary>
-        public static readonly int EvtJobTimedout = 46;
-
-        /// <summary>
-        /// Built-in event type: Ignite job rejected during collision resolution.
-        /// </summary>
-        public static readonly int EvtJobRejected = 47;
-
-        /// <summary>
-        /// Built-in event type: Ignite job failed. Job has failed. This means that there was some error event during job 
-        /// execution and job did not produce a result.
-        /// </summary>
-        public static readonly int EvtJobFailed = 48;
-
-        /// <summary>
-        /// Built-in event type: Ignite job queued. Job arrived for execution and has been queued (added to passive queue 
-        /// during collision resolution).
-        /// </summary>
-        public static readonly int EvtJobQueued = 49;
-
-        /// <summary>
-        /// Built-in event type: Ignite job cancelled.
-        /// </summary>
-        public static readonly int EvtJobCancelled = 50;
-
-        /// <summary>
-        /// Built-in event type: entry created.
-        /// </summary>
-        public static readonly int EvtCacheEntryCreated = 60;
-
-        /// <summary>
-        /// Built-in event type: entry destroyed.
-        /// </summary>
-        public static readonly int EvtCacheEntryDestroyed = 61;
-
-        /// <summary>
-        /// Built-in event type: entry evicted.
-        /// </summary>
-        public static readonly int EvtCacheEntryEvicted = 62;
-
-        /// <summary>
-        /// Built-in event type: object put.
-        /// </summary>
-        public static readonly int EvtCacheObjectPut = 63;
-
-        /// <summary>
-        /// Built-in event type: object read.
-        /// </summary>
-        public static readonly int EvtCacheObjectRead = 64;
-
-        /// <summary>
-        /// Built-in event type: object removed.
-        /// </summary>
-        public static readonly int EvtCacheObjectRemoved = 65;
-
-        /// <summary>
-        /// Built-in event type: object locked.
-        /// </summary>
-        public static readonly int EvtCacheObjectLocked = 66;
-
-        /// <summary>
-        /// Built-in event type: object unlocked.
-        /// </summary>
-        public static readonly int EvtCacheObjectUnlocked = 67;
-
-        /// <summary>
-        /// Built-in event type: cache object swapped from swap storage.
-        /// </summary>
-        public static readonly int EvtCacheObjectSwapped = 68;
-
-        /// <summary>
-        /// Built-in event type: cache object unswapped from swap storage.
-        /// </summary>
-        public static readonly int EvtCacheObjectUnswapped = 69;
-
-        /// <summary>
-        /// Built-in event type: cache object was expired when reading it.
-        /// </summary>
-        public static readonly int EvtCacheObjectExpired = 70;
-
-        /// <summary>
-        /// Built-in event type: swap space data read.
-        /// </summary>
-        public static readonly int EvtSwapSpaceDataRead = 71;
-
-        /// <summary>
-        /// Built-in event type: swap space data stored.
-        /// </summary>
-        public static readonly int EvtSwapSpaceDataStored = 72;
-
-        /// <summary>
-        /// Built-in event type: swap space data removed.
-        /// </summary>
-        public static readonly int EvtSwapSpaceDataRemoved = 73;
-
-        /// <summary>
-        /// Built-in event type: swap space cleared.
-        /// </summary>
-        public static readonly int EvtSwapSpaceCleared = 74;
-
-        /// <summary>
-        /// Built-in event type: swap space data evicted.
-        /// </summary>
-        public static readonly int EvtSwapSpaceDataEvicted = 75;
-
-        /// <summary>
-        /// Built-in event type: cache object stored in off-heap storage.
-        /// </summary>
-        public static readonly int EvtCacheObjectToOffheap = 76;
-
-        /// <summary>
-        /// Built-in event type: cache object moved from off-heap storage back into memory.
-        /// </summary>
-        public static readonly int EvtCacheObjectFromOffheap = 77;
-
-        /// <summary>
-        /// Built-in event type: cache rebalance started.
-        /// </summary>
-        public static readonly int EvtCacheRebalanceStarted = 80;
-
-        /// <summary>
-        /// Built-in event type: cache rebalance stopped.
-        /// </summary>
-        public static readonly int EvtCacheRebalanceStopped = 81;
-
-        /// <summary>
-        /// Built-in event type: cache partition loaded.
-        /// </summary>
-        public static readonly int EvtCacheRebalancePartLoaded = 82;
-
-        /// <summary>
-        /// Built-in event type: cache partition unloaded.
-        /// </summary>
-        public static readonly int EvtCacheRebalancePartUnloaded = 83;
-
-        /// <summary>
-        /// Built-in event type: cache entry rebalanced.
-        /// </summary>
-        public static readonly int EvtCacheRebalanceObjectLoaded = 84;
-
-        /// <summary>
-        /// Built-in event type: cache entry unloaded.
-        /// </summary>
-        public static readonly int EvtCacheRebalanceObjectUnloaded = 85;
-
-        /// <summary>
-        /// Built-in event type: all nodes that hold partition left topology.
-        /// </summary>
-        public static readonly int EvtCacheRebalancePartDataLost = 86;
-
-        /// <summary>
-        /// Built-in event type: query executed.
-        /// </summary>
-        public static readonly int EvtCacheQueryExecuted = 96;
-
-        /// <summary>
-        /// Built-in event type: query entry read.
-        /// </summary>
-        public static readonly int EvtCacheQueryObjectRead = 97;
-
-        /// <summary>
-        /// Built-in event type: cache started.
-        /// </summary>
-        public static readonly int EvtCacheStarted = 98;
-
-        /// <summary>
-        /// Built-in event type: cache started.
-        /// </summary>
-        public static readonly int EvtCacheStopped = 99;
-
-        /// <summary>
-        /// Built-in event type: cache nodes left.
-        /// </summary>
-        public static readonly int EvtCacheNodesLeft = 100;
-
-        /// <summary>
-        /// All events indicating an error or failure condition. It is convenient to use when fetching all events 
-        /// indicating error or failure.
-        /// </summary>
-        [SuppressMessage("Microsoft.Security", "CA2105:ArrayFieldsShouldNotBeReadOnly",
-            Justification = "Breaking change. Should be fixed in the next non-compatible release.")]
-        public static readonly int[] EvtsError =
-        {
-            EvtJobTimedout,
-            EvtJobFailed,
-            EvtJobFailedOver,
-            EvtJobRejected,
-            EvtJobCancelled,
-            EvtTaskTimedout,
-            EvtTaskFailed,
-            EvtCacheRebalanceStarted,
-            EvtCacheRebalanceStopped
-        };
-
-        /// <summary>
-        /// All discovery events except for <see cref="EvtNodeMetricsUpdated" />. Subscription to <see 
-        /// cref="EvtNodeMetricsUpdated" /> can generate massive amount of event processing in most cases is not 
-        /// necessary. If this event is indeed required you can subscribe to it individually or use <see 
-        /// cref="EvtsDiscoveryAll" /> array.
-        /// </summary>
-        [SuppressMessage("Microsoft.Security", "CA2105:ArrayFieldsShouldNotBeReadOnly",
-            Justification = "Breaking change. Should be fixed in the next non-compatible release.")]
-        public static readonly int[] EvtsDiscovery =
-        {
-            EvtNodeJoined,
-            EvtNodeLeft,
-            EvtNodeFailed,
-            EvtNodeSegmented,
-            EvtClientNodeDisconnected,
-            EvtClientNodeReconnected
-        };
-
-        /// <summary>
-        /// All discovery events.
-        /// </summary>
-        [SuppressMessage("Microsoft.Security", "CA2105:ArrayFieldsShouldNotBeReadOnly",
-            Justification = "Breaking change. Should be fixed in the next non-compatible release.")]
-        public static readonly int[] EvtsDiscoveryAll =
-        {
-            EvtNodeJoined,
-            EvtNodeLeft,
-            EvtNodeFailed,
-            EvtNodeSegmented,
-            EvtNodeMetricsUpdated,
-            EvtClientNodeDisconnected,
-            EvtClientNodeReconnected
-        };
-
-        /// <summary>
-        /// All Ignite job execution events.
-        /// </summary>
-        [SuppressMessage("Microsoft.Security", "CA2105:ArrayFieldsShouldNotBeReadOnly",
-            Justification = "Breaking change. Should be fixed in the next non-compatible release.")]
-        public static readonly int[] EvtsJobExecution =
-        {
-            EvtJobMapped,
-            EvtJobResulted,
-            EvtJobFailedOver,
-            EvtJobStarted,
-            EvtJobFinished,
-            EvtJobTimedout,
-            EvtJobRejected,
-            EvtJobFailed,
-            EvtJobQueued,
-            EvtJobCancelled
-        };
-
-        /// <summary>
-        /// All Ignite task execution events.
-        /// </summary>
-        [SuppressMessage("Microsoft.Security", "CA2105:ArrayFieldsShouldNotBeReadOnly",
-            Justification = "Breaking change. Should be fixed in the next non-compatible release.")]
-        public static readonly int[] EvtsTaskExecution =
-        {
-            EvtTaskStarted,
-            EvtTaskFinished,
-            EvtTaskFailed,
-            EvtTaskTimedout,
-            EvtTaskSessionAttrSet,
-            EvtTaskReduced
-        };
-
-        /// <summary>
-        /// All cache events.
-        /// </summary>
-        [SuppressMessage("Microsoft.Security", "CA2105:ArrayFieldsShouldNotBeReadOnly",
-            Justification = "Breaking change. Should be fixed in the next non-compatible release.")]
-        public static readonly int[] EvtsCache =
-        {
-            EvtCacheEntryCreated,
-            EvtCacheEntryDestroyed,
-            EvtCacheObjectPut,
-            EvtCacheObjectRead,
-            EvtCacheObjectRemoved,
-            EvtCacheObjectLocked,
-            EvtCacheObjectUnlocked,
-            EvtCacheObjectSwapped,
-            EvtCacheObjectUnswapped,
-            EvtCacheObjectExpired
-        };
-
-        /// <summary>
-        /// All cache rebalance events.
-        /// </summary>
-        [SuppressMessage("Microsoft.Security", "CA2105:ArrayFieldsShouldNotBeReadOnly",
-            Justification = "Breaking change. Should be fixed in the next non-compatible release.")]
-        public static readonly int[] EvtsCacheRebalance =
-        {
-            EvtCacheRebalanceStarted,
-            EvtCacheRebalanceStopped,
-            EvtCacheRebalancePartLoaded,
-            EvtCacheRebalancePartUnloaded,
-            EvtCacheRebalanceObjectLoaded,
-            EvtCacheRebalanceObjectUnloaded,
-            EvtCacheRebalancePartDataLost
-        };
-
-        /// <summary>
-        /// All cache lifecycle events.
-        /// </summary>
-        [SuppressMessage("Microsoft.Security", "CA2105:ArrayFieldsShouldNotBeReadOnly",
-            Justification = "Breaking change. Should be fixed in the next non-compatible release.")]
-        public static readonly int[] EvtsCacheLifecycle =
-        {
-            EvtCacheStarted,
-            EvtCacheStopped,
-            EvtCacheNodesLeft
-        };
-
-        /// <summary>
-        /// All cache query events.
-        /// </summary>
-        [SuppressMessage("Microsoft.Security", "CA2105:ArrayFieldsShouldNotBeReadOnly",
-            Justification = "Breaking change. Should be fixed in the next non-compatible release.")]
-        public static readonly int[] EvtsCacheQuery =
-        {
-            EvtCacheQueryExecuted,
-            EvtCacheQueryObjectRead
-        };
-
-        /// <summary>
-        /// All swap space events.
-        /// </summary>
-        [SuppressMessage("Microsoft.Security", "CA2105:ArrayFieldsShouldNotBeReadOnly",
-            Justification = "Breaking change. Should be fixed in the next non-compatible release.")]
-        public static readonly int[] EvtsSwapspace =
-        {
-            EvtSwapSpaceCleared,
-            EvtSwapSpaceDataRemoved,
-            EvtSwapSpaceDataRead,
-            EvtSwapSpaceDataStored,
-            EvtSwapSpaceDataEvicted
-        };
-
-        /// <summary>
-        /// All Ignite events.
-        /// </summary>
-        [SuppressMessage("Microsoft.Security", "CA2105:ArrayFieldsShouldNotBeReadOnly",
-            Justification = "Breaking change. Should be fixed in the next non-compatible release.")]
-        public static readonly int[] EvtsAll = GetAllEvents();
-
-        /// <summary>
-        /// All Ignite events (<b>excluding</b> metric update event).
-        /// </summary>
-        [SuppressMessage("Microsoft.Security", "CA2105:ArrayFieldsShouldNotBeReadOnly",
-            Justification = "Breaking change. Should be fixed in the next non-compatible release.")]
-        public static readonly int[] EvtsAllMinusMetricUpdate =
-            EvtsAll.Where(x => x != EvtNodeMetricsUpdated).ToArray();
-
-        /// <summary>
-        /// Gets all the events.
-        /// </summary>
-        /// <returns>All event ids.</returns>
-        private static int[] GetAllEvents()
-        {
-            return typeof (EventType).GetFields(BindingFlags.Public | BindingFlags.Static)
-                .Where(x => x.FieldType == typeof (int))
-                .Select(x => (int) x.GetValue(null)).ToArray();
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/f0bac562/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/IEvent.cs
----------------------------------------------------------------------
diff --git a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/IEvent.cs b/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/IEvent.cs
deleted file mode 100644
index 181aeef..0000000
--- a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/IEvent.cs
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * 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.
- */
-
-namespace Apache.Ignite.Core.Events
-{
-    using System;
-    using Apache.Ignite.Core.Cluster;
-    using Apache.Ignite.Core.Common;
-
-    /// <summary>
-    /// Represents a Ignite event.
-    /// </summary>
-    public interface IEvent
-    {
-        /// <summary>
-        /// Gets globally unique ID of this event.
-        /// </summary>
-        IgniteGuid Id { get; }
-
-        /// <summary>
-        /// Gets locally unique ID that is atomically incremented for each event. Unlike global <see cref="Id" />
-        /// this local ID can be used for ordering events on this node. 
-        /// <para/> 
-        /// Note that for performance considerations Ignite doesn't order events globally.
-        /// </summary>
-        long LocalOrder { get; }
-
-        /// <summary>
-        /// Node where event occurred and was recorded.
-        /// </summary>
-        IClusterNode Node { get; }
-
-        /// <summary>
-        /// Gets optional message for this event.
-        /// </summary>
-        string Message { get; }
-
-        /// <summary>
-        /// Gets type of this event. All system event types are defined in <see cref="EventType"/>
-        /// </summary>
-        int Type { get; }
-
-        /// <summary>
-        /// Gets name of this event.
-        /// </summary>
-        string Name { get; }
-
-        /// <summary>
-        /// Gets event timestamp. Timestamp is local to the node on which this event was produced. 
-        /// Note that more than one event can be generated with the same timestamp. 
-        /// For ordering purposes use <see cref="LocalOrder"/> instead.
-        /// </summary>
-        DateTime TimeStamp { get; }
-
-        /// <summary>
-        /// Gets shortened version of ToString result.
-        /// </summary>
-        string ToShortString();
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/f0bac562/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/IEventFilter.cs
----------------------------------------------------------------------
diff --git a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/IEventFilter.cs b/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/IEventFilter.cs
deleted file mode 100644
index 7523c52..0000000
--- a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/IEventFilter.cs
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * 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.
- */
-
-namespace Apache.Ignite.Core.Events
-{
-    using System;
-
-    /// <summary>
-    /// Represents an event filter.
-    /// </summary>
-    /// <typeparam name="T">Event type.</typeparam>
-    public interface IEventFilter<in T> where T : IEvent
-    {
-        /// <summary>
-        /// Determines whether specified event passes this filtger.
-        /// </summary>
-        /// <param name="nodeId">Node identifier.</param>
-        /// <param name="evt">Event.</param>
-        /// <returns>Value indicating whether specified event passes this filtger.</returns>
-        bool Invoke(Guid nodeId, T evt);
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/f0bac562/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/IEvents.cs
----------------------------------------------------------------------
diff --git a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/IEvents.cs b/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/IEvents.cs
deleted file mode 100644
index e13513c..0000000
--- a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/IEvents.cs
+++ /dev/null
@@ -1,182 +0,0 @@
-/*
- * 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.
- */
-
-namespace Apache.Ignite.Core.Events
-{
-    using System;
-    using System.Collections.Generic;
-    using System.Diagnostics.CodeAnalysis;
-    using Apache.Ignite.Core.Cluster;
-    using Apache.Ignite.Core.Common;
-
-    /// <summary>
-    /// Provides functionality for local and remote event notifications on nodes defined by <see cref="ClusterGroup"/>.
-    /// <para/>
-    /// All members are thread-safe and may be used concurrently from multiple threads.
-    /// </summary>
-    public interface IEvents : IAsyncSupport<IEvents>
-    {
-        /// <summary>
-        /// Gets the cluster group to which this instance belongs.
-        /// </summary>
-        IClusterGroup ClusterGroup { get; }
-
-        /// <summary>
-        /// Queries nodes in this cluster group for events using passed in predicate filter for event selection.
-        /// </summary>
-        /// <typeparam name="T">Type of events.</typeparam>
-        /// <param name="filter">Predicate filter used to query events on remote nodes.</param>
-        /// <param name="timeout">Maximum time to wait for result, null or 0 to wait forever.</param>
-        /// <param name="types">Event types to be queried.</param>
-        /// <returns>Collection of Ignite events returned from specified nodes.</returns>
-        [AsyncSupported]
-        [SuppressMessage("Microsoft.Design", "CA1002:DoNotExposeGenericLists")]
-        List<T> RemoteQuery<T>(IEventFilter<T> filter, TimeSpan? timeout = null, params int[] types) 
-            where T : IEvent;
-
-        /// <summary>
-        /// Adds event listener for specified events to all nodes in the cluster group (possibly including local node 
-        /// if it belongs to the cluster group as well). This means that all events occurring on any node within this 
-        /// cluster group that pass remote filter will be sent to local node for local listener notifications.
-        /// <para/>
-        /// The listener can be unsubscribed automatically if local node stops, if localListener callback 
-        /// returns false or if <see cref="StopRemoteListen"/> is called.
-        /// </summary>
-        /// <typeparam name="T">Type of events.</typeparam>
-        /// <param name="bufSize">Remote events buffer size. Events from remote nodes won't be sent until buffer
-        /// is full or time interval is exceeded.</param>
-        /// <param name="interval">Maximum time interval after which events from remote node will be sent. Events
-        /// from remote nodes won't be sent until buffer is full or time interval is exceeded.</param>
-        /// <param name="autoUnsubscribe">Flag indicating that event listeners on remote nodes should be automatically 
-        /// unregistered if master node (node that initiated event listening) leaves topology. 
-        /// If this flag is false, listeners will be unregistered only when <see cref="StopRemoteListen"/>
-        /// method is called, or the localListener returns false.</param>
-        /// <param name="localListener"> Listener callback that is called on local node. If null, these events will 
-        /// be handled on remote nodes by passed in remoteFilter.</param>
-        /// <param name="remoteFilter">
-        /// Filter callback that is called on remote node. Only events that pass the remote filter will be 
-        /// sent to local node. If null, all events of specified types will be sent to local node. 
-        /// This remote filter can be used to pre-handle events remotely, before they are passed in to local callback.
-        /// It will be auto-unsubscribed on the node where event occurred in case if it returns false.
-        /// </param>
-        /// <param name="types">
-        /// Types of events to listen for. If not provided, all events that pass the provided remote filter 
-        /// will be sent to local node.
-        /// </param>
-        /// <returns>
-        /// Operation ID that can be passed to <see cref="StopRemoteListen"/> method to stop listening.
-        /// </returns>
-        [AsyncSupported]
-        Guid RemoteListen<T>(int bufSize = 1, TimeSpan? interval = null, bool autoUnsubscribe = true,
-            IEventFilter<T> localListener = null, IEventFilter<T> remoteFilter = null, params int[] types) 
-            where T : IEvent;
-
-        /// <summary>
-        /// Stops listening to remote events. This will unregister all listeners identified with provided operation ID 
-        /// on all nodes defined by <see cref="ClusterGroup"/>.
-        /// </summary>
-        /// <param name="opId">Operation ID that was returned from <see cref="RemoteListen{T}"/>.</param>
-        [AsyncSupported]
-        void StopRemoteListen(Guid opId);
-
-        /// <summary>
-        /// Waits for the specified events.
-        /// </summary>
-        /// <param name="types">Types of the events to wait for. 
-        /// If not provided, all events will be passed to the filter.</param>
-        /// <returns>Ignite event.</returns>
-        [AsyncSupported]
-        IEvent WaitForLocal(params int[] types);
-
-        /// <summary>
-        /// Waits for the specified events.
-        /// </summary>
-        /// <typeparam name="T">Type of events.</typeparam>
-        /// <param name="filter">Optional filtering predicate. Event wait will end as soon as it returns false.</param>
-        /// <param name="types">Types of the events to wait for. 
-        /// If not provided, all events will be passed to the filter.</param>
-        /// <returns>Ignite event.</returns>
-        [AsyncSupported]
-        T WaitForLocal<T>(IEventFilter<T> filter, params int[] types) where T : IEvent;
-
-        /// <summary>
-        /// Queries local node for events using of specified types.
-        /// </summary>
-        /// <param name="types">Event types to be queried. Optional.</param>
-        /// <returns>Collection of Ignite events found on local node.</returns>
-        [SuppressMessage("Microsoft.Design", "CA1002:DoNotExposeGenericLists")]
-        List<IEvent> LocalQuery(params int[] types);
-
-        /// <summary>
-        /// Records customer user generated event. All registered local listeners will be notified.
-        /// <para/>
-        /// NOTE: all types in range <b>from 1 to 1000 are reserved</b> for
-        /// internal Ignite events and should not be used by user-defined events.
-        /// Attempt to record internal event with this method will cause <see cref="ArgumentException"/> to be thrown.
-        /// </summary>
-        /// <param name="evt">Locally generated event.</param>
-        /// <exception cref="ArgumentException">If event type is within Ignite reserved range (1 � 1000)</exception>
-        void RecordLocal(IEvent evt);
-
-        /// <summary>
-        /// Adds an event listener for local events. Note that listener will be added regardless of whether 
-        /// local node is in this cluster group or not.
-        /// </summary>
-        /// <typeparam name="T">Type of events.</typeparam>
-        /// <param name="listener">Predicate that is called on each received event. If predicate returns false,
-        /// it will be unregistered and will stop receiving events.</param>
-        /// <param name="types">Event types for which this listener will be notified, should not be empty.</param>
-        void LocalListen<T>(IEventFilter<T> listener, params int[] types) where T : IEvent;
-
-        /// <summary>
-        /// Removes local event listener.
-        /// </summary>
-        /// <typeparam name="T">Type of events.</typeparam>
-        /// <param name="listener">Local event listener to remove.</param>
-        /// <param name="types">Types of events for which to remove listener. If not specified, then listener
-        /// will be removed for all types it was registered for.</param>
-        /// <returns>True if listener was removed, false otherwise.</returns>
-        bool StopLocalListen<T>(IEventFilter<T> listener, params int[] types) where T : IEvent;
-
-        /// <summary>
-        /// Enables provided events. Allows to start recording events that were disabled before. 
-        /// Note that provided events will be enabled regardless of whether local node is in this cluster group or not.
-        /// </summary>
-        /// <param name="types">Events to enable.</param>
-        void EnableLocal(params int[] types);
-
-        /// <summary>
-        /// Disables provided events. Allows to stop recording events that were enabled before. Note that specified 
-        /// events will be disabled regardless of whether local node is in this cluster group or not.
-        /// </summary>
-        /// <param name="types">Events to disable.</param>
-        void DisableLocal(params int[] types);
-
-        /// <summary>
-        /// Gets types of enabled events.
-        /// </summary>
-        /// <returns>Types of enabled events.</returns>
-        int[] GetEnabledEvents();
-
-        /// <summary>
-        /// Determines whether the specified event is enabled.
-        /// </summary>
-        /// <param name="type">Event type.</param>
-        /// <returns>Value indicating whether the specified event is enabled.</returns>
-        bool IsEnabled(int type);
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/f0bac562/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/JobEvent.cs
----------------------------------------------------------------------
diff --git a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/JobEvent.cs b/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/JobEvent.cs
deleted file mode 100644
index 81d537f..0000000
--- a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/JobEvent.cs
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * 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.
- */
-
-namespace Apache.Ignite.Core.Events
-{
-    using System;
-    using Apache.Ignite.Core.Cluster;
-    using Apache.Ignite.Core.Common;
-    using Apache.Ignite.Core.Portable;
-
-    /// <summary>
-    /// Ignite job event.
-    /// </summary>
-    public sealed class JobEvent : EventBase
-	{
-        /** */
-        private readonly string _taskName;
-
-        /** */
-        private readonly string _taskClassName;
-
-        /** */
-        private readonly IgniteGuid _taskSessionId;
-
-        /** */
-        private readonly IgniteGuid _jobId;
-
-        /** */
-        private readonly IClusterNode _taskNode;
-
-        /** */
-        private readonly Guid _taskSubjectId;
-
-        /// <summary>
-        /// Constructor.
-        /// </summary>
-        /// <param name="r">The reader to read data from.</param>
-        internal JobEvent(IPortableRawReader r) : base(r)
-        {
-            _taskName = r.ReadString();
-            _taskClassName = r.ReadString();
-            _taskSessionId = IgniteGuid.ReadPortable(r);
-            _jobId = IgniteGuid.ReadPortable(r);
-            _taskNode = ReadNode(r);
-            _taskSubjectId = r.ReadGuid() ?? Guid.Empty;
-        }
-		
-        /// <summary>
-        /// Gets name of the task that triggered the event. 
-        /// </summary>
-        public string TaskName { get { return _taskName; } }
-
-        /// <summary>
-        /// Gets name of task class that triggered this event. 
-        /// </summary>
-        public string TaskClassName { get { return _taskClassName; } }
-
-        /// <summary>
-        /// Gets task session ID of the task that triggered this event. 
-        /// </summary>
-        public IgniteGuid TaskSessionId { get { return _taskSessionId; } }
-
-        /// <summary>
-        /// Gets job ID. 
-        /// </summary>
-        public IgniteGuid JobId { get { return _jobId; } }
-
-        /// <summary>
-        /// Get node where parent task of the job has originated. 
-        /// </summary>
-        public IClusterNode TaskNode { get { return _taskNode; } }
-
-        /// <summary>
-        /// Gets task subject ID. 
-        /// </summary>
-        public Guid TaskSubjectId { get { return _taskSubjectId; } }
-
-        /** <inheritDoc /> */
-	    public override string ToShortString()
-	    {
-	        return string.Format("{0}: TaskName={1}, TaskClassName={2}, TaskSessionId={3}, JobId={4}, TaskNode={5}, " +
-	                             "TaskSubjectId={6}", Name, TaskName, TaskClassName, TaskSessionId, JobId, TaskNode, 
-                                 TaskSubjectId);
-	    }
-    }
-}

http://git-wip-us.apache.org/repos/asf/ignite/blob/f0bac562/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/SwapSpaceEvent.cs
----------------------------------------------------------------------
diff --git a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/SwapSpaceEvent.cs b/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/SwapSpaceEvent.cs
deleted file mode 100644
index 676c2e0..0000000
--- a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/SwapSpaceEvent.cs
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * 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.
- */
-
-namespace Apache.Ignite.Core.Events
-{
-    using Apache.Ignite.Core.Portable;
-
-    /// <summary>
-    /// Grid swap space event.
-    /// </summary>
-    public sealed class SwapSpaceEvent : EventBase
-	{
-        /** */
-        private readonly string _space;
-
-        /// <summary>
-        /// Constructor.
-        /// </summary>
-        /// <param name="r">The reader to read data from.</param>
-        internal SwapSpaceEvent(IPortableRawReader r) : base(r)
-        {
-            _space = r.ReadString();
-        }
-		
-        /// <summary>
-        /// Gets swap space name. 
-        /// </summary>
-        public string Space { get { return _space; } }
-
-        /** <inheritDoc /> */
-	    public override string ToShortString()
-	    {
-	        return string.Format("{0}: Space={1}", Name, Space);
-	    }
-    }
-}

http://git-wip-us.apache.org/repos/asf/ignite/blob/f0bac562/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/TaskEvent.cs
----------------------------------------------------------------------
diff --git a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/TaskEvent.cs b/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/TaskEvent.cs
deleted file mode 100644
index 7149fb3..0000000
--- a/modules/platform/src/main/dotnet/Apache.Ignite.Core/Events/TaskEvent.cs
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
- * 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.
- */
-
-namespace Apache.Ignite.Core.Events
-{
-    using System;
-    using Apache.Ignite.Core.Common;
-    using Apache.Ignite.Core.Portable;
-
-    /// <summary>
-    /// Ignite task event.
-    /// </summary>
-    public sealed class TaskEvent : EventBase
-	{
-        /** */
-        private readonly string _taskName;
-
-        /** */
-        private readonly string _taskClassName;
-
-        /** */
-        private readonly IgniteGuid _taskSessionId;
-
-        /** */
-        private readonly bool _internal;
-
-        /** */
-        private readonly Guid _subjectId;
-
-        /// <summary>
-        /// Constructor.
-        /// </summary>
-        /// <param name="r">The reader to read data from.</param>
-        internal TaskEvent(IPortableRawReader r) : base(r)
-        {
-            _taskName = r.ReadString();
-            _taskClassName = r.ReadString();
-            _taskSessionId = IgniteGuid.ReadPortable(r);
-            _internal = r.ReadBoolean();
-            _subjectId = r.ReadGuid() ?? Guid.Empty;
-        }
-		
-        /// <summary>
-        /// Gets name of the task that triggered the event. 
-        /// </summary>
-        public string TaskName { get { return _taskName; } }
-
-        /// <summary>
-        /// Gets name of task class that triggered this event. 
-        /// </summary>
-        public string TaskClassName { get { return _taskClassName; } }
-
-        /// <summary>
-        /// Gets session ID of the task that triggered the event. 
-        /// </summary>
-        public IgniteGuid TaskSessionId { get { return _taskSessionId; } }
-
-        /// <summary>
-        /// Returns true if task is created by Ignite and is used for system needs. 
-        /// </summary>
-        public bool Internal { get { return _internal; } }
-
-        /// <summary>
-        /// Gets security subject ID initiated this task event, if available. This property is not available for 
-        /// <see cref="EventType.EvtTaskSessionAttrSet" /> task event. 
-        /// Subject ID will be set either to node ID or client ID initiated task execution. 
-        /// </summary>
-        public Guid SubjectId { get { return _subjectId; } }
-
-        /** <inheritDoc /> */
-	    public override string ToShortString()
-	    {
-	        return string.Format("{0}: TaskName={1}, TaskClassName={2}, TaskSessionId={3}, Internal={4}, " +
-	                             "SubjectId={5}", Name, TaskName, TaskClassName, TaskSessionId, Internal, SubjectId);
-	    }
-    }
-}

http://git-wip-us.apache.org/repos/asf/ignite/blob/f0bac562/modules/platform/src/main/dotnet/Apache.Ignite.Core/IIgnite.cs
----------------------------------------------------------------------
diff --git a/modules/platform/src/main/dotnet/Apache.Ignite.Core/IIgnite.cs b/modules/platform/src/main/dotnet/Apache.Ignite.Core/IIgnite.cs
deleted file mode 100644
index a9fae89..0000000
--- a/modules/platform/src/main/dotnet/Apache.Ignite.Core/IIgnite.cs
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * 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.
- */
-
-namespace Apache.Ignite.Core
-{
-    using System;
-    using Apache.Ignite.Core.Cache;
-    using Apache.Ignite.Core.Cluster;
-    using Apache.Ignite.Core.Compute;
-    using Apache.Ignite.Core.Datastream;
-    using Apache.Ignite.Core.Events;
-    using Apache.Ignite.Core.Messaging;
-    using Apache.Ignite.Core.Portable;
-    using Apache.Ignite.Core.Services;
-    using Apache.Ignite.Core.Transactions;
-
-    /// <summary>
-    /// Main entry point for all Ignite APIs.
-    /// You can obtain an instance of <c>IGrid</c> through <see cref="Ignition.GetIgnite()"/>,
-    /// or for named grids you can use <see cref="Ignition.GetIgnite(string)"/>. Note that you
-    /// can have multiple instances of <c>IGrid</c> running in the same process by giving
-    /// each instance a different name.
-    /// <para/>
-    /// All members are thread-safe and may be used concurrently from multiple threads.
-    /// </summary>
-    public interface IIgnite : IDisposable
-    {
-        /// <summary>
-        /// Gets the name of the grid this Ignite instance (and correspondingly its local node) belongs to.
-        /// Note that single process can have multiple Ignite instances all belonging to different grids. Grid
-        /// name allows to indicate to what grid this particular Ignite instance (i.e. Ignite runtime and its
-        /// local node) belongs to.
-        /// <p/>
-        /// If default Ignite instance is used, then <c>null</c> is returned. Refer to <see cref="Ignition"/> documentation
-        /// for information on how to start named grids.
-        /// </summary>
-        /// <returns>Name of the grid, or <c>null</c> for default grid.</returns>
-        string Name { get; }
-
-        /// <summary>
-        /// Gets an instance of <see cref="ICluster" /> interface.
-        /// </summary>
-        ICluster GetCluster();
-
-        /// <summary>
-        /// Gets compute functionality over this grid projection. All operations
-        /// on the returned ICompute instance will only include nodes from
-        /// this projection.
-        /// </summary>
-        /// <returns>Compute instance over this grid projection.</returns>
-        ICompute GetCompute();
-
-        /// <summary>
-        /// Gets the cache instance for the given name to work with keys and values of specified types.
-        /// <para/>
-        /// You can get instances of ICache of the same name, but with different key/value types.
-        /// These will use the same named cache, but only allow working with entries of specified types.
-        /// Attempt to retrieve an entry of incompatible type will result in <see cref="InvalidCastException"/>.
-        /// Use <see cref="GetCache{TK,TV}"/> in order to work with entries of arbitrary types.
-        /// </summary>
-        /// <param name="name">Cache name.</param>
-        /// <returns>Cache instance for given name.</returns>
-        /// <typeparam name="TK">Cache key type.</typeparam>
-        /// <typeparam name="TV">Cache value type.</typeparam>
-        ICache<TK, TV> GetCache<TK, TV>(string name);
-
-        /// <summary>
-        /// Gets existing cache with the given name or creates new one using template configuration.
-        /// </summary>
-        /// <typeparam name="TK">Cache key type.</typeparam>
-        /// <typeparam name="TV">Cache value type.</typeparam>
-        /// <param name="name">Cache name.</param>
-        /// <returns>Existing or newly created cache.</returns>
-        ICache<TK, TV> GetOrCreateCache<TK, TV>(string name);
-
-        /// <summary>
-        /// Dynamically starts new cache using template configuration.
-        /// </summary>
-        /// <typeparam name="TK">Cache key type.</typeparam>
-        /// <typeparam name="TV">Cache value type.</typeparam>
-        /// <param name="name">Cache name.</param>
-        /// <returns>Existing or newly created cache.</returns>
-        ICache<TK, TV> CreateCache<TK, TV>(string name);
-
-        /// <summary>
-        /// Gets a new instance of data streamer associated with given cache name. Data streamer
-        /// is responsible for loading external data into Ignite. For more information
-        /// refer to <see cref="IDataStreamer{K,V}"/> documentation.
-        /// </summary>
-        /// <param name="cacheName">Cache name (<c>null</c> for default cache).</param>
-        /// <returns>Data streamer.</returns>
-        IDataStreamer<TK, TV> GetDataStreamer<TK, TV>(string cacheName);
-
-        /// <summary>
-        /// Gets an instance of <see cref="IPortables"/> interface.
-        /// </summary>
-        /// <returns>Instance of <see cref="IPortables"/> interface</returns>
-        IPortables GetPortables();
-
-        /// <summary>
-        /// Gets affinity service to provide information about data partitioning and distribution.
-        /// </summary>
-        /// <param name="name">Cache name.</param>
-        /// <returns>Cache data affinity service.</returns>
-        ICacheAffinity GetAffinity(string name);
-
-        /// <summary>
-        /// Gets Ignite transactions facade.
-        /// </summary>
-        ITransactions GetTransactions();
-
-        /// <summary>
-        /// Gets messaging facade over all cluster nodes.
-        /// </summary>
-        /// <returns>Messaging instance over all cluster nodes.</returns>
-        IMessaging GetMessaging();
-
-        /// <summary>
-        /// Gets events facade over all cluster nodes.
-        /// </summary>
-        /// <returns>Events facade over all cluster nodes.</returns>
-        IEvents GetEvents();
-
-        /// <summary>
-        /// Gets services facade over all cluster nodes.
-        /// </summary>
-        /// <returns>Services facade over all cluster nodes.</returns>
-        IServices GetServices();
-    }
-}

http://git-wip-us.apache.org/repos/asf/ignite/blob/f0bac562/modules/platform/src/main/dotnet/Apache.Ignite.Core/IgniteConfiguration.cs
----------------------------------------------------------------------
diff --git a/modules/platform/src/main/dotnet/Apache.Ignite.Core/IgniteConfiguration.cs b/modules/platform/src/main/dotnet/Apache.Ignite.Core/IgniteConfiguration.cs
deleted file mode 100644
index 5a03e93..0000000
--- a/modules/platform/src/main/dotnet/Apache.Ignite.Core/IgniteConfiguration.cs
+++ /dev/null
@@ -1,140 +0,0 @@
-/*
- * 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.
- */
-
-namespace Apache.Ignite.Core
-{
-    using System.Collections.Generic;
-    using System.Diagnostics.CodeAnalysis;
-    using Apache.Ignite.Core.Lifecycle;
-    using Apache.Ignite.Core.Portable;
-
-    /// <summary>
-    /// Grid configuration.
-    /// </summary>
-    public class IgniteConfiguration
-    {
-        /// <summary>
-        /// Default initial JVM memory in megabytes.
-        /// </summary>
-        public const int DefaultJvmInitMem = 512;
-
-        /// <summary>
-        /// Default maximum JVM memory in megabytes.
-        /// </summary>
-        public const int DefaultJvmMaxMem = 1024;
-
-        /// <summary>
-        /// Default constructor.
-        /// </summary>
-        public IgniteConfiguration()
-        {
-            JvmInitialMemoryMb = DefaultJvmInitMem;
-            JvmMaxMemoryMb = DefaultJvmMaxMem;
-        }
-
-        /// <summary>
-        /// Copying constructor.
-        /// </summary>
-        /// <param name="cfg">Configuration.</param>
-        internal IgniteConfiguration(IgniteConfiguration cfg)
-        {
-            SpringConfigUrl = cfg.SpringConfigUrl;
-            JvmDllPath = cfg.JvmDllPath;
-            IgniteHome = cfg.IgniteHome;
-            JvmClasspath = cfg.JvmClasspath;
-            SuppressWarnings = cfg.SuppressWarnings;
-
-            JvmOptions = cfg.JvmOptions != null ? new List<string>(cfg.JvmOptions) : null;
-            Assemblies = cfg.Assemblies != null ? new List<string>(cfg.Assemblies) : null;
-
-            PortableConfiguration = cfg.PortableConfiguration != null
-                ? new PortableConfiguration(cfg.PortableConfiguration)
-                : null;
-
-            LifecycleBeans = cfg.LifecycleBeans != null ? new List<ILifecycleBean>(cfg.LifecycleBeans) : null;
-
-            JvmInitialMemoryMb = cfg.JvmInitialMemoryMb;
-            JvmMaxMemoryMb = cfg.JvmMaxMemoryMb;
-        }
-
-        /// <summary>
-        /// Gets or sets the portable configuration.
-        /// </summary>
-        /// <value>
-        /// The portable configuration.
-        /// </value>
-        public PortableConfiguration PortableConfiguration { get; set; }
-
-        /// <summary>
-        /// URL to Spring configuration file.
-        /// </summary>
-        [SuppressMessage("Microsoft.Design", "CA1056:UriPropertiesShouldNotBeStrings")]
-        public string SpringConfigUrl { get; set; }
-
-        /// <summary>
-        /// Path jvm.dll file. If not set, it's location will be determined
-        /// using JAVA_HOME environment variable.
-        /// If path is neither set nor determined automatically, an exception
-        /// will be thrown.
-        /// </summary>
-        public string JvmDllPath { get; set; }
-
-        /// <summary>
-        /// Path to Ignite home. If not set environment variable IGNITE_HOME will be used.
-        /// </summary>
-        public string IgniteHome { get; set; }
-
-        /// <summary>
-        /// Classpath used by JVM on Ignite start.
-        /// </summary>
-        public string JvmClasspath { get; set; }
-
-        /// <summary>
-        /// Collection of options passed to JVM on Ignite start.
-        /// </summary>
-        public ICollection<string> JvmOptions { get; set; }
-
-        /// <summary>
-        /// List of additional .Net assemblies to load on Ignite start. Each item can be either
-        /// fully qualified assembly name, path to assembly to DLL or path to a directory when 
-        /// assemblies reside.
-        /// </summary>
-        public IList<string> Assemblies { get; set; }
-
-        /// <summary>
-        /// Whether to suppress warnings.
-        /// </summary>
-        public bool SuppressWarnings { get; set; }
-
-        /// <summary>
-        /// Lifecycle beans.
-        /// </summary>
-        public ICollection<ILifecycleBean> LifecycleBeans { get; set; }
-
-        /// <summary>
-        /// Initial amount of memory in megabytes given to JVM. Maps to -Xms Java option.
-        /// Defaults to <see cref="DefaultJvmInitMem"/>.
-        /// </summary>
-        public int JvmInitialMemoryMb { get; set; }
-
-        /// <summary>
-        /// Maximum amount of memory in megabytes given to JVM. Maps to -Xmx Java option.
-        /// Defaults to <see cref="DefaultJvmMaxMem"/>.
-        /// </summary>
-        public int JvmMaxMemoryMb { get; set; }
-    }
-}