98 lines
3.0 KiB
C#
98 lines
3.0 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace NX_Installation
|
|
{
|
|
class GetTransferParameters
|
|
{
|
|
private string FileName { set; get; }
|
|
|
|
public GetTransferParameters(string filename)
|
|
{
|
|
FileName = filename;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Delivers the transfer parameters in a string array
|
|
/// </summary>
|
|
/// <param name="arrayNumber">Maximum numbers of values you want to get.</param>
|
|
/// <returns></returns>
|
|
public string[] GetTransferParameter(int arrayNumber)
|
|
{
|
|
Logfile log = new Logfile(FileName);
|
|
log.Info("Determine transfer parameters");
|
|
|
|
int arrayLenght = ArrayLenght();
|
|
|
|
string[] allParameter = new string[arrayLenght];
|
|
allParameter = ReadTransferParameter();
|
|
|
|
foreach (String s in allParameter) //Werte in die Logdatei schreiben
|
|
{
|
|
log.Info("Determined transfer parameters: " + s);
|
|
}
|
|
|
|
return ShortenPathParameter(allParameter, arrayNumber);
|
|
}
|
|
|
|
private string[] ReadTransferParameter()
|
|
{
|
|
return Environment.GetCommandLineArgs();
|
|
}
|
|
|
|
private string[] ShortenPathParameter(string[] allParameter, int arrayNumber)
|
|
{
|
|
//Den ersten Parameter (= Dateipfad) ausfiltern
|
|
int arrayLenght = allParameter.Length - 1;
|
|
if (arrayLenght > arrayNumber) arrayLenght = arrayNumber;
|
|
string[] parameter = new string[arrayLenght];
|
|
for (int i = 0; i < arrayLenght; i++)
|
|
{
|
|
parameter[i] = allParameter[i + 1];
|
|
}
|
|
|
|
return parameter;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Returns the lenght of an Array
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public int ArrayLenght()
|
|
{
|
|
return ReadTransferParameter().Length;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Check whether a arrayfield is empty
|
|
/// </summary>
|
|
/// <param name="transferParameter">Array you want to evaluate</param>
|
|
/// <param name="maxArrayLenght">Maximum array count</param>
|
|
/// <returns></returns>
|
|
public bool ParametersAreEmpty(string[] transferParameter, int maxArrayLenght)
|
|
{
|
|
Logfile log = new Logfile(FileName);
|
|
log.Info("Check whether transfer parameters are valid");
|
|
bool empty = false;
|
|
if (transferParameter.Length < maxArrayLenght) return empty = true;
|
|
|
|
for (int i = 0; i < maxArrayLenght; i++)
|
|
{
|
|
if (transferParameter[i] == "") empty = true;
|
|
}
|
|
if (empty)
|
|
{
|
|
log.Warn("Transfer parameter is empty");
|
|
}
|
|
else
|
|
{
|
|
log.Info("Transfer parameter has a value");
|
|
}
|
|
return empty;
|
|
}
|
|
}
|
|
}
|