| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- //
- // PeerResolverSettings.cs
- //
- // Author:
- // Marcos Cobena ([email protected])
- //
- // Copyright 2007 Marcos Cobena (http://www.youcannoteatbits.org/)
- //
- using System;
- using System.ServiceModel.Channels;
- namespace System.ServiceModel.PeerResolvers
- {
- public class PeerResolverSettings
- {
- PeerCustomResolverSettings custom = new PeerCustomResolverSettings ();
- // FIXME: Is it really by default Auto?
- PeerResolverMode mode = PeerResolverMode.Auto;
-
- public PeerResolverSettings ()
- {
- }
- public PeerCustomResolverSettings Custom {
- get { return custom; }
- }
-
- public PeerResolverMode Mode { get; set; }
-
- public PeerReferralPolicy ReferralPolicy { get; set; }
- internal BindingElement CreateBinding ()
- {
- switch (Mode) {
- case PeerResolverMode.Pnrp:
- return new PnrpPeerResolverBindingElement () { ReferralPolicy = this.ReferralPolicy };
- default:
- var be = Custom.CreateBinding ();
- be.ReferralPolicy = this.ReferralPolicy;
- return be;
- }
- }
- }
- }
|