singrdk/base/Contracts/Security.Contracts/SecurityDiagnosticsContract.sg

53 lines
1.5 KiB
Plaintext

///////////////////////////////////////////////////////////////////////////////
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
namespace Microsoft.Singularity.Security
{
using System;
using Microsoft.SingSharp;
using Microsoft.Singularity.Directory;
using Microsoft.Singularity.Channels;
public contract SecurityDiagnosticsContract : ServiceContract
{
public const string ModuleName="/securitydiag";
/// <summary>
/// Tell the client the channel is ready.
/// </summary>
out message Ready();
/// <summary>
/// Get a principal name from a principal
/// </summary>
//in message GetName(long principalId);
//out message AckGetName(char[]! in ExHeap principalName);
in message GetStatistics();
out message GetStatisticsAck(char[]! in ExHeap stats);
in message ClearStatistics();
out message Ack();
in message FlushCaches();
// make sure to remove this!!
in message Disable(bool yes);
override state Start: Ready! -> ReadyState;
state ReadyState : one
{
//GetName? -> AckGetName! -> ReadyState;
ClearStatistics? -> Ack! -> ReadyState;
GetStatistics? -> GetStatisticsAck! -> ReadyState;
FlushCaches? -> Ack! -> ReadyState;
Disable? -> Ack! -> ReadyState;
}
}
}