//-----------------------------------------------------------------------
//
// Copyright (c) Outercurve Foundation. All rights reserved.
//
//-----------------------------------------------------------------------
namespace DotNetOpenAuth.OpenId.Messages {
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using DotNetOpenAuth.Messaging;
using DotNetOpenAuth.OpenId.Provider;
///
/// An outgoing successful association response from the OpenID Provider.
///
internal interface IAssociateSuccessfulResponseProvider : IProtocolMessage {
///
/// Gets or sets the expires in.
///
///
/// The expires in.
///
long ExpiresIn { get; set; }
///
/// Gets or sets the association handle.
///
///
/// The association handle.
///
string AssociationHandle { get; set; }
///
/// Called to create the Association based on a request previously given by the Relying Party.
///
/// The prior request for an association.
/// The Provider's association store.
/// The security settings of the Provider.
///
/// The created association.
///
///
/// The caller will update this message's and
/// properties based on the returned by this method, but any other
/// association type specific properties must be set by this method.
/// The response message is updated to include the details of the created association by this method,
/// but the resulting association is not added to the association store and must be done by the caller.
///
Association CreateAssociationAtProvider(AssociateRequest request, IProviderAssociationStore associationStore, ProviderSecuritySettings securitySettings);
}
}