//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:4.0.30319.296
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

namespace Pluto.Api
{
    using System;
    using RemObjects.SDK;
    using RemObjects.SDK.Types;
    using RemObjects.SDK.Server;
    using RemObjects.SDK.Server.ClassFactories;

    [RemObjects.SDK.Server.ClassFactories.StandardClassFactory()]
    [RemObjects.SDK.Server.Service(Name = "MSLSpecific", InvokerClass = typeof(MSLSpecific_Invoker), ActivatorClass = typeof(MSLSpecific_Activator))]
    public class MSLSpecific : RemObjects.SDK.Server.Service, IMSLSpecific
    {
        private System.ComponentModel.Container components = null;
        public MSLSpecific() :
            base()
        {
            this.InitializeComponent();
        }
        private void InitializeComponent()
        {
        }
        protected override void Dispose(bool aDisposing)
        {
            if (aDisposing)
            {
                if ((this.components != null))
                {
                    this.components.Dispose();
                }
            }
            base.Dispose(aDisposing);
        }
        public virtual bool ProductSetupCompleted(string SharedConnectionDataSource, string RegisteredName)
        {
            return true;
        }
        public virtual bool PracticeNameChangeOccured(string SharedConnectionDataSource, string NewPracticeName, string DataBaseNameOrDataSetName)
        {
            return true;
        }
        public virtual ApiKeyNPin MobileAboutDialogCalled(string SharedConnectionDataSource, string RegisteredName, string PracticeName, string DataBaseNameOrDataSetName)
        {
            return null;
        }
        public virtual bool IsServerReachableFromTheInternet(string SharedConnectionDataSource)
        {
            return true;
        }
        public virtual void UpdateServiceIfNeeded()
        {

        }
        public virtual string GetHostSpecGUID()
        {
            return String.Empty;
        }
        public virtual int GetExternalPort()
        {
            return 0;
        }
        public virtual bool SetExternalPort(int Port)
        {
            return false;
        }
        public virtual string GetExternalIP()
        {
            return "";
        }
        public virtual string GetLocalIP()
        {
            return "";
        }
        public virtual void GenerateApiKeysForPracticesInLoadedSharedCredentials()
        {

        }
        public virtual bool AddSharedCredential(ApiKeyNCredential credential)
        {
            return false;
        }
        public virtual ApiKeyNCredential[] GetLoadedCredentials()
        {
            return null;
        }
    }
}
