20 lines
850 B
C#
20 lines
850 B
C#
|
//------------------------------------------------------------
|
||
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||
|
//------------------------------------------------------------
|
||
|
|
||
|
namespace System.ServiceModel.Security
|
||
|
{
|
||
|
// The rationale for making abstract methods protected instead of public is following:
|
||
|
// 1. No scenarios for making them public.
|
||
|
// 2. Reduction of threat area (other assemblies on the channel can't call these methods other than through reflection).
|
||
|
// 3. Reduction of test area (feature is testable only through other high-level features).
|
||
|
public abstract class SecurityStateEncoder
|
||
|
{
|
||
|
protected SecurityStateEncoder() { }
|
||
|
|
||
|
protected internal abstract byte[] DecodeSecurityState(byte[] data);
|
||
|
protected internal abstract byte[] EncodeSecurityState(byte[] data);
|
||
|
}
|
||
|
}
|
||
|
|