blob: 50ae72ec18ced69cccab1b01e6d1849e6e1f429a [file]
/* $Id$
*
* Copyright 2007-2008 Cisco Systems Inc.
*
* Licensed 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 etch.examples.perf
{
public class ImplPerfServer : BasePerfServer
{
public ImplPerfServer(RemotePerfClient client)
{
this.client = client;
}
#pragma warning disable 219
private readonly RemotePerfClient client;
#pragma warning restore 219
#region PerfServer Members
public override int? add(int? x, int? y)
{
return x + y;
}
public override int? sum(int[] values)
{
int sum = 0;
foreach (int value in values)
sum += value;
return sum;
}
public override void report(int? code, string msg)
{
// do nothing
}
public override types.Perf.Point dist(types.Perf.Point a, types.Perf.Point b)
{
return new types.Perf.Point(b.x - a.x, b.y - a.y);
}
public override DateTime? add2(DateTime? ts, long? ms)
{
return ts.Value + new TimeSpan(ms.Value*10000);
}
public override void report2(DateTime? ts, int? code, string msg)
{
// do nothing.
}
#endregion
}
}