//-----------------------------------------------------------------------
//
// Copyright (c) Outercurve Foundation. All rights reserved.
//
//-----------------------------------------------------------------------
namespace DotNetOpenAuth.OpenId.Provider {
using System;
using System.Collections.Generic;
using System.Diagnostics.Contracts;
using System.Linq;
using System.Text;
using DotNetOpenAuth.Messaging;
///
/// Code contract for the class.
///
[ContractClassFor(typeof(Request))]
internal abstract class RequestContract : Request {
///
/// Prevents a default instance of the class from being created.
///
private RequestContract() : base((Version)null, null) {
}
///
/// Gets a value indicating whether the response is ready to be sent to the user agent.
///
///
/// This property returns false if there are properties that must be set on this
/// request instance before the response can be sent.
///
public override bool IsResponseReady {
get { throw new NotImplementedException(); }
}
///
/// Gets the response message, once is true.
///
protected override IProtocolMessage ResponseMessage {
get {
Requires.ValidState(this.IsResponseReady);
Contract.Ensures(Contract.Result() != null);
throw new NotImplementedException();
}
}
}
}