#region License // Copyright 2005-2019 Paul Kohler (https://github.com/paulkohler/minisqlquery). All rights reserved. // This source code is made available under the terms of the GNU Lesser General Public License v3.0 // https://github.com/paulkohler/minisqlquery/blob/master/LICENSE #endregion using System.Collections.Generic; namespace MiniSqlQuery.Core { /// /// Used for sorting plugins at load time, a very simple ordering system for the plugins. /// public class PlugInComparer : IComparer { /// /// Orders two plugin classes. /// /// The left side object. /// The right side object. /// The compare result. public int Compare(IPlugIn x, IPlugIn y) { int result; if (x == null && y == null) { result = 0; } else if (y == null) { result = -1; } else if (x == null) { result = 1; } else { int numX = x.RequestedLoadOrder; int numY = y.RequestedLoadOrder; result = numX - numY; } return result; } } }