// Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using System.Collections.Generic;
using Microsoft.AspNetCore.Dispatcher.Patterns;
#if ROUTING
using Microsoft.AspNetCore.Routing.Template;
#elif DISPATCHER
using Microsoft.AspNetCore.Dispatcher;
#else
#error
#endif
#if ROUTING
namespace Microsoft.AspNetCore.Routing.Tree
#elif DISPATCHER
namespace Microsoft.AspNetCore.Dispatcher
#else
#error
#endif
{
#if ROUTING
///
/// Used to build a . Represents a route template that will be used to match incoming
/// request URLs.
///
public
#elif DISPATCHER
///
/// Used to build a . Represents a route pattern that will be used to match incoming
/// request URLs.
///
internal
#else
#error
#endif
class InboundRouteEntry
{
///
/// Gets or sets the order of the entry.
///
///
/// Entries are ordered first by (ascending) then by (descending).
///
public int Order { get; set; }
///
/// Gets or sets the precedence of the entry.
///
///
/// Entries are ordered first by (ascending) then by (descending).
///
public decimal Precedence { get; set; }
#if ROUTING
///
/// Gets or sets the name of the route.
///
public string RouteName { get; set; }
///
/// Gets or sets the route constraints.
///
public IDictionary Constraints { get; set; }
///
/// Gets or sets the .
///
public RouteTemplate RouteTemplate { get; set; }
///
/// Gets or sets the route defaults.
///
public RouteValueDictionary Defaults { get; set; }
///
/// Gets or sets the to invoke when this entry matches.
///
public IRouter Handler { get; set; }
#elif DISPATCHER
///
/// Gets or sets the array of endpoints associated with the entry.
///
public Endpoint[] Endpoints { get; set; }
///
/// Gets or sets the dispatcher value constraints.
///
public IDictionary Constraints { get; set; }
///
/// Gets or sets the dispatcher value defaults.
///
public DispatcherValueCollection Defaults { get; set; }
///
/// Gets or sets the .
///
public RoutePattern RoutePattern { get; set; }
#else
#error
#endif
}
}