//-----------------------------------------------------------------------
//
// Copyright (c) Andrew Arnott. All rights reserved.
//
//-----------------------------------------------------------------------
namespace DotNetOpenAuth.Test.Mocks {
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using DotNetOpenAuth.Messaging;
using DotNetOpenAuth.OpenId;
using DotNetOpenAuth.OpenId.RelyingParty;
internal class MockIdentifierDiscoveryService : IIdentifierDiscoveryService {
///
/// Initializes a new instance of the class.
///
public MockIdentifierDiscoveryService() {
}
#region IIdentifierDiscoveryService Members
///
/// Performs discovery on the specified identifier.
///
/// The identifier to perform discovery on.
/// The means to place outgoing HTTP requests.
/// if set to true, no further discovery services will be called for this identifier.
///
/// A sequence of service endpoints yielded by discovery. Must not be null, but may be empty.
///
public IEnumerable Discover(Identifier identifier, IDirectWebRequestHandler requestHandler, out bool abortDiscoveryChain) {
var mockIdentifier = identifier as MockIdentifier;
if (mockIdentifier == null) {
abortDiscoveryChain = false;
return Enumerable.Empty();
}
abortDiscoveryChain = true;
return mockIdentifier.DiscoveryEndpoints;
}
#endregion
}
}