Add File_Mover()
This commit is contained in:
Binary file not shown.
@@ -57,7 +57,7 @@
|
||||
"RelativeDocumentMoniker": "Testrong.User.Program\\UserProgram.cs",
|
||||
"ToolTip": "D:\\WORK\\ManLin\\Verify\\UserProgram_time\\Testrong.User.Program\\UserProgram.cs",
|
||||
"RelativeToolTip": "Testrong.User.Program\\UserProgram.cs",
|
||||
"ViewState": "AgIAAH8KAAAAAAAAAAAowK4KAAA3AAAAAAAAAA==",
|
||||
"ViewState": "AgIAAN4JAAAAAAAAAAAowBEKAABZAAAAAAAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2024-06-18T12:27:43.78Z",
|
||||
"EditorCaption": ""
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
"RelativeDocumentMoniker": "Testrong.User.Program\\UserProgram.cs",
|
||||
"ToolTip": "D:\\WORK\\ManLin\\Verify\\UserProgram_time\\Testrong.User.Program\\UserProgram.cs",
|
||||
"RelativeToolTip": "Testrong.User.Program\\UserProgram.cs",
|
||||
"ViewState": "AgIAABYMAAAAAAAAAAAAwCcMAAAeAAAAAAAAAA==",
|
||||
"ViewState": "AgIAALsEAAAAAAAAAAAQwNAEAAA6AAAAAAAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2024-06-18T12:27:43.78Z",
|
||||
"EditorCaption": ""
|
||||
|
||||
@@ -482,20 +482,20 @@ namespace Testrong.User.Program
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
/* ----------Metadata_handler-------------
|
||||
* StreamWriter swdata: File Handler, Should be Initialized ahead,
|
||||
* int SlotNum: Current Slot Number,
|
||||
* List<int> slotList: Slot List,
|
||||
* string arm_dna: DNA Data from Zynq,
|
||||
* IFlowRunnerContext context: info from ATE Software,
|
||||
* bool init_Flag: choose from Header to Body| True=Header/False=Body,
|
||||
* string Type:[OPTIONAL] Only need if init_Flag==False, Channel Type, Possible Value="PMU","DPS", "NULL"(Default),
|
||||
* int Channel:[OPTIONAL] Only need if init_Flag==False, Channel Number, Default = -1,
|
||||
* string Mode:[OPTIONAL] Only need if init_Flag==False, Test Mode, Possible Value="FVMV","FVMI","FIMV","FIMI","FZMV"(PMU Only), "NULL"(Default),
|
||||
* string Rload:[OPTIONAL] Only need if init_Flag==False,Resistance Load, Default = "NaN",
|
||||
* string Range:[OPTIONAL] Only need if init_Flag==False,Range, Possible Value="5uA", "20uA", "200uA", "2mA", "60mA", "1A"(DPS Only), Default = "N/A",
|
||||
* string filepath:[OPTIONAL] Only need if init_Flag==False, CSV File Path, Default = "N/A",
|
||||
* string filetime:[OPTIONAL] Only need if init_Flag==False, CSV File Creation Time, Default = "N/A"
|
||||
* string Type:[OPTIONAL] Only need if init_Flag == False, Channel Type, Possible Value="PMU","DPS", "NULL"(Default),
|
||||
* int Channel:[OPTIONAL] Only need if init_Flag == False, Channel Number, Default = -1,
|
||||
* string Mode:[OPTIONAL] Only need if init_Flag == False, Test Mode, Possible Value="FVMV","FVMI","FIMV","FIMI","FZMV"(PMU Only), "NULL"(Default),
|
||||
* string Rload:[OPTIONAL] Only need if init_Flag == False,Resistance Load, Default = "NaN",
|
||||
* string Range:[OPTIONAL] Only need if init_Flag == False,Range, Possible Value="5uA", "20uA", "200uA", "2mA", "60mA", "1A"(DPS Only), Default = "N/A",
|
||||
* string filepath:[OPTIONAL] Only need if init_Flag == False, CSV File Path, Default = "N/A",
|
||||
* string filetime:[OPTIONAL] Only need if init_Flag == False, CSV File Creation Time, Default = "N/A"
|
||||
*/
|
||||
public void Metadata_handler(StreamWriter swdata, int SlotNum, List<int> slotList, string arm_dna, IFlowRunnerContext context, bool init_Flag, string Type = "NULL", int Channel = -1, string Mode = "NULL", string Rload = "NaN", string Range = "N/A", string filepath = "N/A", string filetime = "N/A")
|
||||
{
|
||||
@@ -584,6 +584,76 @@ namespace Testrong.User.Program
|
||||
}
|
||||
}
|
||||
|
||||
/* ----------File_Mover-------------
|
||||
* int SlotNum: Current Slot Number,
|
||||
* List<int> slotList: Slot List,
|
||||
* string pathFlag: Path Selector, Possible Value="Freq","CAL_Single"(No Pre/Post),"CAL_Normal",
|
||||
* bool isPreCheck:[OPTIONAL] Only need if pathFlag =="CAL_Normal",PreCheck Flag, Default = false
|
||||
*/
|
||||
public void File_Mover(int SlotNum, List<int> slotList, string pathFlag, bool isPreCheck = false)
|
||||
{
|
||||
string DateCode = DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss");
|
||||
|
||||
string WritePath;
|
||||
string BakPath;
|
||||
string HistoryPath;
|
||||
|
||||
switch (pathFlag)
|
||||
{
|
||||
case "Freq":
|
||||
WritePath = EXT_CAL_FREQ_PATH;
|
||||
HistoryPath = EXT_CAL_FREQ_HISTORY_PATH;
|
||||
BakPath = "C:\\ProgramData\\Testrong\\ATE_Tester";
|
||||
break;
|
||||
default:
|
||||
WritePath = EXT_CAL_PATH;
|
||||
HistoryPath = EXT_CAL_HISTORY_PATH;
|
||||
BakPath = EXT_CAL_MV_PATH;
|
||||
break;
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
if (SlotNum == slotList[0])
|
||||
{
|
||||
|
||||
if (pathFlag == "CAL_Normal")
|
||||
{
|
||||
if (isPreCheck == true)
|
||||
{
|
||||
EmptyDir(CAL_COMPFILE_PATH);
|
||||
ClearPrePostFile(CAL_PRECHECK_PATH);
|
||||
ClearPrePostFile(CAL_POSTCHECK_PATH);
|
||||
}
|
||||
else if (isPreCheck == false)
|
||||
{
|
||||
Thread.Sleep(1);
|
||||
}
|
||||
}
|
||||
|
||||
if (Directory.Exists(BakPath))
|
||||
{
|
||||
if (!Directory.Exists(HistoryPath))
|
||||
{
|
||||
Directory.CreateDirectory(HistoryPath);
|
||||
}
|
||||
Directory.Move(BakPath, HistoryPath + DateCode);
|
||||
}
|
||||
if (Directory.Exists(WritePath))
|
||||
{
|
||||
Directory.Move(WritePath, BakPath);
|
||||
}
|
||||
Directory.CreateDirectory(WritePath);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
LogRawText(ex.StackTrace);
|
||||
throw ex;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
private int GetPMUTempSensorIndex(int channel)
|
||||
{
|
||||
if ((channel >= 65 && channel <= 80) || (channel >= 97 && channel <= 112) || (channel >= 193 && channel <= 208) || (channel >= 241 && channel <= 256))
|
||||
@@ -1026,26 +1096,7 @@ namespace Testrong.User.Program
|
||||
}
|
||||
|
||||
//creat dir
|
||||
try
|
||||
{
|
||||
if (SlotNum == slotList[0])
|
||||
{
|
||||
if (Directory.Exists(EXT_CAL_FREQ_PATH))
|
||||
{
|
||||
if (!Directory.Exists(EXT_CAL_FREQ_HISTORY_PATH))
|
||||
{
|
||||
Directory.CreateDirectory(EXT_CAL_FREQ_HISTORY_PATH);
|
||||
}
|
||||
Directory.Move(EXT_CAL_FREQ_PATH, EXT_CAL_FREQ_HISTORY_PATH + DateCode);
|
||||
}
|
||||
Directory.CreateDirectory(EXT_CAL_FREQ_PATH);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
LogRawText(ex.StackTrace);
|
||||
throw ex;
|
||||
}
|
||||
File_Mover(SlotNum:SlotNum,slotList:slotList,pathFlag:"Freq");
|
||||
|
||||
StreamWriter swResult;
|
||||
if (SlotNum == slotList[0])
|
||||
@@ -1277,31 +1328,10 @@ namespace Testrong.User.Program
|
||||
string arm_dna = BitConverter.ToUInt64(armDnaRaw, 0).ToString();
|
||||
int SlotNum = context.Communicator.SlotNo;
|
||||
double[,] ExtBoard_Res = ReadRext(EXT_CAL_INIT_PATH + "ExtBoardRes.csv");
|
||||
try
|
||||
{
|
||||
string DateCode = DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss");
|
||||
if (SlotNum == slotList[0])
|
||||
{
|
||||
if (Directory.Exists(EXT_CAL_MV_PATH))
|
||||
{
|
||||
if (!Directory.Exists(EXT_CAL_HISTORY_PATH))
|
||||
{
|
||||
Directory.CreateDirectory(EXT_CAL_HISTORY_PATH);
|
||||
}
|
||||
Directory.Move(EXT_CAL_MV_PATH, EXT_CAL_HISTORY_PATH + DateCode);
|
||||
}
|
||||
if (Directory.Exists(EXT_CAL_PATH))
|
||||
{
|
||||
Directory.Move(EXT_CAL_PATH, EXT_CAL_MV_PATH);
|
||||
}
|
||||
Directory.CreateDirectory(EXT_CAL_PATH);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
LogRawText(ex.StackTrace);
|
||||
throw ex;
|
||||
}
|
||||
|
||||
//Folder Related
|
||||
File_Mover(SlotNum:SlotNum,slotList:slotList,pathFlag:"CAL_Single");
|
||||
|
||||
//-----Start Slot Number-----
|
||||
StreamWriter swdata;
|
||||
swdata = new StreamWriter(METADATA_PATH, true, Encoding.UTF8)
|
||||
@@ -1551,31 +1581,7 @@ namespace Testrong.User.Program
|
||||
double[,] ExtBoard_Res = ReadRext(EXT_CAL_INIT_PATH + "ExtBoardRes.csv");
|
||||
|
||||
//-----Move File To History-----
|
||||
try
|
||||
{
|
||||
string DateCode = DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss");
|
||||
if (SlotNum == slotList[0])
|
||||
{
|
||||
if (Directory.Exists(EXT_CAL_MV_PATH))
|
||||
{
|
||||
if (!Directory.Exists(EXT_CAL_HISTORY_PATH))
|
||||
{
|
||||
Directory.CreateDirectory(EXT_CAL_HISTORY_PATH);
|
||||
}
|
||||
Directory.Move(EXT_CAL_MV_PATH, EXT_CAL_HISTORY_PATH + DateCode);
|
||||
}
|
||||
if (Directory.Exists(EXT_CAL_PATH))
|
||||
{
|
||||
Directory.Move(EXT_CAL_PATH, EXT_CAL_MV_PATH);
|
||||
}
|
||||
Directory.CreateDirectory(EXT_CAL_PATH);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
LogRawText(ex.StackTrace);
|
||||
throw ex;
|
||||
}
|
||||
File_Mover(SlotNum:SlotNum,slotList:slotList,pathFlag:"CAL_Single");
|
||||
//-----Start Slot Number-----
|
||||
StreamWriter swdata;
|
||||
swdata = new StreamWriter(METADATA_PATH, true, Encoding.UTF8)
|
||||
@@ -1730,6 +1736,8 @@ namespace Testrong.User.Program
|
||||
singlefile.Close();
|
||||
}
|
||||
Pmur.Close();
|
||||
|
||||
#region Thread Lock
|
||||
if (SlotNum < slotList[slotList.Count - 1])
|
||||
{
|
||||
StreamWriter swSignal = new StreamWriter(EXT_CAL_PATH + SlotNum + ".flag"); //Create file flagging end of current thread
|
||||
@@ -1737,7 +1745,7 @@ namespace Testrong.User.Program
|
||||
swSignal.Flush();
|
||||
swSignal.Close();
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
void ExternalCalibrationReset(IFlowRunnerContext context)
|
||||
{
|
||||
@@ -1908,6 +1916,7 @@ namespace Testrong.User.Program
|
||||
}
|
||||
void ExternalCalibrationCollect(IFlowRunnerContext context, TestVersion testVersion, bool isFirstTest, bool isPreCheck)
|
||||
{
|
||||
#region Read JSON
|
||||
bool isDefault = Readjson(CONFIG_JSON_PATH).Default;
|
||||
List<int> Range_pmu_fvmv = Readjson(CONFIG_JSON_PATH).PMU_FVMV;
|
||||
List<int> Range_pmu_fvmi = Readjson(CONFIG_JSON_PATH).PMU_FVMI;
|
||||
@@ -1948,7 +1957,9 @@ namespace Testrong.User.Program
|
||||
Dictionary<string, TestParaSet> testParaSet_dps_fvmv = new Dictionary<string, TestParaSet>();
|
||||
Dictionary<string, TestParaSet> testParaSet_dps_fvmi = new Dictionary<string, TestParaSet>();
|
||||
Dictionary<string, TestParaSet> testParaSet_dps_fimv = new Dictionary<string, TestParaSet>();
|
||||
//配置延时,采样次数,采样间隔
|
||||
#endregion
|
||||
|
||||
#region 配置延时,采样次数,采样间隔
|
||||
switch (testVersion)
|
||||
{
|
||||
case TestVersion.Board_1K_FT:
|
||||
@@ -2004,6 +2015,9 @@ namespace Testrong.User.Program
|
||||
testParaSet_pmu_fvmv = avgDelays_fvmv_pmu;
|
||||
testParaSet_pmu_fzmv = avgDelays_fzmv_pmu;
|
||||
testParaSet_dps_fvmv = avgDelays_fvmv_dps;
|
||||
#endregion
|
||||
|
||||
#region Do Configuration
|
||||
//-----get all connect slot number-----
|
||||
var slotInfos = context.FlowCatalog.GetAll<SlotInfo>();
|
||||
List<int> slotList = new List<int>();
|
||||
@@ -2029,6 +2043,7 @@ namespace Testrong.User.Program
|
||||
armDnaRaw = armDnaRaw.Reverse().ToArray();
|
||||
string arm_dna = BitConverter.ToUInt64(armDnaRaw, 0).ToString();
|
||||
int SlotNum = context.Communicator.SlotNo;
|
||||
#endregion
|
||||
//-----Select PreTest or ReTest-----
|
||||
#region 选择第一次测试还是复测
|
||||
if (isFirstTest == true)
|
||||
@@ -2136,42 +2151,10 @@ namespace Testrong.User.Program
|
||||
Dictionary<string, string> RlDpsFi = ReadRload(EXT_CAL_INIT_PATH + "res.csv")[3];
|
||||
double[,] ExtBoard_Res = ReadRext(EXT_CAL_INIT_PATH + "ExtBoardRes.csv");
|
||||
|
||||
#region File/Folder Prepartion
|
||||
//-----Move File To History-----
|
||||
try
|
||||
{
|
||||
string DateCode = DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss");
|
||||
if (SlotNum == slotList[0])
|
||||
{
|
||||
if (isPreCheck == true)
|
||||
{
|
||||
EmptyDir(CAL_COMPFILE_PATH);
|
||||
ClearPrePostFile(CAL_PRECHECK_PATH);
|
||||
ClearPrePostFile(CAL_POSTCHECK_PATH);
|
||||
}
|
||||
else if (isPreCheck == false)
|
||||
{
|
||||
Thread.Sleep(1);
|
||||
}
|
||||
if (Directory.Exists(EXT_CAL_MV_PATH))
|
||||
{
|
||||
if (!Directory.Exists(EXT_CAL_HISTORY_PATH))
|
||||
{
|
||||
Directory.CreateDirectory(EXT_CAL_HISTORY_PATH);
|
||||
}
|
||||
Directory.Move(EXT_CAL_MV_PATH, EXT_CAL_HISTORY_PATH + DateCode);
|
||||
}
|
||||
if (Directory.Exists(EXT_CAL_PATH))
|
||||
{
|
||||
Directory.Move(EXT_CAL_PATH, EXT_CAL_MV_PATH);
|
||||
}
|
||||
Directory.CreateDirectory(EXT_CAL_PATH);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
LogRawText(ex.StackTrace);
|
||||
throw ex;
|
||||
}
|
||||
File_Mover(SlotNum: SlotNum, slotList: slotList, pathFlag: "CAL_Normal",isPreCheck:isPreCheck);
|
||||
|
||||
//-----Start Slot Number-----
|
||||
// Write MetaData.csv Header
|
||||
StreamWriter swdata;
|
||||
@@ -2188,6 +2171,10 @@ namespace Testrong.User.Program
|
||||
context: context,
|
||||
init_Flag: true
|
||||
);
|
||||
|
||||
#endregion
|
||||
|
||||
#region Data Collection
|
||||
//-----Start Data Collection-----
|
||||
dmm.Init(ksightConnStr);
|
||||
List<TestInfoSet> Info = slotTestInfo[SlotNum];
|
||||
@@ -2327,12 +2314,15 @@ namespace Testrong.User.Program
|
||||
string[] PmuPinName_FV = new string[1];
|
||||
string[] PmuPinName_FZFV = new string[2];
|
||||
|
||||
|
||||
#region Do Force/Measure/DMM
|
||||
for (int loopk = 0; loopk < ListChannels.Count/*ListChannels.Count*/; loopk++)//-----Loop Channel-----
|
||||
{
|
||||
//Note: Must put them here as Dictionary `Add` do reference NOT clone
|
||||
double[] AteMeasure = new double[SampliCount];
|
||||
double[] ForceValue = new double[SampliCount];
|
||||
double[] TempValue = new double[SampliCount];
|
||||
|
||||
for (int loopk = 0; loopk < ListChannels.Count/*ListChannels.Count*/; loopk++)//-----Loop Channel-----
|
||||
{
|
||||
if (Type == "PMU")
|
||||
{
|
||||
int ch = ListChannels[loopk];
|
||||
@@ -2721,12 +2711,15 @@ namespace Testrong.User.Program
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//Read Back Value From DMM
|
||||
int DataCount = testCh.Count * SampliCount;
|
||||
double[] dmmRead = dmm.MultiRead(DataCount);
|
||||
dmm.ClearReadingMemory();
|
||||
DmmMeasureDir = ReadBackDmm(dmmRead, testCh);
|
||||
#endregion
|
||||
|
||||
#region WriteToFile
|
||||
//Write Data to File
|
||||
if (Type == "PMU")
|
||||
{
|
||||
@@ -2769,7 +2762,7 @@ namespace Testrong.User.Program
|
||||
);
|
||||
}
|
||||
}
|
||||
else
|
||||
else if(Type == "DPS")
|
||||
{
|
||||
for (int writeNum = 0; writeNum < testCh.Count; writeNum++)
|
||||
{
|
||||
@@ -2813,9 +2806,12 @@ namespace Testrong.User.Program
|
||||
);
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
}
|
||||
#region Thread Lock
|
||||
if (SlotNum < slotList[slotList.Count - 1])
|
||||
{
|
||||
StreamWriter swSignal = new StreamWriter(EXT_CAL_PATH + SlotNum + ".flag"); //Create file flagging end of current thread
|
||||
@@ -2823,9 +2819,12 @@ namespace Testrong.User.Program
|
||||
swSignal.Flush();
|
||||
swSignal.Close();
|
||||
}
|
||||
#endregion
|
||||
|
||||
dmm.ResetInstrument();
|
||||
swdata.Flush();
|
||||
swdata.Close();
|
||||
|
||||
}
|
||||
|
||||
void ExternalCalibrationWriteCalFiles(IFlowRunnerContext context)
|
||||
@@ -2910,31 +2909,10 @@ namespace Testrong.User.Program
|
||||
string arm_dna = BitConverter.ToUInt64(armDnaRaw, 0).ToString();
|
||||
int SlotNum = context.Communicator.SlotNo;
|
||||
double[,] ExtBoard_Res = ReadRext(EXT_CAL_INIT_PATH + "ExtBoardRes.csv");
|
||||
try
|
||||
{
|
||||
string DateCode = DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss");
|
||||
if (SlotNum == slotList[0])
|
||||
{
|
||||
if (Directory.Exists(EXT_CAL_MV_PATH))
|
||||
{
|
||||
if (!Directory.Exists(EXT_CAL_HISTORY_PATH))
|
||||
{
|
||||
Directory.CreateDirectory(EXT_CAL_HISTORY_PATH);
|
||||
}
|
||||
Directory.Move(EXT_CAL_MV_PATH, EXT_CAL_HISTORY_PATH + DateCode);
|
||||
}
|
||||
if (Directory.Exists(EXT_CAL_PATH))
|
||||
{
|
||||
Directory.Move(EXT_CAL_PATH, EXT_CAL_MV_PATH);
|
||||
}
|
||||
Directory.CreateDirectory(EXT_CAL_PATH);
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
LogRawText(ex.StackTrace);
|
||||
throw ex;
|
||||
}
|
||||
|
||||
//Folder Related
|
||||
File_Mover(SlotNum: SlotNum, slotList: slotList, pathFlag: "CAL_Single");
|
||||
|
||||
//-----Start Slot Number-----
|
||||
StreamWriter swdata;
|
||||
swdata = new StreamWriter(METADATA_PATH, true, Encoding.UTF8)
|
||||
|
||||
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@@ -1,646 +0,0 @@
|
||||
<?xml version="1.0"?>
|
||||
<doc>
|
||||
<assembly>
|
||||
<name>DotNetty.Codecs</name>
|
||||
</assembly>
|
||||
<members>
|
||||
<member name="F:DotNetty.Codecs.Base64.Base64Dialect.STANDARD">
|
||||
<summary>
|
||||
http://www.faqs.org/rfcs/rfc3548.html
|
||||
Table 1: The Base 64 Alphabet
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:DotNetty.Codecs.Base64.Base64Dialect.URL_SAFE">
|
||||
<summary>
|
||||
http://www.faqs.org/rfcs/rfc3548.html
|
||||
Table 2: The "URL and Filename safe" Base 64 Alphabet
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:DotNetty.Codecs.ByteToMessageDecoder.MergeCumulator">
|
||||
<summary>
|
||||
Cumulates instances of <see cref="T:DotNetty.Buffers.IByteBuffer" /> by merging them into one <see cref="T:DotNetty.Buffers.IByteBuffer" />, using memory
|
||||
copies.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:DotNetty.Codecs.ByteToMessageDecoder.CompositionCumulation">
|
||||
<summary>
|
||||
Cumulate instances of <see cref="T:DotNetty.Buffers.IByteBuffer" /> by add them to a <see cref="T:DotNetty.Buffers.CompositeByteBuffer" /> and therefore
|
||||
avoiding memory copy when possible.
|
||||
</summary>
|
||||
<remarks>
|
||||
Be aware that <see cref="T:DotNetty.Buffers.CompositeByteBuffer" /> use a more complex indexing implementation so depending on your
|
||||
use-case
|
||||
and the decoder implementation this may be slower then just use the <see cref="F:DotNetty.Codecs.ByteToMessageDecoder.MergeCumulator" />.
|
||||
</remarks>
|
||||
</member>
|
||||
<member name="P:DotNetty.Codecs.ByteToMessageDecoder.SingleDecode">
|
||||
<summary>
|
||||
Determines whether only one message should be decoded per <see cref="M:DotNetty.Codecs.ByteToMessageDecoder.ChannelRead(DotNetty.Transport.Channels.IChannelHandlerContext,System.Object)" /> call.
|
||||
Default is <code>false</code> as this has performance impacts.
|
||||
</summary>
|
||||
<remarks>Is particularly useful in support of protocol upgrade scenarios.</remarks>
|
||||
</member>
|
||||
<member name="P:DotNetty.Codecs.ByteToMessageDecoder.ActualReadableBytes">
|
||||
<summary>
|
||||
Returns the actual number of readable bytes in the internal cumulative
|
||||
buffer of this decoder. You usually do not need to rely on this value
|
||||
to write a decoder. Use it only when you must use it at your own risk.
|
||||
This method is a shortcut to <see cref="P:DotNetty.Buffers.IByteBuffer.ReadableBytes" /> of <see cref="P:DotNetty.Codecs.ByteToMessageDecoder.InternalBuffer" />.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.CodecException">
|
||||
<summary>
|
||||
An <see cref="T:System.Exception" /> which is thrown by a codec.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Compression.Adler32">
|
||||
<summary>
|
||||
https://github.com/ymnk/jzlib/blob/master/src/main/java/com/jcraft/jzlib/Adler32.java
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Compression.CRC32">
|
||||
<summary>
|
||||
https://github.com/ymnk/jzlib/blob/master/src/main/java/com/jcraft/jzlib/CRC32.java
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Compression.Deflate">
|
||||
<summary>
|
||||
https://github.com/ymnk/jzlib/blob/master/src/main/java/com/jcraft/jzlib/Deflate.java
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Compression.Deflater">
|
||||
<summary>
|
||||
https://github.com/ymnk/jzlib/blob/master/src/main/java/com/jcraft/jzlib/Deflater.java
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Compression.GZIPException">
|
||||
<summary>
|
||||
https://github.com/ymnk/jzlib/blob/master/src/main/java/com/jcraft/jzlib/GZIPException.java
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Compression.GZIPHeader">
|
||||
<summary>
|
||||
https://github.com/ymnk/jzlib/blob/master/src/main/java/com/jcraft/jzlib/GZIPHeader.java
|
||||
|
||||
http://www.ietf.org/rfc/rfc1952.txt
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Compression.InfBlocks">
|
||||
<summary>
|
||||
https://github.com/ymnk/jzlib/blob/master/src/main/java/com/jcraft/jzlib/InfBlocks.java
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Compression.InfCodes">
|
||||
<summary>
|
||||
https://github.com/ymnk/jzlib/blob/master/src/main/java/com/jcraft/jzlib/InfCodes.java
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Compression.Inflate">
|
||||
<summary>
|
||||
https://github.com/ymnk/jzlib/blob/master/src/main/java/com/jcraft/jzlib/Inflate.java
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Compression.Inflater">
|
||||
<summary>
|
||||
https://github.com/ymnk/jzlib/blob/master/src/main/java/com/jcraft/jzlib/Inflater.java
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Compression.InfTree">
|
||||
<summary>
|
||||
https://github.com/ymnk/jzlib/blob/master/src/main/java/com/jcraft/jzlib/InfTree.java
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Compression.JZlib">
|
||||
<summary>
|
||||
https://github.com/ymnk/jzlib/blob/master/src/main/java/com/jcraft/jzlib/JZlib.java
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.Compression.JZlibEncoder.#ctor(DotNetty.Codecs.Compression.ZlibWrapper,System.Int32,System.Int32,System.Int32)">
|
||||
Creates a new zlib encoder with the specified {@code compressionLevel},
|
||||
the specified {@code windowBits}, the specified {@code memLevel}, and
|
||||
the specified wrapper.
|
||||
|
||||
@param compressionLevel
|
||||
{@code 1} yields the fastest compression and {@code 9} yields the
|
||||
best compression. {@code 0} means no compression. The default
|
||||
compression level is {@code 6}.
|
||||
@param windowBits
|
||||
The base two logarithm of the size of the history buffer. The
|
||||
value should be in the range {@code 9} to {@code 15} inclusive.
|
||||
Larger values result in better compression at the expense of
|
||||
memory usage. The default value is {@code 15}.
|
||||
@param memLevel
|
||||
How much memory should be allocated for the internal compression
|
||||
state. {@code 1} uses minimum memory and {@code 9} uses maximum
|
||||
memory. Larger values result in better and faster compression
|
||||
at the expense of memory usage. The default value is {@code 8}
|
||||
|
||||
@throws CompressionException if failed to initialize zlib
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Compression.StaticTree">
|
||||
<summary>
|
||||
https://github.com/ymnk/jzlib/blob/master/src/main/java/com/jcraft/jzlib/StaticTree.java
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Compression.Tree">
|
||||
<summary>
|
||||
https://github.com/ymnk/jzlib/blob/master/src/main/java/com/jcraft/jzlib/Tree.java
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.Compression.ZlibEncoder.CloseAsync">
|
||||
Close this {@link ZlibEncoder} and so finish the encoding.
|
||||
|
||||
The returned {@link ChannelFuture} will be notified once the
|
||||
operation completes.
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Compression.ZlibWrapper">
|
||||
The container file formats that wrap the stream compressed by the DEFLATE
|
||||
algorithm.
|
||||
</member>
|
||||
<member name="F:DotNetty.Codecs.Compression.ZlibWrapper.Zlib">
|
||||
The ZLIB wrapper as specified in <a href="http://tools.ietf.org/html/rfc1950">RFC 1950</a>.
|
||||
</member>
|
||||
<member name="F:DotNetty.Codecs.Compression.ZlibWrapper.Gzip">
|
||||
The GZIP wrapper as specified in <a href="http://tools.ietf.org/html/rfc1952">RFC 1952</a>.
|
||||
</member>
|
||||
<member name="F:DotNetty.Codecs.Compression.ZlibWrapper.None">
|
||||
Raw DEFLATE stream only (no header and no footer).
|
||||
</member>
|
||||
<member name="F:DotNetty.Codecs.Compression.ZlibWrapper.ZlibOrNone">
|
||||
Try {@link #ZLIB} first and then {@link #NONE} if the first attempt fails.
|
||||
Please note that you can specify this wrapper type only when decompressing.
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Compression.ZStream">
|
||||
<summary>
|
||||
https://github.com/ymnk/jzlib/blob/master/src/main/java/com/jcraft/jzlib/ZStream.java
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.Compression.ZStream.End">
|
||||
Those methods are expected to be override by Inflater and Deflater.
|
||||
In the future, they will become abstract methods.
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.CorruptedFrameException">
|
||||
<summary>
|
||||
A <see cref="T:DotNetty.Codecs.DecoderException" /> which is thrown when the received frame data could not
|
||||
be decoded by an inbound handler.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.DelimiterBasedFrameDecoder">
|
||||
<summary>
|
||||
A decoder that splits the received <see cref="T:DotNetty.Buffers.IByteBuffer" /> by one or more
|
||||
delimiters.It is particularly useful for decoding the frames which ends
|
||||
with a delimiter such as <see cref="M:DotNetty.Codecs.Delimiters.NullDelimiter" /> or
|
||||
<see cref="M:DotNetty.Codecs.Delimiters.LineDelimiter" />
|
||||
<h3>Specifying more than one delimiter </h3>
|
||||
<see cref="M:DotNetty.Codecs.Delimiters.NullDelimiter" /> allows you to specify more than one
|
||||
delimiter. If more than one delimiter is found in the buffer, it chooses
|
||||
the delimiter which produces the shortest frame. For example, if you have
|
||||
the following data in the buffer:
|
||||
+--------------+
|
||||
| ABC\nDEF\r\n |
|
||||
+--------------+
|
||||
a <see cref="M:DotNetty.Codecs.Delimiters.LineDelimiter" /> will choose '\n' as the first delimiter and produce two
|
||||
frames:
|
||||
+-----+-----+
|
||||
| ABC | DEF |
|
||||
+-----+-----+
|
||||
rather than incorrectly choosing '\r\n' as the first delimiter:
|
||||
+----------+
|
||||
| ABC\nDEF |
|
||||
+----------+
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.DelimiterBasedFrameDecoder.#ctor(System.Int32,System.Boolean,System.Boolean,DotNetty.Buffers.IByteBuffer[])">
|
||||
<summary>Common constructor</summary>
|
||||
<param name="maxFrameLength">
|
||||
The maximum length of the decoded frame
|
||||
NOTE: A see <see cref="T:DotNetty.Codecs.TooLongFrameException" /> is thrown if the length of the frame exceeds this
|
||||
value.
|
||||
</param>
|
||||
<param name="stripDelimiter">whether the decoded frame should strip out the delimiter or not</param>
|
||||
<param name="failFast">
|
||||
If true, a <see cref="T:DotNetty.Codecs.TooLongFrameException" /> is
|
||||
thrown as soon as the decoder notices the length of the
|
||||
frame will exceed<tt>maxFrameLength</tt> regardless of
|
||||
whether the entire frame has been read.
|
||||
If false, a <see cref="T:DotNetty.Codecs.TooLongFrameException" /> is
|
||||
thrown after the entire frame that exceeds maxFrameLength has been read.
|
||||
</param>
|
||||
<param name="delimiters">delimiters</param>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.DelimiterBasedFrameDecoder.IsLineBased(DotNetty.Buffers.IByteBuffer[])">
|
||||
<summary>Returns true if the delimiters are "\n" and "\r\n"</summary>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.DelimiterBasedFrameDecoder.IsSubclass">
|
||||
<summary>ReturnsReturn true if the current instance is a subclass of DelimiterBasedFrameDecoder</summary>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.DelimiterBasedFrameDecoder.Decode(DotNetty.Transport.Channels.IChannelHandlerContext,DotNetty.Buffers.IByteBuffer)">
|
||||
<summary>Create a frame out of the <see cref="T:DotNetty.Buffers.IByteBuffer" /> and return it</summary>
|
||||
<param name="ctx">
|
||||
the <see cref="T:DotNetty.Transport.Channels.IChannelHandlerContext" /> which this
|
||||
<see cref="T:DotNetty.Codecs.ByteToMessageDecoder" /> belongs to
|
||||
</param>
|
||||
<param name="buffer">the <see cref="T:DotNetty.Buffers.IByteBuffer" /> from which to read data</param>
|
||||
<returns>
|
||||
the <see cref="T:DotNetty.Buffers.IByteBuffer" /> which represent the frame or null if no frame could be
|
||||
created.
|
||||
</returns>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.DelimiterBasedFrameDecoder.IndexOf(DotNetty.Buffers.IByteBuffer,DotNetty.Buffers.IByteBuffer)">
|
||||
Returns the number of bytes between the readerIndex of the haystack and
|
||||
the first needle found in the haystack. -1 is returned if no needle is
|
||||
found in the haystack.
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.Delimiters.NullDelimiter">
|
||||
<summary>Returns a null (0x00) delimiter, which could be used for Flash XML socket or any similar protocols</summary>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.Delimiters.LineDelimiter">
|
||||
<summary>
|
||||
Returns {@code CR ('\r')} and {@code LF ('\n')} delimiters, which could
|
||||
be used for text-based line protocols.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Json.JsonObjectDecoder">
|
||||
<summary>
|
||||
Splits a byte stream of JSON objects and arrays into individual objects/arrays and passes them up the
|
||||
<see cref="T:DotNetty.Transport.Channels.IChannelPipeline" />.
|
||||
This class does not do any real parsing or validation. A sequence of bytes is considered a JSON object/array
|
||||
if it contains a matching number of opening and closing braces/brackets. It's up to a subsequent
|
||||
<see cref="T:DotNetty.Transport.Channels.IChannelHandler" />
|
||||
to parse the JSON text into a more usable form i.e.a POCO.
|
||||
</summary>
|
||||
</member>
|
||||
<!-- Badly formed XML comment ignored for member "T:DotNetty.Codecs.LengthFieldBasedFrameDecoder" -->
|
||||
<member name="M:DotNetty.Codecs.LengthFieldBasedFrameDecoder.#ctor(System.Int32,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
Create a new instance.
|
||||
</summary>
|
||||
<param name="maxFrameLength">
|
||||
The maximum length of the frame. If the length of the frame is
|
||||
greater than this value then <see cref="T:DotNetty.Codecs.TooLongFrameException" /> will be thrown.
|
||||
</param>
|
||||
<param name="lengthFieldOffset">The offset of the length field.</param>
|
||||
<param name="lengthFieldLength">The length of the length field.</param>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.LengthFieldBasedFrameDecoder.#ctor(System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
|
||||
<summary>
|
||||
Create a new instance.
|
||||
</summary>
|
||||
<param name="maxFrameLength">
|
||||
The maximum length of the frame. If the length of the frame is
|
||||
greater than this value then <see cref="T:DotNetty.Codecs.TooLongFrameException" /> will be thrown.
|
||||
</param>
|
||||
<param name="lengthFieldOffset">The offset of the length field.</param>
|
||||
<param name="lengthFieldLength">The length of the length field.</param>
|
||||
<param name="lengthAdjustment">The compensation value to add to the value of the length field.</param>
|
||||
<param name="initialBytesToStrip">the number of first bytes to strip out from the decoded frame.</param>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.LengthFieldBasedFrameDecoder.#ctor(System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.Boolean)">
|
||||
<summary>
|
||||
Create a new instance.
|
||||
</summary>
|
||||
<param name="maxFrameLength">
|
||||
The maximum length of the frame. If the length of the frame is
|
||||
greater than this value then <see cref="T:DotNetty.Codecs.TooLongFrameException" /> will be thrown.
|
||||
</param>
|
||||
<param name="lengthFieldOffset">The offset of the length field.</param>
|
||||
<param name="lengthFieldLength">The length of the length field.</param>
|
||||
<param name="lengthAdjustment">The compensation value to add to the value of the length field.</param>
|
||||
<param name="initialBytesToStrip">the number of first bytes to strip out from the decoded frame.</param>
|
||||
<param name="failFast">
|
||||
If <c>true</c>, a <see cref="T:DotNetty.Codecs.TooLongFrameException" /> is thrown as soon as the decoder notices the length
|
||||
of the frame will exceeed <see cref="F:DotNetty.Codecs.LengthFieldBasedFrameDecoder.maxFrameLength" /> regardless of whether the entire frame has been
|
||||
read. If <c>false</c>, a <see cref="T:DotNetty.Codecs.TooLongFrameException" /> is thrown after the entire frame that exceeds
|
||||
<see cref="F:DotNetty.Codecs.LengthFieldBasedFrameDecoder.maxFrameLength" /> has been read.
|
||||
Defaults to <c>true</c> in other overloads.
|
||||
</param>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.LengthFieldBasedFrameDecoder.#ctor(DotNetty.Buffers.ByteOrder,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.Boolean)">
|
||||
<summary>
|
||||
Create a new instance.
|
||||
</summary>
|
||||
<param name="byteOrder">The <see cref="T:DotNetty.Buffers.ByteOrder" /> of the lenght field.</param>
|
||||
<param name="maxFrameLength">
|
||||
The maximum length of the frame. If the length of the frame is
|
||||
greater than this value then <see cref="T:DotNetty.Codecs.TooLongFrameException" /> will be thrown.
|
||||
</param>
|
||||
<param name="lengthFieldOffset">The offset of the length field.</param>
|
||||
<param name="lengthFieldLength">The length of the length field.</param>
|
||||
<param name="lengthAdjustment">The compensation value to add to the value of the length field.</param>
|
||||
<param name="initialBytesToStrip">the number of first bytes to strip out from the decoded frame.</param>
|
||||
<param name="failFast">
|
||||
If <c>true</c>, a <see cref="T:DotNetty.Codecs.TooLongFrameException" /> is thrown as soon as the decoder notices the length
|
||||
of the frame will exceeed <see cref="F:DotNetty.Codecs.LengthFieldBasedFrameDecoder.maxFrameLength" /> regardless of whether the entire frame has been
|
||||
read. If <c>false</c>, a <see cref="T:DotNetty.Codecs.TooLongFrameException" /> is thrown after the entire frame that exceeds
|
||||
<see cref="F:DotNetty.Codecs.LengthFieldBasedFrameDecoder.maxFrameLength" /> has been read.
|
||||
Defaults to <c>true</c> in other overloads.
|
||||
</param>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.LengthFieldBasedFrameDecoder.Decode(DotNetty.Transport.Channels.IChannelHandlerContext,DotNetty.Buffers.IByteBuffer)">
|
||||
<summary>
|
||||
Create a frame out of the <see cref="T:DotNetty.Buffers.IByteBuffer" /> and return it.
|
||||
</summary>
|
||||
<param name="context">
|
||||
The <see cref="T:DotNetty.Transport.Channels.IChannelHandlerContext" /> which this <see cref="T:DotNetty.Codecs.ByteToMessageDecoder" /> belongs
|
||||
to.
|
||||
</param>
|
||||
<param name="input">The <see cref="T:DotNetty.Buffers.IByteBuffer" /> from which to read data.</param>
|
||||
<returns>The <see cref="T:DotNetty.Buffers.IByteBuffer" /> which represents the frame or <c>null</c> if no frame could be created.</returns>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.LengthFieldBasedFrameDecoder.GetUnadjustedFrameLength(DotNetty.Buffers.IByteBuffer,System.Int32,System.Int32,DotNetty.Buffers.ByteOrder)">
|
||||
<summary>
|
||||
Decodes the specified region of the buffer into an unadjusted frame length. The default implementation is
|
||||
capable of decoding the specified region into an unsigned 8/16/24/32/64 bit integer. Override this method to
|
||||
decode the length field encoded differently.
|
||||
Note that this method must not modify the state of the specified buffer (e.g.
|
||||
<see cref="P:DotNetty.Buffers.IByteBuffer.ReaderIndex" />,
|
||||
<see cref="P:DotNetty.Buffers.IByteBuffer.WriterIndex" />, and the content of the buffer.)
|
||||
</summary>
|
||||
<param name="buffer">The buffer we'll be extracting the frame length from.</param>
|
||||
<param name="offset">The offset from the absolute <see cref="P:DotNetty.Buffers.IByteBuffer.ReaderIndex" />.</param>
|
||||
<param name="length">The length of the framelenght field. Expected: 1, 2, 3, 4, or 8.</param>
|
||||
<param name="order">The preferred <see cref="T:DotNetty.Buffers.ByteOrder" /> of buffer.</param>
|
||||
<returns>A long integer that represents the unadjusted length of the next frame.</returns>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.LengthFieldPrepender">
|
||||
<summary>
|
||||
An encoder that prepends the length of the message. The length value is
|
||||
prepended as a binary form.
|
||||
<p />
|
||||
For example, <tt>{@link LengthFieldPrepender}(2)</tt> will encode the
|
||||
following 12-bytes string:
|
||||
<pre>
|
||||
+----------------+
|
||||
| "HELLO, WORLD" |
|
||||
+----------------+
|
||||
</pre>
|
||||
into the following:
|
||||
<pre>
|
||||
+--------+----------------+
|
||||
+ 0x000C | "HELLO, WORLD" |
|
||||
+--------+----------------+
|
||||
</pre>
|
||||
If you turned on the {@code lengthIncludesLengthFieldLength} flag in the
|
||||
constructor, the encoded data would look like the following
|
||||
(12 (original data) + 2 (prepended data) = 14 (0xE)):
|
||||
<pre>
|
||||
+--------+----------------+
|
||||
+ 0x000E | "HELLO, WORLD" |
|
||||
+--------+----------------+
|
||||
</pre>
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.LengthFieldPrepender.#ctor(System.Int32)">
|
||||
<summary>
|
||||
Creates a new <see cref="T:DotNetty.Codecs.LengthFieldPrepender" /> instance.
|
||||
</summary>
|
||||
<param name="lengthFieldLength">
|
||||
The length of the prepended length field.
|
||||
Only 1, 2, 3, 4, and 8 are allowed.
|
||||
</param>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.LengthFieldPrepender.#ctor(System.Int32,System.Boolean)">
|
||||
<summary>
|
||||
Creates a new <see cref="T:DotNetty.Codecs.LengthFieldPrepender" /> instance.
|
||||
</summary>
|
||||
<param name="lengthFieldLength">
|
||||
The length of the prepended length field.
|
||||
Only 1, 2, 3, 4, and 8 are allowed.
|
||||
</param>
|
||||
<param name="lengthFieldIncludesLengthFieldLength">
|
||||
If <c>true</c>, the length of the prepended length field is added
|
||||
to the value of the prepended length field.
|
||||
</param>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.LengthFieldPrepender.#ctor(System.Int32,System.Int32)">
|
||||
<summary>
|
||||
Creates a new <see cref="T:DotNetty.Codecs.LengthFieldPrepender" /> instance.
|
||||
</summary>
|
||||
<param name="lengthFieldLength">
|
||||
The length of the prepended length field.
|
||||
Only 1, 2, 3, 4, and 8 are allowed.
|
||||
</param>
|
||||
<param name="lengthAdjustment">The compensation value to add to the value of the length field.</param>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.LengthFieldPrepender.#ctor(System.Int32,System.Int32,System.Boolean)">
|
||||
<summary>
|
||||
Creates a new <see cref="T:DotNetty.Codecs.LengthFieldPrepender" /> instance.
|
||||
</summary>
|
||||
<param name="lengthFieldLength">
|
||||
The length of the prepended length field.
|
||||
Only 1, 2, 3, 4, and 8 are allowed.
|
||||
</param>
|
||||
<param name="lengthFieldIncludesLengthFieldLength">
|
||||
If <c>true</c>, the length of the prepended length field is added
|
||||
to the value of the prepended length field.
|
||||
</param>
|
||||
<param name="lengthAdjustment">The compensation value to add to the value of the length field.</param>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.LengthFieldPrepender.#ctor(DotNetty.Buffers.ByteOrder,System.Int32,System.Int32,System.Boolean)">
|
||||
<summary>
|
||||
Creates a new <see cref="T:DotNetty.Codecs.LengthFieldPrepender" /> instance.
|
||||
</summary>
|
||||
<param name="byteOrder">The <see cref="T:DotNetty.Buffers.ByteOrder" /> of the length field.</param>
|
||||
<param name="lengthFieldLength">
|
||||
The length of the prepended length field.
|
||||
Only 1, 2, 3, 4, and 8 are allowed.
|
||||
</param>
|
||||
<param name="lengthFieldIncludesLengthFieldLength">
|
||||
If <c>true</c>, the length of the prepended length field is added
|
||||
to the value of the prepended length field.
|
||||
</param>
|
||||
<param name="lengthAdjustment">The compensation value to add to the value of the length field.</param>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.LineBasedFrameDecoder">
|
||||
<summary>
|
||||
A decoder that splits the received {@link ByteBuf}s on line endings.
|
||||
Both {@code "\n"} and {@code "\r\n"} are handled.
|
||||
For a more general delimiter-based decoder, see {@link DelimiterBasedFrameDecoder}.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="F:DotNetty.Codecs.LineBasedFrameDecoder.maxLength">
|
||||
Maximum length of a frame we're willing to decode.
|
||||
</member>
|
||||
<member name="F:DotNetty.Codecs.LineBasedFrameDecoder.failFast">
|
||||
Whether or not to throw an exception as soon as we exceed maxLength.
|
||||
</member>
|
||||
<member name="F:DotNetty.Codecs.LineBasedFrameDecoder.discarding">
|
||||
True if we're discarding input because we're already over maxLength.
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.LineBasedFrameDecoder.#ctor(System.Int32)">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:DotNetty.Codecs.LineBasedFrameDecoder" /> class.
|
||||
</summary>
|
||||
<param name="maxLength">
|
||||
the maximum length of the decoded frame.
|
||||
A {@link TooLongFrameException} is thrown if
|
||||
the length of the frame exceeds this value.
|
||||
</param>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.LineBasedFrameDecoder.#ctor(System.Int32,System.Boolean,System.Boolean)">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:DotNetty.Codecs.LineBasedFrameDecoder" /> class.
|
||||
</summary>
|
||||
<param name="maxLength">
|
||||
the maximum length of the decoded frame.
|
||||
A {@link TooLongFrameException} is thrown if
|
||||
the length of the frame exceeds this value.
|
||||
</param>
|
||||
<param name="stripDelimiter">
|
||||
whether the decoded frame should strip out the
|
||||
delimiter or not
|
||||
</param>
|
||||
<param name="failFast">
|
||||
If <tt>true</tt>, a {@link TooLongFrameException} is
|
||||
thrown as soon as the decoder notices the length of the
|
||||
frame will exceed <tt>maxFrameLength</tt> regardless of
|
||||
whether the entire frame has been read.
|
||||
If <tt>false</tt>, a {@link TooLongFrameException} is
|
||||
thrown after the entire frame that exceeds
|
||||
<tt>maxFrameLength</tt> has been read.
|
||||
</param>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.LineBasedFrameDecoder.Decode(DotNetty.Transport.Channels.IChannelHandlerContext,DotNetty.Buffers.IByteBuffer)">
|
||||
<summary>
|
||||
Create a frame out of the {@link ByteBuf} and return it.
|
||||
</summary>
|
||||
<param name="ctx">the {@link ChannelHandlerContext} which this {@link ByteToMessageDecoder} belongs to</param>
|
||||
<param name="buffer">the {@link ByteBuf} from which to read data</param>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.MessageAggregator`4">
|
||||
<inheritdoc />
|
||||
<summary>
|
||||
An abstract <see cref="T:DotNetty.Transport.Channels.IChannelHandler" /> that aggregates a series of message objects
|
||||
into a single aggregated message.
|
||||
'A series of messages' is composed of the following:
|
||||
a single start message which optionally contains the first part of the content, and
|
||||
1 or more content messages. The content of the aggregated message will be the merged
|
||||
content of the start message and its following content messages. If this aggregator
|
||||
encounters a content message where { @link #isLastContentMessage(ByteBufHolder)}
|
||||
return true for, the aggregator will finish the aggregation and produce the aggregated
|
||||
message and expect another start message.
|
||||
</summary>
|
||||
<typeparam name="TMessage">The type that covers both start message and content message</typeparam>
|
||||
<typeparam name="TStart">The type of the start message</typeparam>
|
||||
<typeparam name="TContent">The type of the content message</typeparam>
|
||||
<typeparam name="TOutput">The type of the aggregated message</typeparam>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.MessageToMessageDecoder`1">
|
||||
<summary>
|
||||
Message to message decoder.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.MessageToMessageDecoder`1.Decode(DotNetty.Transport.Channels.IChannelHandlerContext,`0,System.Collections.Generic.List{System.Object})">
|
||||
<summary>
|
||||
Decode from one message to an other. This method will be called for each written message that can be handled
|
||||
by this encoder.
|
||||
</summary>
|
||||
<param name="context">the {@link ChannelHandlerContext} which this {@link MessageToMessageDecoder} belongs to</param>
|
||||
<param name="message">the message to decode to an other one</param>
|
||||
<param name="output">the {@link List} to which decoded messages should be added</param>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.MessageToMessageEncoder`1.AcceptOutboundMessage(System.Object)">
|
||||
<summary>
|
||||
Returns {@code true} if the given message should be handled. If {@code false} it will be passed to the next
|
||||
{@link ChannelHandler} in the {@link ChannelPipeline}.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.MessageToMessageEncoder`1.Encode(DotNetty.Transport.Channels.IChannelHandlerContext,`0,System.Collections.Generic.List{System.Object})">
|
||||
<summary>
|
||||
Encode from one message to an other. This method will be called for each written message that can be handled
|
||||
by this encoder.
|
||||
@param context the {@link ChannelHandlerContext} which this {@link MessageToMessageEncoder} belongs to
|
||||
@param message the message to encode to an other one
|
||||
@param output the {@link List} into which the encoded message should be added
|
||||
needs to do some kind of aggragation
|
||||
@throws Exception is thrown if an error accour
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Protobuf.ProtobufVarint32FrameDecoder">
|
||||
|
||||
A decoder that splits the received {@link ByteBuf}s dynamically by the
|
||||
value of the Google Protocol Buffers
|
||||
http://code.google.com/apis/protocolbuffers/docs/encoding.html#varints
|
||||
Base 128 Varints integer length field in the message.
|
||||
For example:
|
||||
|
||||
BEFORE DECODE (302 bytes) AFTER DECODE (300 bytes)
|
||||
+--------+---------------+ +---------------+
|
||||
| Length | Protobuf Data |----->| Protobuf Data |
|
||||
| 0xAC02 | (300 bytes) | | (300 bytes) |
|
||||
+--------+---------------+ +---------------+
|
||||
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.Protobuf.ProtobufVarint32LengthFieldPrepender">
|
||||
|
||||
An encoder that prepends the the Google Protocol Buffers
|
||||
http://code.google.com/apis/protocolbuffers/docs/encoding.html#varints
|
||||
Base 128 Varints integer length field.
|
||||
For example:
|
||||
|
||||
BEFORE ENCODE (300 bytes) AFTER ENCODE (302 bytes)
|
||||
+---------------+ +--------+---------------+
|
||||
| Protobuf Data |-------------->| Length | Protobuf Data |
|
||||
| (300 bytes) | | 0xAC02 | (300 bytes) |
|
||||
+---------------+ +--------+---------------+
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.StringDecoder.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:DotNetty.Codecs.StringDecoder" /> class with the current system
|
||||
character set.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.StringDecoder.#ctor(System.Text.Encoding)">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:DotNetty.Codecs.StringDecoder" /> class with the specified character
|
||||
set..
|
||||
</summary>
|
||||
<param name="encoding">Encoding.</param>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.StringEncoder">
|
||||
Encodes the requested {@link String} into a {@link ByteBuf}.
|
||||
A typical setup for a text-based line protocol in a TCP/IP socket would be:
|
||||
<pre>
|
||||
{@link ChannelPipeline} pipeline = ...;
|
||||
|
||||
// Decoders
|
||||
pipeline.addLast("frameDecoder", new {@link LineBasedFrameDecoder}(80));
|
||||
pipeline.addLast("stringDecoder", new {@link StringDecoder}(CharsetUtil.UTF_8));
|
||||
|
||||
// Encoder
|
||||
pipeline.addLast("stringEncoder", new {@link StringEncoder}(CharsetUtil.UTF_8));
|
||||
</pre>
|
||||
and then you can use a {@link String} instead of a {@link ByteBuf}
|
||||
as a message:
|
||||
<pre>
|
||||
void channelRead({@link ChannelHandlerContext} ctx, {@link String} msg) {
|
||||
ch.write("Did you say '" + msg + "'?\n");
|
||||
}
|
||||
</pre>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.StringEncoder.#ctor">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:DotNetty.Codecs.StringEncoder" /> class with the current system
|
||||
character set.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:DotNetty.Codecs.StringEncoder.#ctor(System.Text.Encoding)">
|
||||
<summary>
|
||||
Initializes a new instance of the <see cref="T:DotNetty.Codecs.StringEncoder" /> class with the specified character
|
||||
set..
|
||||
</summary>
|
||||
<param name="encoding">Encoding.</param>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.TooLongFrameException">
|
||||
<summary>
|
||||
A <see cref="T:DotNetty.Codecs.DecoderException" /> which is thrown when the length of the frame
|
||||
decoded is greater than the allowed maximum.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:DotNetty.Codecs.UnsupportedMessageTypeException">
|
||||
<summary>
|
||||
Thrown if an unsupported message is received by an codec.
|
||||
</summary>
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
||||
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
+1
-1
@@ -1 +1 @@
|
||||
8336289dafd7be8d8ceb71ec0bfb414b5e10ce0020e044e9f7d2ae18b0c1e638
|
||||
1c5e67c428e7ea9ad83db74e3225f3a6ee4bdaaf429227caea859a4df23e5fee
|
||||
|
||||
@@ -2415,42 +2415,7 @@ F:\syy\Prometheus\1KS_FT_EngineeringMachine\UserProgram_time\Testrong.User.Progr
|
||||
F:\syy\Prometheus\1KS_FT_EngineeringMachine\UserProgram_time\Testrong.User.Program\obj\x64\Debug\UserProgram.pdb
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\UserProgram.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\UserProgram.pdb
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\NLog.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\DotNetty.Transport.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\DotNetty.Buffers.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\DotNetty.Codecs.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\System.Threading.Tasks.Dataflow.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\DotNetty.Common.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\System.Buffers.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Testrong.Core.Globalization.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\AutoMapper.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Testrong.Core.Datalog.Interfaces.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Testrong.Core.Hardware.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\MxFFTCalc.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\MWArray.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\MathNet.Numerics.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Testrong.Core.Gramar.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\System.Threading.Tasks.Extensions.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\System.Runtime.CompilerServices.Unsafe.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Microsoft.Extensions.Logging.Abstractions.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Microsoft.Extensions.Logging.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\STDF.Library.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\System.ValueTuple.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Antlr4.Runtime.Standard.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Microsoft.Extensions.DependencyInjection.Abstractions.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Microsoft.Extensions.Options.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Microsoft.Extensions.DependencyInjection.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Microsoft.Extensions.Primitives.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Microsoft.Bcl.AsyncInterfaces.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Testrong.Core.Model.xml
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Testrong.Core.Primitives.xml
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\DotNetty.Transport.xml
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\DotNetty.Buffers.xml
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\DotNetty.Codecs.xml
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\System.Threading.Tasks.Dataflow.xml
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\DotNetty.Common.xml
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\AutoMapper.xml
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\STDF.Library.xml
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\obj\x64\Debug\Testrong.User.Program.csproj.AssemblyReference.cache
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\obj\x64\Debug\Testrong.User.Program.csproj.CoreCompileInputs.cache
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\obj\x64\Debug\Testrong.A8AD3C05.Up2Date
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user