public void TestAllPOS()
        {
            RestartParameter parm = new RestartParameter()
            {
                ConnectionName = POSConnection, TableName = ""
            };
            bool result = parm.SatisfiesFilter(POSConnection, "ABC");

            Assert.IsTrue(result);
        }
        public void TestRestartPosProcessingHost()
        {
            RestartParameter parm = new RestartParameter()
            {
                ConnectionName = POSConnection, TableName = "PSCHK"
            };

            Assert.IsFalse(parm.SatisfiesFilter(HostConnection, "AC_TRN"));
            Assert.IsFalse(parm.SatisfiesFilter(HostConnection, "RS_SKED"));
            Assert.IsTrue(parm.SatisfiesFilter(POSConnection, "PS_WTF"));
        }
        public void TestRestartHostProcessingPOS()
        {
            RestartParameter parm = new RestartParameter()
            {
                ConnectionName = HostConnection, TableName = "IN_GUEST"
            };

            Assert.IsFalse(parm.SatisfiesFilter(HostConnection, "AC_TRN"));
            Assert.IsTrue(parm.SatisfiesFilter(HostConnection, "IN_RES"));
            Assert.IsTrue(parm.SatisfiesFilter(POSConnection, "PS_BANK"));
        }
        public void TestStartsWith()
        {
            RestartParameter parm = new RestartParameter()
            {
                ConnectionName = HostConnection, TableName = "IN_"
            };

            Assert.IsFalse(parm.SatisfiesFilter(HostConnection, "AC_TRN"));

            Assert.IsTrue(parm.SatisfiesFilter(HostConnection, "IN_"));
            Assert.IsTrue(parm.SatisfiesFilter(HostConnection, "IN_GUEST"));
            Assert.IsTrue(parm.SatisfiesFilter(HostConnection, "WO_TASK"));
        }
        public void TestMethod1()
        {
            RestartParameter rs = new RestartParameter()
            {
                ConnectionName = Constants.ConnectionNames.Host, TableName = "IN_H"
            };
            ITableNameProvider   tnp    = new TableNameProvider(LaptopHostConnectionString, rs.SatisfiesFilter);
            IEnumerable <String> tables = tnp.GetTables(Constants.ConnectionNames.Host, LaptopHostConnectionString);

            foreach (String s in tables)
            {
                TestContext.WriteLine(s);
            }
            TestContext.WriteLine("Done");
        }
        public void TestRestartPos()
        {
            RestartParameter parm = new RestartParameter()
            {
                ConnectionName = POSConnection, TableName = "PSINDX"
            };
            TableNameProvider    tnp    = new TableNameProvider(Helper.GetConnectionString(HostConnection), parm.SatisfiesFilter);
            IEnumerable <String> tables = tnp.GetTables(POSConnection, Helper.GetConnectionString(POSConnection));

            foreach (String table in tables)
            {
                Debug.WriteLine(table);
            }
            Debug.WriteLine("here boss");
        }
Esempio n. 7
0
        public void TestTextFileEventHandler()
        {
            const String         fileName        = @"c:\temp\events.log";
            BeginUploadEventArgs uploadBeginArgs = new BeginUploadEventArgs();

            uploadBeginArgs.ConnectionStrings = new List <String>()
            {
                "connectionString1", "connectionString2"
            };
            RestartParameter restartParm = new RestartParameter();

            restartParm.TableName            = "FUNG";
            uploadBeginArgs.RestartParameter = restartParm;

            IUploadEventHandler uploadEventHandler = new TextFileEventHandler(fileName);

            uploadEventHandler.HandleUploadBegin(null, uploadBeginArgs);
        }
        public void TestTableNameWithUnderBar()
        {
            /*
             *
             * The code in RestartParameter does character-by-character comparison - which
             * will give the expected result only if we use machine collation
             *
             * In VFP
             * - SELECT table from ditable WHERE table like 'SY%'
             * - INDEX ON table TAG generalCol COLLATE 'general'
             * - LIST the SY_ rows are at the top of the list
             * Record#  TABLE
             *    10  SY_COMM
             *    11  SY_LOG
             *     2  SYCCTYP
             *    12  SYCFGCHD
             *    13  SYCFGCHH
             *
             *
             * - INDEX ON table TAG MachineCol COLLATE 'machine'
             * - LIST the SY_ rows are at the bottom of the list
             * Record#  TABLE
             *  21  SYSHRESC
             *  22  SYSHRHDR
             *  9   SYSTEM
             *  10  SY_COMM
             *  11  SY_LOG
             *
             */

            const String     tableRoot = "SYCFGCH";
            RestartParameter parm      = new RestartParameter();

            parm.ConnectionName = Constants.ConnectionNames.Host;
            parm.TableName      = tableRoot + "H";

            Assert.IsFalse(parm.SatisfiesFilter(Constants.ConnectionNames.Host, tableRoot + "D"));
            Assert.IsTrue(parm.SatisfiesFilter(Constants.ConnectionNames.Host, parm.TableName));
            Assert.IsTrue(parm.SatisfiesFilter(Constants.ConnectionNames.Host, tableRoot + "I"));
            Assert.IsTrue(parm.SatisfiesFilter(Constants.ConnectionNames.Host, "SY_LOG"));

            //
        }
