You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@reef.apache.org by we...@apache.org on 2015/02/05 22:05:26 UTC
[05/51] [partial] incubator-reef git commit: [REEF-131] Towards the
new .Net project structure This is to change .Net project structure for Tang,
Wake, REEF utilities, Common and Driver:
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Remote/Proto/WakeRemoteProtos.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Remote/Proto/WakeRemoteProtos.cs b/lang/cs/Source/WAKE/Wake/Remote/Proto/WakeRemoteProtos.cs
deleted file mode 100644
index 247fff9..0000000
--- a/lang/cs/Source/WAKE/Wake/Remote/Proto/WakeRemoteProtos.cs
+++ /dev/null
@@ -1,76 +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.
- */
-
-using ProtoBuf;
-using System;
-using System.IO;
-using System.Runtime.Serialization;
-
-namespace Org.Apache.Reef.Wake.Remote.Proto.WakeRemoteProtos
-{
- /// <summary>
- /// Message p buff
- /// </summary>
- public partial class WakeMessagePBuf
- {
- public static WakeMessagePBuf Deserialize(byte[] bytes)
- {
- WakeMessagePBuf pbuf = null;
- using (var s = new MemoryStream(bytes))
- {
- pbuf = Serializer.Deserialize<WakeMessagePBuf>(s);
- }
- return pbuf;
- }
-
- public byte[] Serialize()
- {
- using (var s = new MemoryStream())
- {
- Serializer.Serialize(s, this);
- return s.ToArray();
- }
- }
- }
-
- /// <summary>
- /// Wake tuple buf
- /// </summary>
- public partial class WakeTuplePBuf
- {
- public static WakeTuplePBuf Deserialize(byte[] bytes)
- {
- WakeTuplePBuf pbuf = null;
- using (var s = new MemoryStream(bytes))
- {
- pbuf = Serializer.Deserialize<WakeTuplePBuf>(s);
- }
- return pbuf;
- }
-
- public byte[] Serialize()
- {
- using (var s = new MemoryStream())
- {
- Serializer.Serialize(s, this);
- return s.ToArray();
- }
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Remote/RemoteConfiguration.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Remote/RemoteConfiguration.cs b/lang/cs/Source/WAKE/Wake/Remote/RemoteConfiguration.cs
deleted file mode 100644
index 633cc79..0000000
--- a/lang/cs/Source/WAKE/Wake/Remote/RemoteConfiguration.cs
+++ /dev/null
@@ -1,57 +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.
- */
-
-using Org.Apache.Reef.Tang.Annotations;
-using System;
-
-namespace Org.Apache.Reef.Wake.Remote
-{
- public class RemoteConfiguration
- {
- [NamedParameter(shortName: "rm_name", documentation: "The name of the remote manager.")]
- public class ManagerName : Name<string>
- {
- }
-
- [NamedParameter(shortName: "rm_host", documentation: "The host address to be used for messages.")]
- public class HostAddress : Name<string>
- {
- }
-
- [NamedParameter(shortName: "rm_port", documentation: "The port to be used for messages.")]
- public class Port : Name<int>
- {
- }
-
- [NamedParameter(documentation: "The codec to be used for messages.")]
- public class MessageCodec : Name<ICodec<Type>>
- {
- }
-
- [NamedParameter(documentation: "The event handler to be used for exception")]
- public class ErrorHandler : Name<IObserver<Exception>>
- {
- }
-
- [NamedParameter(shortName: "rm_order", documentation: "Whether or not to use the message ordering guarantee", defaultValue: "true")]
- public class OrderingGuarantee : Name<bool>
- {
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Remote/RemoteRuntimeException.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Remote/RemoteRuntimeException.cs b/lang/cs/Source/WAKE/Wake/Remote/RemoteRuntimeException.cs
deleted file mode 100644
index 061e532..0000000
--- a/lang/cs/Source/WAKE/Wake/Remote/RemoteRuntimeException.cs
+++ /dev/null
@@ -1,54 +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.
- */
-
-using System;
-
-namespace Org.Apache.Reef.Wake.Remote
-{
- /// <summary>Wake remote runtime exception</summary>
- [System.Serializable]
- public class RemoteRuntimeException : Exception
- {
- private const long serialVersionUID = 1L;
-
- /// <summary>Constructs a new runtime remote exception with the specified detail message and cause
- /// </summary>
- /// <param name="s">the detailed message</param>
- /// <param name="e">the cause</param>
- public RemoteRuntimeException(string s, Exception e)
- : base(s, e)
- {
- }
-
- /// <summary>Constructs a new runtime remote exception with the specified detail message
- /// </summary>
- /// <param name="s">the detailed message</param>
- public RemoteRuntimeException(string s)
- : base(s)
- {
- }
-
- /// <summary>Constructs a new runtime remote exception with the specified cause</summary>
- /// <param name="e">the cause</param>
- public RemoteRuntimeException(Exception e)
- : base("Runtime Exception", e)
- {
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Time/Event/Alarm.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Time/Event/Alarm.cs b/lang/cs/Source/WAKE/Wake/Time/Event/Alarm.cs
deleted file mode 100644
index 611b5a1..0000000
--- a/lang/cs/Source/WAKE/Wake/Time/Event/Alarm.cs
+++ /dev/null
@@ -1,41 +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.
- */
-
-using System;
-
-namespace Org.Apache.Reef.Wake.Time
-{
- /// <summary>
- /// Represents a timer event.
- /// </summary>
- public abstract class Alarm : Time
- {
- private IObserver<Alarm> _handler;
-
- public Alarm(long timestamp, IObserver<Alarm> handler) : base(timestamp)
- {
- _handler = handler;
- }
-
- public void Handle()
- {
- _handler.OnNext(this);
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Time/Event/StartTime.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Time/Event/StartTime.cs b/lang/cs/Source/WAKE/Wake/Time/Event/StartTime.cs
deleted file mode 100644
index 4cea1bc..0000000
--- a/lang/cs/Source/WAKE/Wake/Time/Event/StartTime.cs
+++ /dev/null
@@ -1,31 +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 Org.Apache.Reef.Wake.Time
-{
- /// <summary>
- /// Represents the Time at which a component started.
- /// </summary>
- public class StartTime : Time
- {
- public StartTime(long timeStamp) : base(timeStamp)
- {
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Time/Event/StopTime.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Time/Event/StopTime.cs b/lang/cs/Source/WAKE/Wake/Time/Event/StopTime.cs
deleted file mode 100644
index 8e3bf65..0000000
--- a/lang/cs/Source/WAKE/Wake/Time/Event/StopTime.cs
+++ /dev/null
@@ -1,31 +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 Org.Apache.Reef.Wake.Time
-{
- /// <summary>
- /// Represents the Time at which a component stops.
- /// </summary>
- public class StopTime : Time
- {
- public StopTime(long timeStamp) : base(timeStamp)
- {
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Time/IClock.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Time/IClock.cs b/lang/cs/Source/WAKE/Wake/Time/IClock.cs
deleted file mode 100644
index 6d906b8..0000000
--- a/lang/cs/Source/WAKE/Wake/Time/IClock.cs
+++ /dev/null
@@ -1,89 +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.
- */
-
-using System;
-using System.Collections.Generic;
-
-using Org.Apache.Reef.Tang.Annotations;
-using Org.Apache.Reef.Wake.Impl;
-using Org.Apache.Reef.Wake.Time.Runtime.Event;
-
-namespace Org.Apache.Reef.Wake.Time
-{
- public abstract class IClock : IDisposable
- {
- /// <summary>
- /// Schedule a TimerEvent at the given future offset
- /// </summary>
- /// <param name="offset">The offset in the future to schedule the alarm</param>
- /// <param name="handler">The IObserver to to be called</param>
- public abstract void ScheduleAlarm(long offset, IObserver<Alarm> handler);
-
- /// <summary>
- /// Clock is idle if it has no future alarms set
- /// </summary>
- /// <returns>True if no future alarms are set, otherwise false</returns>
- public abstract bool IsIdle();
-
- /// <summary>
- /// Dispose of the clock and all scheduled alarms
- /// </summary>
- public abstract void Dispose();
-
- /// <summary>
- /// Bind this to an event handler to statically subscribe to the StartTime Event
- /// </summary>
- [NamedParameter(documentation: "Will be called upon the start even", defaultClass: typeof(MissingStartHandlerHandler))]
- public class StartHandler : Name<ISet<IObserver<StartTime>>>
- {
- }
-
- /// <summary>
- /// Bind this to an event handler to statically subscribe to the StopTime Event
- /// </summary>
- [NamedParameter(documentation: "Will be called upon the stop event", defaultClass: typeof(LoggingEventHandler<StopTime>))]
- public class StopHandler : Name<ISet<IObserver<StopTime>>>
- {
- }
-
- /// <summary>
- /// Bind this to an event handler to statically subscribe to the RuntimeStart Event
- /// </summary>
- [NamedParameter(documentation: "Will be called upon the runtime start event", defaultClass: typeof(LoggingEventHandler<RuntimeStart>))]
- public class RuntimeStartHandler : Name<ISet<IObserver<RuntimeStart>>>
- {
- }
-
- /// <summary>
- /// Bind this to an event handler to statically subscribe to the RuntimeStop Event
- /// </summary>
- [NamedParameter(documentation: "Will be called upon the runtime stop event", defaultClass: typeof(LoggingEventHandler<RuntimeStop>))]
- public class RuntimeStopHandler : Name<ISet<IObserver<RuntimeStop>>>
- {
- }
-
- /// <summary>
- /// Bind this to an event handler to statically subscribe to the IdleClock Event
- /// </summary>
- [NamedParameter(documentation: "Will be called upon the Idle event", defaultClass: typeof(LoggingEventHandler<IdleClock>))]
- public class IdleHandler : Name<ISet<IObserver<IdleClock>>>
- {
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/ClientAlarm.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/ClientAlarm.cs b/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/ClientAlarm.cs
deleted file mode 100644
index ac95896..0000000
--- a/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/ClientAlarm.cs
+++ /dev/null
@@ -1,34 +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.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Org.Apache.Reef.Wake.Time.Runtime.Event
-{
- public class ClientAlarm : Alarm
- {
- public ClientAlarm(long timestamp, IObserver<Alarm> handler) : base(timestamp, handler)
- {
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/IdleClock.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/IdleClock.cs b/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/IdleClock.cs
deleted file mode 100644
index 3ca1fd8..0000000
--- a/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/IdleClock.cs
+++ /dev/null
@@ -1,28 +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 Org.Apache.Reef.Wake.Time.Runtime.Event
-{
- public class IdleClock : Time
- {
- public IdleClock(long timestamp) : base(timestamp)
- {
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/RuntimeAlarm.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/RuntimeAlarm.cs b/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/RuntimeAlarm.cs
deleted file mode 100644
index 701bf88..0000000
--- a/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/RuntimeAlarm.cs
+++ /dev/null
@@ -1,34 +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.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Org.Apache.Reef.Wake.Time.Runtime.Event
-{
- public class RuntimeAlarm : Alarm
- {
- public RuntimeAlarm(long timestamp, IObserver<Alarm> handler) : base(timestamp, handler)
- {
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/RuntimeStart.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/RuntimeStart.cs b/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/RuntimeStart.cs
deleted file mode 100644
index d08cccc..0000000
--- a/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/RuntimeStart.cs
+++ /dev/null
@@ -1,28 +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 Org.Apache.Reef.Wake.Time.Runtime.Event
-{
- public class RuntimeStart : Time
- {
- public RuntimeStart(long timeStamp) : base(timeStamp)
- {
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/RuntimeStop.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/RuntimeStop.cs b/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/RuntimeStop.cs
deleted file mode 100644
index 6324e20..0000000
--- a/lang/cs/Source/WAKE/Wake/Time/Runtime/Event/RuntimeStop.cs
+++ /dev/null
@@ -1,37 +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.
- */
-
-using System;
-
-namespace Org.Apache.Reef.Wake.Time.Runtime.Event
-{
- public class RuntimeStop : Time
- {
- public RuntimeStop(long timestamp) : this(timestamp, null)
- {
- }
-
- public RuntimeStop(long timestamp, Exception e) : base(timestamp)
- {
- Exception = e;
- }
-
- public Exception Exception { get; private set; }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Time/Runtime/ITimer.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Time/Runtime/ITimer.cs b/lang/cs/Source/WAKE/Wake/Time/Runtime/ITimer.cs
deleted file mode 100644
index c932aa4..0000000
--- a/lang/cs/Source/WAKE/Wake/Time/Runtime/ITimer.cs
+++ /dev/null
@@ -1,49 +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.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Org.Apache.Reef.Tang.Annotations;
-
-namespace Org.Apache.Reef.Wake.Time.Runtime
-{
- [DefaultImplementation(typeof(RealTimer))]
- public interface ITimer
- {
- /// <summary>
- /// Gets the current time
- /// </summary>
- long CurrentTime { get; }
-
- /// <summary>
- /// Gets the difference between the given time and the current time
- /// </summary>
- /// <param name="time">The time to compare against the current time</param>
- long GetDuration(long time);
-
- /// <summary>
- /// Checks if the given time has already passed.
- /// </summary>
- /// <param name="time">The time to check if it has passed or not</param>
- bool IsReady(long time);
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Time/Runtime/LogicalTimer.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Time/Runtime/LogicalTimer.cs b/lang/cs/Source/WAKE/Wake/Time/Runtime/LogicalTimer.cs
deleted file mode 100644
index f4b6c75..0000000
--- a/lang/cs/Source/WAKE/Wake/Time/Runtime/LogicalTimer.cs
+++ /dev/null
@@ -1,55 +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.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Org.Apache.Reef.Tang.Annotations;
-using Org.Apache.Reef.Wake.Time.Runtime.Event;
-
-namespace Org.Apache.Reef.Wake.Time.Runtime
-{
- /// <summary>
- /// LogicalTimer class used for testing purposes.
- /// </summary>
- public class LogicalTimer : ITimer
- {
- [Inject]
- public LogicalTimer()
- {
- }
-
- public long CurrentTime
- {
- get { return 0; }
- }
-
- public long GetDuration(long time)
- {
- return 0;
- }
-
- public bool IsReady(long time)
- {
- return true;
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Time/Runtime/RealTimer.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Time/Runtime/RealTimer.cs b/lang/cs/Source/WAKE/Wake/Time/Runtime/RealTimer.cs
deleted file mode 100644
index 2e99202..0000000
--- a/lang/cs/Source/WAKE/Wake/Time/Runtime/RealTimer.cs
+++ /dev/null
@@ -1,64 +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.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using Org.Apache.Reef.Tang.Annotations;
-using Org.Apache.Reef.Wake.Time.Runtime.Event;
-
-namespace Org.Apache.Reef.Wake.Time.Runtime
-{
- public class RealTimer : ITimer
- {
- [Inject]
- public RealTimer()
- {
- }
-
- /// <summary>
- /// Gets the number of milliseconds since Epoch
- /// </summary>
- public long CurrentTime
- {
- get { return DateTime.Now.Ticks / TimeSpan.TicksPerMillisecond; }
- }
-
- /// <summary>
- /// Gets the difference between the given time and the current time
- /// </summary>
- /// <param name="time">The time to compare against the current time</param>
- public long GetDuration(long time)
- {
- return time - CurrentTime;
- }
-
- /// <summary>
- /// Checks if the given time has already passed.
- /// </summary>
- /// <param name="time">The time to check if it has passed or not</param>
- public bool IsReady(long time)
- {
- return GetDuration(time) <= 0;
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Time/Runtime/RuntimeClock.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Time/Runtime/RuntimeClock.cs b/lang/cs/Source/WAKE/Wake/Time/Runtime/RuntimeClock.cs
deleted file mode 100644
index a8c77af..0000000
--- a/lang/cs/Source/WAKE/Wake/Time/Runtime/RuntimeClock.cs
+++ /dev/null
@@ -1,257 +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.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Reactive;
-using System.Reactive.Linq;
-using System.Text;
-using System.Threading;
-using System.Threading.Tasks;
-using Org.Apache.Reef.Utilities.Diagnostics;
-using Org.Apache.Reef.Utilities.Logging;
-using Org.Apache.Reef.Tang.Annotations;
-using Org.Apache.Reef.Tang.Exceptions;
-using Org.Apache.Reef.Tang.Implementations;
-using Org.Apache.Reef.Wake.RX.Impl;
-
-namespace Org.Apache.Reef.Wake.Time.Runtime.Event
-{
- public class RuntimeClock : IClock
- {
- private static readonly Logger LOGGER = Logger.GetLogger(typeof(RuntimeClock));
-
- private ITimer _timer;
- private PubSubSubject<Time> _handlers;
- private ISet<Time> _schedule;
-
- private IInjectionFuture<ISet<IObserver<StartTime>>> _startHandler;
- private IInjectionFuture<ISet<IObserver<StopTime>>> _stopHandler;
- private IInjectionFuture<ISet<IObserver<RuntimeStart>>> _runtimeStartHandler;
- private IInjectionFuture<ISet<IObserver<RuntimeStop>>> _runtimeStopHandler;
- private IInjectionFuture<ISet<IObserver<IdleClock>>> _idleHandler;
-
- private bool _disposed;
-
- /// <summary>
- /// Create a new RuntimeClock with injectable IObservers
- /// </summary>
- /// <param name="timer">The runtime clock timer</param>
- /// <param name="startHandler">The start handler</param>
- /// <param name="stopHandler">The stop handler</param>
- /// <param name="runtimeStartHandler">The runtime start handler</param>
- /// <param name="runtimeStopHandler">The runtime stop handler</param>
- /// <param name="idleHandler">The idle handler</param>
- [Inject]
- internal RuntimeClock(
- ITimer timer,
- [Parameter(typeof(StartHandler))] IInjectionFuture<ISet<IObserver<StartTime>>> startHandler,
- [Parameter(typeof(StopHandler))] IInjectionFuture<ISet<IObserver<StopTime>>> stopHandler,
- [Parameter(typeof(RuntimeStartHandler))] IInjectionFuture<ISet<IObserver<RuntimeStart>>> runtimeStartHandler,
- [Parameter(typeof(RuntimeStopHandler))] IInjectionFuture<ISet<IObserver<RuntimeStop>>> runtimeStopHandler,
- [Parameter(typeof(IdleHandler))] IInjectionFuture<ISet<IObserver<IdleClock>>> idleHandler)
- {
- _timer = timer;
- _schedule = new SortedSet<Time>();
- _handlers = new PubSubSubject<Time>();
-
- _startHandler = startHandler;
- _stopHandler = stopHandler;
- _runtimeStartHandler = runtimeStartHandler;
- _runtimeStopHandler = runtimeStopHandler;
- _idleHandler = idleHandler;
- }
-
- public IInjectionFuture<ISet<IObserver<RuntimeStart>>> InjectedRuntimeStartHandler
- {
- get { return _runtimeStartHandler; }
- set { _runtimeStartHandler = value; }
- }
-
- public IInjectionFuture<ISet<IObserver<RuntimeStop>>> InjectedRuntimeStopHandler
- {
- get { return _runtimeStopHandler; }
- set { _runtimeStopHandler = value; }
- }
-
- /// <summary>
- /// Schedule a TimerEvent at the given future offset
- /// </summary>
- /// <param name="offset">The offset in the future to schedule the alarm</param>
- /// <param name="handler">The IObserver to to be called</param>
- public override void ScheduleAlarm(long offset, IObserver<Alarm> handler)
- {
- if (_disposed)
- {
- return;
- }
- if (handler == null)
- {
- Exceptions.Throw(new ArgumentNullException("handler"), LOGGER);
- }
-
- lock (_schedule)
- {
- _schedule.Add(new ClientAlarm(_timer.CurrentTime + offset, handler));
- Monitor.PulseAll(_schedule);
- }
- }
-
- /// <summary>
- /// Clock is idle if it has no future alarms set
- /// </summary>
- /// <returns>True if no future alarms are set, otherwise false</returns>
- public override bool IsIdle()
- {
- lock (_schedule)
- {
- return _schedule.Count == 0;
- }
- }
-
- /// <summary>
- /// Dispose of the clock and all scheduled alarms
- /// </summary>
- public override void Dispose()
- {
- lock (_schedule)
- {
- _schedule.Clear();
- _schedule.Add(new StopTime(_timer.CurrentTime));
- Monitor.PulseAll(_schedule);
- _disposed = true;
- }
- }
-
- /// <summary>
- /// Register the IObserver for the particular Time event.
- /// </summary>
- /// <param name="observer">The handler to register</param>
- public void RegisterObserver<U>(IObserver<U> observer) where U : Time
- {
- if (_disposed)
- {
- return;
- }
-
- _handlers.Subscribe(observer);
- }
-
- /// <summary>
- /// Start the RuntimeClock.
- /// Clock will continue to run and handle events until it has been disposed.
- /// </summary>
- public void Run()
- {
- SubscribeHandlers();
- _handlers.OnNext(new RuntimeStart(_timer.CurrentTime));
- _handlers.OnNext(new StartTime(_timer.CurrentTime));
-
- while (true)
- {
- lock (_schedule)
- {
- if (IsIdle())
- {
- _handlers.OnNext(new IdleClock(_timer.CurrentTime));
- }
-
- // Blocks and releases lock until it receives the next event
- Time alarm = GetNextEvent();
- ProcessEvent(alarm);
-
- if (alarm is StopTime)
- {
- break;
- }
- }
- }
- _handlers.OnNext(new RuntimeStop(_timer.CurrentTime));
- }
-
- /// <summary>
- /// Register the event handlers
- /// </summary>
- private void SubscribeHandlers()
- {
- Subscribe(_startHandler.Get());
- Subscribe(_stopHandler.Get());
- Subscribe(_runtimeStartHandler.Get());
- Subscribe(_runtimeStopHandler.Get());
- Subscribe(_idleHandler.Get());
- }
-
- /// <summary>
- /// Subscribe a set of IObservers for a particular Time event
- /// </summary>
- /// <param name="observers">The set of observers to subscribe</param>
- private void Subscribe<U>(ISet<IObserver<U>> observers) where U : Time
- {
- foreach (IObserver<U> observer in observers)
- {
- _handlers.Subscribe(observer);
- }
- }
-
- /// <summary>
- /// Wait until the first scheduled alarm is ready to be handled
- /// Assumes that we have a lock on the _schedule SortedSet
- /// </summary>
- private Time GetNextEvent()
- {
- // Wait for an alarm to be scheduled on the condition variable Count
- while (_schedule.Count == 0)
- {
- Monitor.Wait(_schedule);
- }
-
- // Once the alarm is scheduled, wait for the prescribed amount of time.
- // If a new alarm is scheduled with a shorter duration, Wait will preempt
- // and duration will update to reflect the new alarm's timestamp
- for (long duration = _timer.GetDuration(_schedule.First().TimeStamp);
- duration > 0;
- duration = _timer.GetDuration(_schedule.First().TimeStamp))
- {
- Monitor.Wait(_schedule, TimeSpan.FromMilliseconds(duration));
- }
-
- Time time = _schedule.First();
- _schedule.Remove(time);
- return time;
- }
-
- /// <summary>
- /// Process the next Time event.
- /// </summary>
- /// <param name="time">The Time event to handle</param>
- private void ProcessEvent(Time time)
- {
- if (time is Alarm)
- {
- Alarm alarm = (Alarm) time;
- alarm.Handle();
- }
- else
- {
- _handlers.OnNext(time);
- }
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Time/Time.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Time/Time.cs b/lang/cs/Source/WAKE/Wake/Time/Time.cs
deleted file mode 100644
index 0ebc1a7..0000000
--- a/lang/cs/Source/WAKE/Wake/Time/Time.cs
+++ /dev/null
@@ -1,82 +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.
- */
-
-using System;
-using System.Globalization;
-
-namespace Org.Apache.Reef.Wake.Time
-{
- /// <summary>
- /// Time object
- /// </summary>
- public abstract class Time : IComparable<Time>
- {
- public Time(long timeStamp)
- {
- TimeStamp = timeStamp;
- }
-
- public long TimeStamp { get; private set; }
-
- public override string ToString()
- {
- return string.Format(CultureInfo.InvariantCulture, "{0}:[{1}]", GetType().Name, TimeStamp);
- }
-
- public override int GetHashCode()
- {
- return base.GetHashCode();
- }
-
- public override bool Equals(object obj)
- {
- if (this == obj)
- {
- return true;
- }
- Time other = obj as Time;
- if (other != null)
- {
- return CompareTo(other) == 0;
- }
- return false;
- }
-
- public int CompareTo(Time other)
- {
- if (TimeStamp < other.TimeStamp)
- {
- return -1;
- }
- if (TimeStamp > other.TimeStamp)
- {
- return 1;
- }
- if (GetHashCode() < other.GetHashCode())
- {
- return -1;
- }
- if (GetHashCode() > other.GetHashCode())
- {
- return 1;
- }
- return 0;
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Util/Actionable.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Util/Actionable.cs b/lang/cs/Source/WAKE/Wake/Util/Actionable.cs
deleted file mode 100644
index 5e5364c..0000000
--- a/lang/cs/Source/WAKE/Wake/Util/Actionable.cs
+++ /dev/null
@@ -1,42 +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.
- */
-
-using System.Threading;
-
-namespace Org.Apache.Reef.Wake.Util
-{
- public class Actionable
- {
- private readonly ThreadStart _threadStart;
-
- public Actionable()
- {
- }
-
- internal Actionable(ThreadStart threadStart)
- {
- _threadStart = threadStart;
- }
-
- public void Call()
- {
- _threadStart();
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Util/Disposable.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Util/Disposable.cs b/lang/cs/Source/WAKE/Wake/Util/Disposable.cs
deleted file mode 100644
index ebe30bc..0000000
--- a/lang/cs/Source/WAKE/Wake/Util/Disposable.cs
+++ /dev/null
@@ -1,63 +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.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Org.Apache.Reef.Wake.Util
-{
- /// <summary>
- /// Generates IDisposables from a factory method
- /// </summary>
- internal class Disposable : IDisposable
- {
- private Action _disposeFunction;
- private bool _disposed;
-
- private Disposable(Action disposeFunction)
- {
- _disposeFunction = disposeFunction;
- _disposed = false;
- }
-
- /// <summary>
- /// Factory method to create an IDisposable from a function.
- /// </summary>
- /// <param name="disposeFunction">The function to call when disposing</param>
- /// <returns>An IDisposable from the given dispose function</returns>
- public static IDisposable Create(Action disposeFunction)
- {
- return new Disposable(disposeFunction);
- }
-
- /// <summary>
- /// Dispose of resources by calling the supplied dispose function
- /// </summary>
- public void Dispose()
- {
- if (!_disposed)
- {
- _disposeFunction();
- }
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Util/FixedThreadPoolTaskService.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Util/FixedThreadPoolTaskService.cs b/lang/cs/Source/WAKE/Wake/Util/FixedThreadPoolTaskService.cs
deleted file mode 100644
index e86820d..0000000
--- a/lang/cs/Source/WAKE/Wake/Util/FixedThreadPoolTaskService.cs
+++ /dev/null
@@ -1,105 +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.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading;
-using System.Threading.Tasks;
-using Org.Apache.Reef.Utilities.Diagnostics;
-using Org.Apache.Reef.Utilities.Logging;
-using Org.Apache.Reef.Wake.Time.Runtime.Event;
-
-namespace Org.Apache.Reef.Wake.Util
-{
- public class FixedThreadPoolTaskService : ITaskService
- {
- private static readonly Logger LOGGER = Logger.GetLogger(typeof(FixedThreadPoolTaskService));
-
- TaskFactory factory;
-
- List<Task> tasks = new List<Task>();
- bool shuttingDown;
-
- internal FixedThreadPoolTaskService(int maxDegreeOfParallelism)
- {
- LimitedConcurrencyLevelTaskScheduler lcts = new LimitedConcurrencyLevelTaskScheduler(maxDegreeOfParallelism);
- factory = new TaskFactory(lcts);
- }
-
- public bool AwaitTermination(long n, TimeSpan unit)
- {
- Task[] allTasks;
- lock (tasks)
- {
- if (tasks.Count == 0)
- {
- return true;
- }
- allTasks = tasks.ToArray();
- }
- return Task.WaitAll(allTasks, unit);
- }
-
- public void ShutdownNow()
- {
- Shutdown();
- }
-
- public void Shutdown()
- {
- lock (tasks)
- {
- shuttingDown = true;
- }
- }
-
- public Task<T> Submit<T>(Func<T> c)
- {
- Task<T> task = null;
- lock (tasks)
- {
- if (shuttingDown)
- {
- Exceptions.Throw(new InvalidOperationException("Shutting down"), LOGGER);
- }
-
- CancellationTokenSource cancellationTokenSource = new CancellationTokenSource();
- CancellationToken cancellationToken = cancellationTokenSource.Token;
- task = factory.StartNew(c, cancellationToken);
- tasks.Add(task);
- }
- return task;
- }
-
- public void Execute(ThreadStart threadStart)
- {
- new Actionable(threadStart).Call();
- }
-
- internal void RemoveTask(Task task)
- {
- lock (tasks)
- {
- tasks.Remove(task);
- }
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Util/IStartable.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Util/IStartable.cs b/lang/cs/Source/WAKE/Wake/Util/IStartable.cs
deleted file mode 100644
index 2327819..0000000
--- a/lang/cs/Source/WAKE/Wake/Util/IStartable.cs
+++ /dev/null
@@ -1,32 +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.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Org.Apache.Reef.Wake.Util
-{
- public interface IStartable
- {
- void Start();
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Util/ITaskService.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Util/ITaskService.cs b/lang/cs/Source/WAKE/Wake/Util/ITaskService.cs
deleted file mode 100644
index 2ad0e1e..0000000
--- a/lang/cs/Source/WAKE/Wake/Util/ITaskService.cs
+++ /dev/null
@@ -1,34 +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.
- */
-
-using System;
-using System.Threading;
-using System.Threading.Tasks;
-
-namespace Org.Apache.Reef.Wake.Util
-{
- public interface ITaskService
- {
- void Shutdown();
-
- void Execute(ThreadStart threadStart);
-
- Task<T> Submit<T>(Func<T> ob);
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Util/LimitedConcurrencyLevelTaskScheduler.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Util/LimitedConcurrencyLevelTaskScheduler.cs b/lang/cs/Source/WAKE/Wake/Util/LimitedConcurrencyLevelTaskScheduler.cs
deleted file mode 100644
index 4bd3083..0000000
--- a/lang/cs/Source/WAKE/Wake/Util/LimitedConcurrencyLevelTaskScheduler.cs
+++ /dev/null
@@ -1,187 +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.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Threading;
-using System.Threading.Tasks;
-using Org.Apache.Reef.Utilities.Diagnostics;
-using Org.Apache.Reef.Utilities.Logging;
-
-namespace Org.Apache.Reef.Wake.Util
-{
- internal class LimitedConcurrencyLevelTaskScheduler : TaskScheduler
- {
- private static readonly Logger LOGGER = Logger.GetLogger(typeof(LimitedConcurrencyLevelTaskScheduler));
-
- /// <summary>Whether the current thread is processing work items.</summary>
- [ThreadStatic]
- private static bool _currentThreadIsProcessingItems;
-
- /// <summary>The list of tasks to be executed.</summary>
- private readonly LinkedList<Task> _tasks = new LinkedList<Task>(); // protected by lock(_tasks)
-
- /// <summary>The maximum concurrency level allowed by this scheduler.</summary>
- private readonly int _maxDegreeOfParallelism;
-
- /// <summary>Whether the scheduler is currently processing work items.</summary>
- private int _delegatesQueuedOrRunning = 0; // protected by lock(_tasks)
-
- /// <summary>
- /// Initializes an instance of the LimitedConcurrencyLevelTaskScheduler class with the
- /// specified degree of parallelism.
- /// </summary>
- /// <param name="maxDegreeOfParallelism">The maximum degree of parallelism provided by this scheduler.</param>
- public LimitedConcurrencyLevelTaskScheduler(int maxDegreeOfParallelism)
- {
- if (maxDegreeOfParallelism < 1)
- {
- Exceptions.Throw(new ArgumentOutOfRangeException("maxDegreeOfParallelism"), LOGGER);
- }
- _maxDegreeOfParallelism = maxDegreeOfParallelism;
- }
-
- /// <summary>Gets the maximum concurrency level supported by this scheduler.</summary>
- public sealed override int MaximumConcurrencyLevel
- {
- get
- {
- return _maxDegreeOfParallelism;
- }
- }
-
- /// <summary>Queues a task to the scheduler.</summary>
- /// <param name="task">The task to be queued.</param>
- protected sealed override void QueueTask(Task task)
- {
- // Add the task to the list of tasks to be processed. If there aren't enough
- // delegates currently queued or running to process tasks, schedule another.
- lock (_tasks)
- {
- _tasks.AddLast(task);
- if (_delegatesQueuedOrRunning < _maxDegreeOfParallelism)
- {
- ++_delegatesQueuedOrRunning;
- NotifyThreadPoolOfPendingWork();
- }
- }
- }
-
- /// <summary>Attempts to execute the specified task on the current thread.</summary>
- /// <param name="task">The task to be executed.</param>
- /// <param name="taskWasPreviouslyQueued"></param>
- /// <returns>Whether the task could be executed on the current thread.</returns>
- protected sealed override bool TryExecuteTaskInline(Task task, bool taskWasPreviouslyQueued)
- {
- // If this thread isn't already processing a task, we don't support inlining
- if (!_currentThreadIsProcessingItems)
- {
- return false;
- }
-
- // If the task was previously queued, remove it from the queue
- if (taskWasPreviouslyQueued)
- {
- TryDequeue(task);
- }
-
- // Try to run the task.
- return TryExecuteTask(task);
- }
-
- /// <summary>Attempts to remove a previously scheduled task from the scheduler.</summary>
- /// <param name="task">The task to be removed.</param>
- /// <returns>Whether the task could be found and removed.</returns>
- protected sealed override bool TryDequeue(Task task)
- {
- lock (_tasks)
- {
- return _tasks.Remove(task);
- }
- }
-
- /// <summary>Gets an enumerable of the tasks currently scheduled on this scheduler.</summary>
- /// <returns>An enumerable of the tasks currently scheduled.</returns>
- protected sealed override IEnumerable<Task> GetScheduledTasks()
- {
- bool lockTaken = false;
- try
- {
- Monitor.TryEnter(_tasks, ref lockTaken);
- if (lockTaken)
- {
- return _tasks.ToArray();
- }
- else
- {
- throw new NotSupportedException();
- }
- }
- finally
- {
- if (lockTaken)
- {
- Monitor.Exit(_tasks);
- }
- }
- }
-
- /// <summary>
- /// Informs the ThreadPool that there's work to be executed for this scheduler.
- /// </summary>
- private void NotifyThreadPoolOfPendingWork()
- {
- ThreadPool.UnsafeQueueUserWorkItem(_ =>
- {
- // Note that the current thread is now processing work items.
- // This is necessary to enable inlining of tasks into this thread.
- _currentThreadIsProcessingItems = true;
- try
- {
- // Process all available items in the queue.
- while (true)
- {
- Task item;
- lock (_tasks)
- {
- // When there are no more items to be processed,
- // note that we're done processing, and get out.
- if (_tasks.Count == 0)
- {
- --_delegatesQueuedOrRunning;
- break;
- }
- // Get the next item from the queue
- item = _tasks.First.Value;
- _tasks.RemoveFirst();
- }
- // Execute the task we pulled out of the queue
- base.TryExecuteTask(item);
- }
- }
- // We're done processing items on the current thread
- finally
- {
- _currentThreadIsProcessingItems = false;
- }
- }, null);
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Util/NetworkUtils.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Util/NetworkUtils.cs b/lang/cs/Source/WAKE/Wake/Util/NetworkUtils.cs
deleted file mode 100644
index c598c49..0000000
--- a/lang/cs/Source/WAKE/Wake/Util/NetworkUtils.cs
+++ /dev/null
@@ -1,66 +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.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Net;
-using System.Net.Sockets;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Org.Apache.Reef.Wake.Util
-{
- public class NetworkUtils
- {
- private static IPAddress _localAddress;
- private static Random _random = new Random();
-
- /// <summary>
- /// Returns the first usable IP Address for the machine.
- /// </summary>
- /// <returns>The machine's local IP Address</returns>
- public static IPAddress LocalIPAddress
- {
- get
- {
- if (_localAddress == null)
- {
- IPAddress[] localIps = Dns.GetHostAddresses(Dns.GetHostName());
- _localAddress = localIps.Where(i => i.AddressFamily.Equals(AddressFamily.InterNetwork))
- .OrderBy(ip => ip.ToString())
- .First();
- }
-
- return _localAddress;
- }
- }
-
- /// <summary>
- /// Generate a random port between low (inclusive) and high (exclusive)
- /// </summary>
- /// <param name="low">The inclusive lower bound of the of the port range</param>
- /// <param name="high">The exclusive upper bound of the port range</param>
- /// <returns>The randomly generated port</returns>
- public static int GenerateRandomPort(int low, int high)
- {
- return _random.Next(low, high);
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Util/SerializationHelper.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Util/SerializationHelper.cs b/lang/cs/Source/WAKE/Wake/Util/SerializationHelper.cs
deleted file mode 100644
index cd9e220..0000000
--- a/lang/cs/Source/WAKE/Wake/Util/SerializationHelper.cs
+++ /dev/null
@@ -1,46 +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.
- */
-
-using ProtoBuf;
-using System;
-using System.IO;
-using System.Runtime.Serialization;
-
-namespace Org.Apache.Reef.Wake.Util
-{
- public class SerializationHelper
- {
- public static byte[] Serialize<T>(T t)
- {
- using (var s = new MemoryStream())
- {
- Serializer.Serialize(s, t);
- return s.ToArray();
- }
- }
-
- public static T Deserialize<T>(byte[] bytes)
- {
- using (var s = new MemoryStream(bytes))
- {
- return Serializer.Deserialize<T>(s);
- }
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Util/TaskExtensions.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Util/TaskExtensions.cs b/lang/cs/Source/WAKE/Wake/Util/TaskExtensions.cs
deleted file mode 100644
index 0c1da40..0000000
--- a/lang/cs/Source/WAKE/Wake/Util/TaskExtensions.cs
+++ /dev/null
@@ -1,34 +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.
- */
-
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Org.Apache.Reef.Wake.Util
-{
- public static class TaskExtensions
- {
- public static void Forget(this Task task)
- {
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Util/TimeHelper.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Util/TimeHelper.cs b/lang/cs/Source/WAKE/Wake/Util/TimeHelper.cs
deleted file mode 100644
index 2b437fa..0000000
--- a/lang/cs/Source/WAKE/Wake/Util/TimeHelper.cs
+++ /dev/null
@@ -1,49 +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.
- */
-
-using System;
-using System.Threading;
-
-namespace Org.Apache.Reef.Wake.Util
-{
- public class TimeHelper
- {
- public const long TicksPerMilliSecond = 10000;
- public const long TicksPerMicroSecond = 10;
- public const double TicksPerNanoSecond = .01;
-
- public static long CurrentTimeToNanoSeconds
- {
- get
- {
- return DateTime.Now.Ticks / 100;
- }
- }
-
- public static long AsLongNanoSeconds(TimeSpan timeSpan)
- {
- return (long)(timeSpan.Ticks * TicksPerNanoSecond);
- }
-
- public static double AsDoubleNanoSeconds(TimeSpan timeSpan)
- {
- return timeSpan.Ticks * TicksPerNanoSecond;
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/Wake.csproj
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/Wake.csproj b/lang/cs/Source/WAKE/Wake/Wake.csproj
deleted file mode 100644
index cd15289..0000000
--- a/lang/cs/Source/WAKE/Wake/Wake.csproj
+++ /dev/null
@@ -1,216 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-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.
--->
-<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
- <PropertyGroup>
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
- <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
- <ProjectGuid>{CDFB3464-4041-42B1-9271-83AF24CD5008}</ProjectGuid>
- <OutputType>Library</OutputType>
- <AppDesignerFolder>Properties</AppDesignerFolder>
- <RootNamespace>Org.Apache.Reef.Wake</RootNamespace>
- <AssemblyName>Org.Apache.Reef.Wake</AssemblyName>
- <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
- <FileAlignment>512</FileAlignment>
- <RestorePackages>true</RestorePackages>
- <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\..\</SolutionDir>
- </PropertyGroup>
- <Import Project="$(SolutionDir)\Source\build.props" />
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
- <PlatformTarget>AnyCPU</PlatformTarget>
- <DebugSymbols>true</DebugSymbols>
- <DebugType>full</DebugType>
- <Optimize>false</Optimize>
- <OutputPath>$(BinDir)\$(Platform)\$(Configuration)\$(RootNamespace)</OutputPath>
- <DefineConstants>DEBUG;TRACE</DefineConstants>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
- <PlatformTarget>AnyCPU</PlatformTarget>
- <DebugSymbols>true</DebugSymbols>
- <DebugType>full</DebugType>
- <Optimize>false</Optimize>
- <OutputPath>$(BinDir)\$(Platform)\$(Configuration)\$(RootNamespace)</OutputPath>
- <DefineConstants>DEBUG;TRACE</DefineConstants>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
- <PlatformTarget>AnyCPU</PlatformTarget>
- <DebugType>pdbonly</DebugType>
- <Optimize>true</Optimize>
- <OutputPath>$(BinDir)\$(Platform)\$(Configuration)\$(RootNamespace)</OutputPath>
- <DefineConstants>TRACE</DefineConstants>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
- <PlatformTarget>AnyCPU</PlatformTarget>
- <DebugType>pdbonly</DebugType>
- <Optimize>true</Optimize>
- <OutputPath>$(BinDir)\$(Platform)\$(Configuration)\$(RootNamespace)</OutputPath>
- <DefineConstants>TRACE</DefineConstants>
- <ErrorReport>prompt</ErrorReport>
- <WarningLevel>4</WarningLevel>
- </PropertyGroup>
- <ItemGroup>
- <Reference Include="protobuf-net">
- <HintPath>$(PackagesDir)\protobuf-net.$(ProtobufVersion)\lib\net40\protobuf-net.dll</HintPath>
- </Reference>
- <Reference Include="System" />
- <Reference Include="System.Core" />
- <Reference Include="System.Reactive.Core">
- <HintPath>$(PackagesDir)\Rx-Core.$(RxVersion)\lib\net45\System.Reactive.Core.dll</HintPath>
- </Reference>
- <Reference Include="System.Reactive.Interfaces">
- <HintPath>$(PackagesDir)\Rx-Interfaces.$(RxVersion)\lib\net45\System.Reactive.Interfaces.dll</HintPath>
- </Reference>
- <Reference Include="System.Runtime.Serialization" />
- <Reference Include="System.Xml.Linq" />
- <Reference Include="System.Data.DataSetExtensions" />
- <Reference Include="Microsoft.CSharp" />
- <Reference Include="System.Data" />
- <Reference Include="System.Xml" />
- </ItemGroup>
- <ItemGroup>
- <Compile Include="AbstractEStage.cs" />
- <Compile Include="IEStage.cs" />
- <Compile Include="IEventHandler.cs" />
- <Compile Include="IIdentifier.cs" />
- <Compile Include="IIdentifierFactory.cs" />
- <Compile Include="Impl\LoggingEventHandler.cs" />
- <Compile Include="Impl\MissingStartHandlerHandler.cs" />
- <Compile Include="Impl\MultiEventHandler.cs" />
- <Compile Include="Impl\PeriodicEvent.cs" />
- <Compile Include="Impl\PubSubEventHandler.cs" />
- <Compile Include="Impl\SingleThreadStage.cs" />
- <Compile Include="Impl\SyncStage.cs" />
- <Compile Include="Impl\ThreadPoolStage.cs" />
- <Compile Include="Impl\TimerStage.cs" />
- <Compile Include="IObserverFactory.cs" />
- <Compile Include="IStage.cs" />
- <Compile Include="Properties\AssemblyInfo.cs" />
- <Compile Include="Remote\ICodec.cs" />
- <Compile Include="Remote\ICodecFactory.cs" />
- <Compile Include="Remote\IDecoder.cs" />
- <Compile Include="Remote\IEncoder.cs" />
- <Compile Include="Remote\ILink.cs" />
- <Compile Include="Remote\Impl\ByteCodec.cs" />
- <Compile Include="Remote\Impl\ByteCodecFactory.cs" />
- <Compile Include="Remote\Impl\Channel.cs" />
- <Compile Include="Remote\Impl\DefaultRemoteManager.cs" />
- <Compile Include="Remote\Impl\DefaultRemoteMessage.cs" />
- <Compile Include="Remote\Impl\IntCodec.cs" />
- <Compile Include="Remote\Impl\IPEndpointComparer.cs" />
- <Compile Include="Remote\Impl\Link.cs" />
- <Compile Include="Remote\Impl\MultiCodec.cs" />
- <Compile Include="Remote\Impl\MultiDecoder.cs" />
- <Compile Include="Remote\Impl\MultiEncoder.cs" />
- <Compile Include="Remote\Impl\ObserverContainer.cs" />
- <Compile Include="Remote\Impl\RemoteEvent.cs" />
- <Compile Include="Remote\Impl\RemoteEventCodec.cs" />
- <Compile Include="Remote\Impl\RemoteEventDecoder.cs" />
- <Compile Include="Remote\Impl\RemoteEventEncoder.cs" />
- <Compile Include="Remote\Impl\RemoteEventEndpoint.cs" />
- <Compile Include="Remote\Impl\SocketRemoteIdentifier.cs" />
- <Compile Include="Remote\Impl\StringCodec.cs" />
- <Compile Include="Remote\Impl\StringIdentifier.cs" />
- <Compile Include="Remote\Impl\StringIdentifierFactory.cs" />
- <Compile Include="Remote\Impl\TransportClient.cs" />
- <Compile Include="Remote\Impl\TransportEvent.cs" />
- <Compile Include="Remote\Impl\TransportServer.cs" />
- <Compile Include="Remote\IRemoteEvent.cs" />
- <Compile Include="Remote\IRemoteIdentifier.cs" />
- <Compile Include="Remote\IRemoteIdentifierFactory.cs" />
- <Compile Include="Remote\IRemoteManager.cs" />
- <Compile Include="Remote\IRemoteMessage.cs" />
- <Compile Include="Remote\ISubscriptionManager.cs" />
- <Compile Include="Remote\Proto\WakeRemoteProtos.cs" />
- <Compile Include="Remote\RemoteConfiguration.cs" />
- <Compile Include="Remote\RemoteRuntimeException.cs" />
- <Compile Include="RX\AbstractObserver.cs" />
- <Compile Include="RX\AbstractRxStage.cs" />
- <Compile Include="RX\Impl\PubSubSubject.cs" />
- <Compile Include="RX\Impl\RxSyncStage.cs" />
- <Compile Include="RX\Impl\RxThreadPoolStage.cs" />
- <Compile Include="RX\Impl\RxTimerStage.cs" />
- <Compile Include="RX\Impl\SimpleSubject.cs" />
- <Compile Include="RX\IRxStage.cs" />
- <Compile Include="RX\IStaticObservable.cs" />
- <Compile Include="RX\ISubject.cs" />
- <Compile Include="RX\ObserverCompletedException.cs" />
- <Compile Include="src\main\cs\Examples\P2p\IEventSource.cs" />
- <Compile Include="src\main\cs\Examples\P2p\Pull2Push.cs" />
- <Compile Include="src\main\cs\PeriodicEvent.cs" />
- <Compile Include="Protobuf\WakeRemoteProtosGen.cs" />
- <Compile Include="Time\Event\Alarm.cs" />
- <Compile Include="Time\Event\StartTime.cs" />
- <Compile Include="Time\Event\StopTime.cs" />
- <Compile Include="Time\IClock.cs" />
- <Compile Include="Time\Runtime\Event\ClientAlarm.cs" />
- <Compile Include="Time\Runtime\Event\IdleClock.cs" />
- <Compile Include="Time\Runtime\Event\RuntimeAlarm.cs" />
- <Compile Include="Time\Runtime\Event\RuntimeStart.cs" />
- <Compile Include="Time\Runtime\Event\RuntimeStop.cs" />
- <Compile Include="Time\Runtime\ITimer.cs" />
- <Compile Include="Time\Runtime\LogicalTimer.cs" />
- <Compile Include="Time\Runtime\RealTimer.cs" />
- <Compile Include="Time\Runtime\RuntimeClock.cs" />
- <Compile Include="Time\Time.cs" />
- <Compile Include="Util\Actionable.cs" />
- <Compile Include="Util\Disposable.cs" />
- <Compile Include="Util\FixedThreadPoolTaskService.cs" />
- <Compile Include="Util\IStartable.cs" />
- <Compile Include="Util\ITaskService.cs" />
- <Compile Include="Util\LimitedConcurrencyLevelTaskScheduler.cs" />
- <Compile Include="Util\NetworkUtils.cs" />
- <Compile Include="Util\SerializationHelper.cs" />
- <Compile Include="Util\TaskExtensions.cs" />
- <Compile Include="Util\TimeHelper.cs" />
- <Compile Include="WakeRuntimeException.cs" />
- </ItemGroup>
- <ItemGroup>
- <None Include="packages.config" />
- <None Include="Protobuf\RemoteProtocol.proto" />
- </ItemGroup>
- <ItemGroup>
- <Folder Include="Time\Time\Event\" />
- <Folder Include="Time\Time\Runtime\Event\" />
- <Folder Include="Util\Util\" />
- </ItemGroup>
- <ItemGroup>
- <ProjectReference Include="$(SourceDir)\Tang\Tang\Tang.csproj">
- <Project>{97dbb573-3994-417a-9f69-ffa25f00d2a6}</Project>
- <Name>Tang</Name>
- </ProjectReference>
- <ProjectReference Include="$(SourceDir)\Utilities\Utilities.csproj">
- <Project>{79e7f89a-1dfb-45e1-8d43-d71a954aeb98}</Project>
- <Name>Utilities</Name>
- </ProjectReference>
- </ItemGroup>
- <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
- <Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition="Exists('$(SolutionDir)\.nuget\NuGet.targets')" />
- <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
- Other similar extension points exist, see Microsoft.Common.targets.
- <Target Name="BeforeBuild">
- </Target>
- <Target Name="AfterBuild">
- </Target>
- -->
-</Project>
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/WakeRuntimeException.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/WakeRuntimeException.cs b/lang/cs/Source/WAKE/Wake/WakeRuntimeException.cs
deleted file mode 100644
index 0ac2c13..0000000
--- a/lang/cs/Source/WAKE/Wake/WakeRuntimeException.cs
+++ /dev/null
@@ -1,54 +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.
- */
-
-using System;
-
-namespace Org.Apache.Reef.Wake
-{
- /// <summary>Wake runtime exception</summary>
- [System.Serializable]
- public class WakeRuntimeException : Exception
- {
- private const long serialVersionUID = 1L;
-
- /// <summary>Constructs a new runtime wake exception with the specified detail message and cause
- /// </summary>
- /// <param name="s">the detailed message</param>
- /// <param name="e">the cause</param>
- public WakeRuntimeException(string s, Exception e)
- : base(s, e)
- {
- }
-
- /// <summary>Constructs a new runtime stage exception with the specified detail message
- /// </summary>
- /// <param name="s">the detailed message</param>
- public WakeRuntimeException(string s)
- : base(s)
- {
- }
-
- /// <summary>Constructs a new runtime stage exception with the specified cause</summary>
- /// <param name="e">the cause</param>
- public WakeRuntimeException(Exception e)
- : base("Runtime Exception", e)
- {
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/packages.config
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/packages.config b/lang/cs/Source/WAKE/Wake/packages.config
deleted file mode 100644
index fd78097..0000000
--- a/lang/cs/Source/WAKE/Wake/packages.config
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-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.
--->
-<packages>
- <package id="protobuf-net" version="2.0.0.668" targetFramework="net45" />
- <package id="Rx-Core" version="2.2.5" targetFramework="net45" />
- <package id="Rx-Interfaces" version="2.2.5" targetFramework="net45" />
-</packages>
http://git-wip-us.apache.org/repos/asf/incubator-reef/blob/c1b5200f/lang/cs/Source/WAKE/Wake/src/main/cs/Examples/P2p/IEventSource.cs
----------------------------------------------------------------------
diff --git a/lang/cs/Source/WAKE/Wake/src/main/cs/Examples/P2p/IEventSource.cs b/lang/cs/Source/WAKE/Wake/src/main/cs/Examples/P2p/IEventSource.cs
deleted file mode 100644
index d761032..0000000
--- a/lang/cs/Source/WAKE/Wake/src/main/cs/Examples/P2p/IEventSource.cs
+++ /dev/null
@@ -1,35 +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 Wake.Examples.P2p
-{
- /// <summary>
- /// The pull side of the interface: Clients implement this and register it with
- /// the PullToPush class.
- /// </summary>
- /// <typeparam name="T">The event type</typeparam>
- public interface IEventSource<T>
- {
- /// <summary>
- /// Gets the next event
- /// </summary>
- /// <returns>The next event</returns>
- T GetNext();
- }
-}