﻿// <copyright file="ViewResolver.cs" company="Stormpath, Inc.">
// Copyright (c) 2016 Stormpath, Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//      http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// </copyright>

using System;
using System.Collections.Generic;

namespace Stormpath.Owin.Common.Views.Precompiled
{
    public static class ViewResolver
    {
        private static readonly Dictionary<string, Func<IView>> LookupTable = 
            new Dictionary<string, Func<IView>>(StringComparer.OrdinalIgnoreCase)
        {
            ["change"] = () => new Change(),
            ["forgot"] = () => new Forgot(),
            ["login"] = () => new Login(),
            ["register"] = () => new Register(),
            ["verify"] = () => new Verify(),
        };

        public static IView GetView(string name)
        {
            Func<IView> foundViewFactory = null;
            LookupTable.TryGetValue(name, out foundViewFactory);

            return foundViewFactory == null
                ? null
                : foundViewFactory();
        }
    }
}

﻿// <copyright file="ViewResolver.cs" company="Stormpath, Inc.">
// Copyright (c) 2016 Stormpath, Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//      http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// </copyright>

using System;
using System.Collections.Generic;

namespace Stormpath.Owin.Common.Views.Precompiled
{
    public static class ViewResolver
    {
        private static readonly Dictionary<string, Func<IView>> LookupTable = 
            new Dictionary<string, Func<IView>>(StringComparer.OrdinalIgnoreCase)
        {
            ["change-password"] = () => new Change(),
            ["forgot-password"] = () => new Forgot(),
            ["login"] = () => new Login(),
            ["register"] = () => new Register(),
            ["verify"] = () => new Verify(),
        };

        public static IView GetView(string name)
        {
            Func<IView> foundViewFactory = null;
            LookupTable.TryGetValue(name, out foundViewFactory);

            return foundViewFactory == null
                ? null
                : foundViewFactory();
        }
    }
}

Fix incorrect default view names
Fix incorrect default view names