Esempio n. 9
0
 /// <summary>
 /// Restarts a server.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The name of the resource group. The name is case insensitive.
 /// </param>
 /// <param name='serverName'>
 /// The name of the server.
 /// </param>
 /// <param name='parameters'>
 /// The parameters for restarting a server.
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task BeginRestartAsync(this IServersOperations operations, string resourceGroupName, string serverName, RestartParameter parameters = default(RestartParameter), CancellationToken cancellationToken = default(CancellationToken))
 {
     (await operations.BeginRestartWithHttpMessagesAsync(resourceGroupName, serverName, parameters, null, cancellationToken).ConfigureAwait(false)).Dispose();
 }
Esempio n. 10
0
 /// <summary>
 /// Restarts a server.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The name of the resource group. The name is case insensitive.
 /// </param>
 /// <param name='serverName'>
 /// The name of the server.
 /// </param>
 /// <param name='parameters'>
 /// The parameters for restarting a server.
 /// </param>
 public static void BeginRestart(this IServersOperations operations, string resourceGroupName, string serverName, RestartParameter parameters = default(RestartParameter))
 {
     operations.BeginRestartAsync(resourceGroupName, serverName, parameters).GetAwaiter().GetResult();
 }
Esempio n. 11
0
        public void Upload()
        {
            var    appSettings = ConfigurationManager.AppSettings;
            String restartConnection, restartTable;

            restartConnection = appSettings[Constants.AppSettingKeys.RestartConnectionName];
            restartTable      = appSettings[Constants.AppSettingKeys.RestartTableName];

            RestartParameter restartParm;

            restartParm = null;
            if (!String.IsNullOrEmpty(restartConnection) && !String.IsNullOrEmpty(restartTable))
            {
                System.Console.WriteLine(String.Format("Configured to restart on {0}/{1}", restartConnection, restartTable));
                System.Console.WriteLine("Is this correct? (Y/N)");
                System.Console.Beep();
                String response = System.Console.ReadLine().Trim().ToUpper();
                if (response == "Y")
                {
                    restartParm = new RestartParameter();
                    restartParm.ConnectionName = restartConnection;
                    restartParm.TableName      = restartTable;
                }
                else
                {
                    System.Console.WriteLine("App.Config must be corrected.  Processing is terminated");
                    System.Console.Read();
                    return;
                }
            }


            IDictionary <String, String> connStrs = new Dictionary <String, String>();
            String connName;

            connName = VfpToSqlBulkCopy.Utility.Constants.ConnectionNames.Host;
            connStrs.Add(connName, GetConnectionString(connName, true));
            connName = VfpToSqlBulkCopy.Utility.Constants.ConnectionNames.Sql;
            connStrs.Add(connName, GetConnectionString(connName, true));

            connName = VfpToSqlBulkCopy.Utility.Constants.ConnectionNames.POS;
            String connStr = GetConnectionString(connName, false);

            if (!String.IsNullOrEmpty(connStr))
            {
                connStrs.Add(connName, connStr);
            }


            String logFileName = null;

            try
            {
                logFileName = appSettings[Constants.TableProcessorEventsFileNameAppSettingsKey];
            }
            catch (ConfigurationErrorsException)
            {
                logFileName = "TableProcessorEvents.Log";
            }


            IList <IUploadEventHandler> eventHandlers = new List <IUploadEventHandler>()
            {
                new ConsoleEventHandler(),
                new TextFileEventHandler(logFileName)
            };


            eventHandlers.Add(new VfpToSqlBulkCopy.Utility.Events.SqlEventHandler());

            IUploadEventHandler eventHandler = new CompositeEventHandler(eventHandlers);

            UploadLauncher uploadLauncher = new UploadLauncher(connStrs, null, restartParm);

            uploadLauncher.BeginUpload += eventHandler.HandleUploadBegin;
            uploadLauncher.TableProcessor.TableProcessorBegin     += eventHandler.HandleTableProcessorBegin;
            uploadLauncher.TableProcessor.TableProcessorEnd       += eventHandler.HandleTableProcessorEnd;
            uploadLauncher.TableProcessor.TableProcessorException += eventHandler.HandleTableProcessorException;
            uploadLauncher.EndUpload += eventHandler.HandleUploadEnd;
            uploadLauncher.Launch();
        }