//-----------------------------------------------------------------------
//
// Copyright (c) Outercurve Foundation. All rights reserved.
//
//-----------------------------------------------------------------------
namespace DotNetOpenAuth.OpenId {
using System;
using System.Diagnostics;
using System.Diagnostics.CodeAnalysis;
using System.Diagnostics.Contracts;
using System.IO;
using System.Security.Cryptography;
using System.Text;
using DotNetOpenAuth.Configuration;
using DotNetOpenAuth.Messaging;
///
/// Code contract for the class.
///
[ContractClassFor(typeof(Association))]
internal abstract class AssociationContract : Association {
///
/// Prevents a default instance of the class from being created.
///
private AssociationContract()
: base(null, null, TimeSpan.Zero, DateTime.Now) {
}
///
/// Gets the length (in bits) of the hash this association creates when signing.
///
public override int HashBitLength {
get {
Contract.Ensures(Contract.Result() > 0);
throw new NotImplementedException();
}
}
///
/// The string to pass as the assoc_type value in the OpenID protocol.
///
/// The protocol version of the message that the assoc_type value will be included in.
///
/// The value that should be used for the openid.assoc_type parameter.
///
[Pure]
internal override string GetAssociationType(Protocol protocol) {
Requires.NotNull(protocol, "protocol");
throw new NotImplementedException();
}
///
/// Returns the specific hash algorithm used for message signing.
///
///
/// The hash algorithm used for message signing.
///
[Pure]
protected override HashAlgorithm CreateHasher() {
Contract.Ensures(Contract.Result() != null);
throw new NotImplementedException();
}
}
}