Exemple #1
0
 /// <summary>
 /// Get SN tags.
 /// </summary>
 /// <param name="type"></param>
 /// <param name="list"></param>
 internal static void GetSnTags(TranslatorOutputType type, SortedList <int, string> list)
 {
     list.Add((int)Command.ReadRequest, "ReadRequest");
     list.Add((int)Command.WriteRequest, "WriteRequest");
     list.Add((int)Command.WriteResponse, "WriteResponse");
     list.Add((int)(Command.ReadRequest) << 8 | (byte)VariableAccessSpecification.VariableName, "VariableName");
     list.Add((int)(Command.ReadRequest) << 8 | (byte)VariableAccessSpecification.ParameterisedAccess, "ParameterisedAccess");
     list.Add((int)(Command.ReadRequest) << 8 | (byte)VariableAccessSpecification.BlockNumberAccess, "BlockNumberAccess");
     list.Add(
         (int)Command.WriteRequest << 8
             | (int)VariableAccessSpecification.VariableName,
             "VariableName");
     list.Add((int)Command.ReadResponse, "ReadResponse");
     list.Add((int)(Command.ReadResponse) << 8 | (byte)SingleReadResponse.DataBlockResult, "DataBlockResult");
     list.Add((int)(Command.ReadResponse) << 8 | (byte)SingleReadResponse.Data, "Data");
     GXDLMSTranslator.AddTag(list, Command.GetResponse, "GetResponse");
     list.Add((int)(Command.GetResponse) << 8 | (byte)GetCommandType.Normal, "Normal");
     list.Add((int)(Command.GetResponse) << 8 | (byte)GetCommandType.NextDataBlock, "GetResponsewithDataBlock");
     list.Add((int)(Command.GetResponse) << 8 | (byte)GetCommandType.WithList, "GetResponseWithList");
     GXDLMSTranslator.AddTag(list, Command.SetResponse, "SetResponse");
     list.Add((int)(Command.SetResponse) << 8 | (byte)SetResponseType.Normal, "SetResponseNormal");
     list.Add((int)(Command.SetResponse) << 8 | (byte)SetResponseType.DataBlock, "SetResponseDataBlock");
     list.Add((int)(Command.SetResponse) << 8 | (byte)SetResponseType.LastDataBlock, "SetResponseWithLastDataBlock");
     list.Add((int)(Command.SetResponse) << 8 | (byte)SetResponseType.WithList, "SetResponseWithList");
     list.Add((int)Command.ReadResponse << 8
              | (int)SingleReadResponse.DataAccessError,
              "DataAccessError");
 }
 /// <summary>
 /// Get general tags.
 /// </summary>
 /// <param name="type"></param>
 /// <param name="list"></param>
 internal static void GetGeneralTags(TranslatorOutputType type, SortedList<int, string> list)
 {
     GXDLMSTranslator.AddTag(list, Command.Snrm, "Snrm");
     GXDLMSTranslator.AddTag(list, Command.Ua, "Ua");
     GXDLMSTranslator.AddTag(list, Command.Aarq, "AssociationRequest");
     GXDLMSTranslator.AddTag(list, Command.Aare, "AssociationResponse");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ApplicationContextName, "ApplicationContextName");
     GXDLMSTranslator.AddTag(list, Command.InitiateResponse, "InitiateResponse");
     GXDLMSTranslator.AddTag(list, Command.InitiateRequest, "InitiateRequest");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.NegotiatedQualityOfService, "NegotiatedQualityOfService");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ProposedDlmsVersionNumber, "ProposedDlmsVersionNumber");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ProposedMaxPduSize, "ProposedMaxPduSize");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ProposedConformance, "ProposedConformance");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.VaaName, "VaaName");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.NegotiatedConformance, "NegotiatedConformance");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.NegotiatedDlmsVersionNumber, "NegotiatedDlmsVersionNumber");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.NegotiatedMaxPduSize, "NegotiatedMaxPduSize");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ConformanceBit, "ConformanceBit");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.SenderACSERequirements, "SenderACSERequirements");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ResponderACSERequirement, "ResponderACSERequirement");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.RespondingMechanismName, "MechanismName");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.CallingMechanismName, "MechanismName");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.CallingAuthentication, "CallingAuthentication");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.RespondingAuthentication, "RespondingAuthentication");
     GXDLMSTranslator.AddTag(list, Command.ReleaseRequest, "ReleaseRequest");
     GXDLMSTranslator.AddTag(list, Command.ReleaseResponse, "ReleaseResponse");
     GXDLMSTranslator.AddTag(list, Command.DisconnectRequest, "Disc");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.AssociationResult, "AssociationResult");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ResultSourceDiagnostic, "ResultSourceDiagnostic");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ACSEServiceUser, "ACSEServiceUser");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.CallingAPTitle, "CallingAPTitle");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.RespondingAPTitle, "RespondingAPTitle");
 }
Exemple #3
0
 /// <summary>
 /// Get translator tags.
 /// </summary>
 /// <param name="type"></param>
 /// <param name="list"></param>
 internal static void GetTranslatorTags(TranslatorOutputType type, SortedList <int, string> list)
 {
     GXDLMSTranslator.AddTag(list, TranslatorTags.Wrapper, "Wrapper");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Hdlc, "Hdlc");
     GXDLMSTranslator.AddTag(list, TranslatorTags.PduDlms, "Pdu");
     GXDLMSTranslator.AddTag(list, TranslatorTags.TargetAddress, "TargetAddress");
     GXDLMSTranslator.AddTag(list, TranslatorTags.SourceAddress, "SourceAddress");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ListOfVariableAccessSpecification, "ListOfVariableAccessSpecification");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ListOfData, "ListOfData");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Success, "Ok");
     GXDLMSTranslator.AddTag(list, TranslatorTags.DataAccessError, "DataAccessError");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AttributeDescriptor, "AttributeDescriptor");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ClassId, "ClassId");
     GXDLMSTranslator.AddTag(list, TranslatorTags.InstanceId, "InstanceId");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AttributeId, "AttributeId");
     GXDLMSTranslator.AddTag(list, TranslatorTags.MethodInvocationParameters, "MethodInvocationParameters");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Selector, "Selector");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Parameter, "Parameter");
     GXDLMSTranslator.AddTag(list, TranslatorTags.LastBlock, "LastBlock");
     GXDLMSTranslator.AddTag(list, TranslatorTags.BlockNumber, "BlockNumber");
     GXDLMSTranslator.AddTag(list, TranslatorTags.RawData, "RawData");
     GXDLMSTranslator.AddTag(list, TranslatorTags.MethodDescriptor, "MethodDescriptor");
     GXDLMSTranslator.AddTag(list, TranslatorTags.MethodId, "MethodId");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Result, "Result");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ReturnParameters, "ReturnParameters");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AccessSelection, "AccessSelection");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Value, "Value");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AccessSelector, "AccessSelector");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AccessParameters, "AccessParameters");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AttributeDescriptorList, "AttributeDescriptorList");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AttributeDescriptorWithSelection, "AttributeDescriptorWithSelection");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ReadDataBlockAccess, "ReadDataBlockAccess");
     GXDLMSTranslator.AddTag(list, TranslatorTags.WriteDataBlockAccess, "WriteDataBlockAccess");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Data, "Data");
     GXDLMSTranslator.AddTag(list, TranslatorTags.InvokeId, "InvokeIdAndPriority");
     GXDLMSTranslator.AddTag(list, TranslatorTags.LongInvokeId, "LongInvokeIdAndPriority");
     GXDLMSTranslator.AddTag(list, TranslatorTags.DateTime, "DateTime");
     GXDLMSTranslator.AddTag(list, TranslatorTags.CurrentTime, "CurrentTime");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Time, "DateTime");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Reason, "Reason");
     GXDLMSTranslator.AddTag(list, TranslatorTags.NotificationBody, "NotificationBody");
     GXDLMSTranslator.AddTag(list, TranslatorTags.DataValue, "DataValue");
     GXDLMSTranslator.AddTag(list, TranslatorTags.CipheredService, "CipheredService");
     GXDLMSTranslator.AddTag(list, TranslatorTags.SystemTitle, "SystemTitle");
     GXDLMSTranslator.AddTag(list, TranslatorTags.DataBlock, "DataBlock");
     GXDLMSTranslator.AddTag(list, TranslatorTags.TransactionId, "TransactionId");
     GXDLMSTranslator.AddTag(list, TranslatorTags.OriginatorSystemTitle, "OriginatorSystemTitle");
     GXDLMSTranslator.AddTag(list, TranslatorTags.RecipientSystemTitle, "RecipientSystemTitle");
     GXDLMSTranslator.AddTag(list, TranslatorTags.OtherInformation, "OtherInformation");
     GXDLMSTranslator.AddTag(list, TranslatorTags.KeyInfo, "KeyInfo");
     GXDLMSTranslator.AddTag(list, TranslatorTags.CipheredContent, "CipheredContent");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AgreedKey, "AgreedKey");
     GXDLMSTranslator.AddTag(list, TranslatorTags.KeyParameters, "KeyParameters");
     GXDLMSTranslator.AddTag(list, TranslatorTags.KeyCipheredData, "KeyCipheredData");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AttributeValue, "AttributeValue");
     GXDLMSTranslator.AddTag(list, TranslatorTags.MaxInfoRX, "MaxInfoRX");
     GXDLMSTranslator.AddTag(list, TranslatorTags.MaxInfoTX, "MaxInfoTX");
     GXDLMSTranslator.AddTag(list, TranslatorTags.WindowSizeRX, "WindowSizeRX");
     GXDLMSTranslator.AddTag(list, TranslatorTags.WindowSizeTX, "WindowSizeTX");
 }
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="list">List of tags.</param>
 public GXDLMSTranslatorStructure(TranslatorOutputType type, bool omitNameSpace, bool numericsAshex, bool hex, bool comments, SortedList <int, string> list)
 {
     OutputType        = type;
     OmitNameSpace     = omitNameSpace;
     showNumericsAsHex = numericsAshex;
     ShowStringAsHex   = hex;
     Comments          = comments;
     tags = list;
 }
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="list"></param>
 public GXDLMSXmlSettings(TranslatorOutputType type,
                          bool numericsAsHex, bool hex, SortedList<string, int> list)
 {
     OutputType = type;
     showNumericsAsHex = numericsAsHex;
     showStringAsHex = hex;
     settings.InterfaceType = InterfaceType.PDU;
     settings.Cipher = new GXCiphering(ASCIIEncoding.ASCII.GetBytes("ABCDEFGH"));
     tags = list;
 }
 /// <summary>
 /// Get ded tags.
 /// </summary>
 /// <param name="type"></param>
 /// <param name="list"></param>
 internal static void GetDedTags(TranslatorOutputType type, SortedList <int, string> list)
 {
     GXDLMSTranslator.AddTag(list, Command.DedGetRequest, "ded_GetRequest");
     GXDLMSTranslator.AddTag(list, Command.DedGetResponse, "ded_GetResponse");
     GXDLMSTranslator.AddTag(list, Command.DedSetRequest, "ded_SetRequest");
     GXDLMSTranslator.AddTag(list, Command.DedSetResponse, "ded_SetResponse");
     GXDLMSTranslator.AddTag(list, Command.DedMethodRequest, "ded_ActionRequest");
     GXDLMSTranslator.AddTag(list, Command.DedMethodResponse, "ded_ActionResponse");
     GXDLMSTranslator.AddTag(list, Command.GeneralDedCiphering, "generalDedCiphering");
 }
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="list"></param>
 public GXDLMSXmlSettings(TranslatorOutputType type,
                          bool numericsAsHex, bool hex, SortedList <string, int> list)
 {
     OutputType             = type;
     showNumericsAsHex      = type == TranslatorOutputType.SimpleXml && numericsAsHex;
     showStringAsHex        = hex;
     settings.InterfaceType = InterfaceType.PDU;
     settings.Cipher        = new GXCiphering(ASCIIEncoding.ASCII.GetBytes("ABCDEFGH"));
     tags = list;
 }
        /// <summary>
        /// Get general tags.
        /// </summary>
        /// <param name="type"></param>
        /// <param name="list"></param>
        internal static void GetGeneralTags(TranslatorOutputType type, SortedList <int, string> list)
        {
            GXDLMSTranslator.AddTag(list, Command.Snrm, "Snrm");
            GXDLMSTranslator.AddTag(list, Command.UnacceptableFrame, "UnacceptableFrame");
            GXDLMSTranslator.AddTag(list, Command.DisconnectMode, "DisconnectMode");
            GXDLMSTranslator.AddTag(list, Command.Ua, "Ua");
            GXDLMSTranslator.AddTag(list, Command.Aarq, "AssociationRequest");
            GXDLMSTranslator.AddTag(list, Command.Aare, "AssociationResponse");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ApplicationContextName, "ApplicationContextName");
            GXDLMSTranslator.AddTag(list, Command.InitiateResponse, "InitiateResponse");
            GXDLMSTranslator.AddTag(list, Command.InitiateRequest, "InitiateRequest");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.NegotiatedQualityOfService, "NegotiatedQualityOfService");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ProposedQualityOfService, "ProposedQualityOfService");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ProposedDlmsVersionNumber, "ProposedDlmsVersionNumber");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ProposedMaxPduSize, "ProposedMaxPduSize");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ProposedConformance, "ProposedConformance");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.VaaName, "VaaName");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.NegotiatedConformance, "NegotiatedConformance");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.NegotiatedDlmsVersionNumber, "NegotiatedDlmsVersionNumber");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.NegotiatedMaxPduSize, "NegotiatedMaxPduSize");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ConformanceBit, "ConformanceBit");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.SenderACSERequirements, "SenderACSERequirements");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ResponderACSERequirement, "ResponderACSERequirement");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.RespondingMechanismName, "MechanismName");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.CallingMechanismName, "MechanismName");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.CallingAuthentication, "CallingAuthentication");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.RespondingAuthentication, "RespondingAuthentication");
            GXDLMSTranslator.AddTag(list, Command.ReleaseRequest, "ReleaseRequest");
            GXDLMSTranslator.AddTag(list, Command.ReleaseResponse, "ReleaseResponse");
            GXDLMSTranslator.AddTag(list, Command.DisconnectRequest, "DisconnectRequest");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.AssociationResult, "AssociationResult");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ResultSourceDiagnostic, "ResultSourceDiagnostic");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ACSEServiceUser, "ACSEServiceUser");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ACSEServiceProvider, "ACSEServiceProvider");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.CallingAPTitle, "CallingAPTitle");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.RespondingAPTitle, "RespondingAPTitle");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.DedicatedKey, "DedicatedKey");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.UserInformation, "UserInformation");
            GXDLMSTranslator.AddTag(list, Command.ConfirmedServiceError, "ConfirmedServiceError");
            GXDLMSTranslator.AddTag(list, Command.InformationReport, "InformationReportRequest");
            GXDLMSTranslator.AddTag(list, Command.EventNotification, "EventNotificationRequest");
            GXDLMSTranslator.AddTag(list, Command.GeneralBlockTransfer, "GeneralBlockTransfer");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.CallingAeInvocationId,
                                    "CallingAEInvocationId");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.CalledAeInvocationId,
                                    "CalledAEInvocationId");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.RespondingAeInvocationId,
                                    "RespondingAeInvocationId");
            GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.CallingAeQualifier,
                                    "CallingAEQualifier");

            GXDLMSTranslator.AddTag(list, Command.ExceptionResponse, "ExceptionResponse");
            GXDLMSTranslator.AddTag(list, TranslatorTags.StateError, "StateError");
        }
Exemple #9
0
 /// <summary>
 /// Get LN tags.
 /// </summary>
 /// <param name="type"></param>
 /// <param name="list"></param>
 internal static void GetLnTags(TranslatorOutputType type, SortedList <int, string> list)
 {
     GXDLMSTranslator.AddTag(list, Command.GetRequest, "GetRequest");
     list.Add((int)(Command.GetRequest) << 8 | (byte)GetCommandType.Normal, "GetRequestNormal");
     list.Add((int)(Command.GetRequest) << 8 | (byte)GetCommandType.NextDataBlock, "GetRequestForNextDataBlock");
     list.Add((int)(Command.GetRequest) << 8 | (byte)GetCommandType.WithList, "GetRequestWithList");
     GXDLMSTranslator.AddTag(list, Command.SetRequest, "SetRequest");
     list.Add((int)(Command.SetRequest) << 8 | (byte)SetRequestType.Normal, "SetRequestNormal");
     list.Add((int)(Command.SetRequest) << 8 | (byte)SetRequestType.FirstDataBlock, "SetRequestFirstDataBlock");
     list.Add((int)(Command.SetRequest) << 8 | (byte)SetRequestType.WithDataBlock, "SetRequestWithDataBlock");
     list.Add((int)(Command.SetRequest) << 8 | (byte)SetRequestType.WithList, "SetRequestWithList");
     GXDLMSTranslator.AddTag(list, Command.MethodRequest, "ActionRequest");
     list.Add((int)(Command.MethodRequest) << 8 | (byte)ActionRequestType.Normal, "ActionRequestNormal");
     list.Add((int)(Command.MethodRequest) << 8 | (byte)ActionRequestType.NextBlock, "ActionRequestForNextDataBlock");
     list.Add((int)(Command.MethodRequest) << 8 | (byte)ActionRequestType.WithList, "ActionRequestWithList");
     GXDLMSTranslator.AddTag(list, Command.MethodResponse, "ActionResponse");
     list.Add((int)(Command.MethodResponse) << 8 | (byte)ActionRequestType.Normal, "ActionResponseNormal");
     list.Add((int)(Command.MethodResponse) << 8 | (byte)ActionRequestType.WithFirstBlock, "ActionResponseWithFirstBlock");
     list.Add((int)(Command.MethodResponse) << 8 | (byte)ActionRequestType.WithList, "ActionResponseWithList");
     list.Add((int)Command.DataNotification, "DataNotification");
     list.Add((int)Command.GetResponse, "GetResponse");
     list.Add((int)Command.GetResponse << 8 | (byte)GetCommandType.Normal, "GetResponseNormal");
     list.Add((int)Command.GetResponse << 8 | (byte)GetCommandType.NextDataBlock, "GetResponsewithDataBlock");
     list.Add((int)Command.GetResponse << 8 | (byte)GetCommandType.WithList, "GetResponseWithList");
     list.Add((int)Command.SetResponse, "SetResponse");
     list.Add((int)Command.SetResponse << 8 | (byte)SetResponseType.Normal, "SetResponseNormal");
     list.Add((int)Command.SetResponse << 8 | (byte)SetResponseType.DataBlock, "SetResponseDataBlock");
     list.Add((int)Command.SetResponse << 8 | (byte)SetResponseType.LastDataBlock, "SetResponseWithLastDataBlock");
     list.Add((int)Command.SetResponse << 8 | (byte)SetResponseType.WithList, "SetResponseWithList");
     GXDLMSTranslator.AddTag(list, Command.AccessRequest, "AccessRequest");
     list.Add((int)(Command.AccessRequest) << 8 | (byte)AccessServiceCommandType.Get, "AccessRequestGet");
     list.Add((int)(Command.AccessRequest) << 8 | (byte)AccessServiceCommandType.Set, "AccessRequestSet");
     list.Add((int)(Command.AccessRequest) << 8 | (byte)AccessServiceCommandType.Action, "AccessRequestAction");
     GXDLMSTranslator.AddTag(list, Command.AccessResponse, "AccessResponse");
     list.Add((int)(Command.AccessResponse) << 8 | (byte)AccessServiceCommandType.Get, "AccessResponseGet");
     list.Add((int)(Command.AccessResponse) << 8 | (byte)AccessServiceCommandType.Set, "AccessResponseSet");
     list.Add((int)(Command.AccessResponse) << 8 | (byte)AccessServiceCommandType.Action, "AccessResponseAction");
     list.Add((int)TranslatorTags.AccessRequestBody, "AccessRequestBody");
     list.Add((int)TranslatorTags.ListOfAccessRequestSpecification, "AccessRequestSpecification");
     list.Add((int)TranslatorTags.AccessRequestSpecification, "_AccessRequestSpecification");
     list.Add((int)TranslatorTags.AccessRequestListOfData, "AccessRequestListOfData");
     list.Add((int)TranslatorTags.AccessResponseBody, "AccessResponseBody");
     list.Add((int)TranslatorTags.ListOfAccessResponseSpecification, "AccessResponseSpecification");
     list.Add((int)TranslatorTags.AccessResponseSpecification, "_AccessResponseSpecification");
     list.Add((int)TranslatorTags.AccessResponseListOfData, "AccessResponseListOfData");
     list.Add((int)TranslatorTags.Service, "Service");
     list.Add((int)TranslatorTags.ServiceError, "ServiceError");
     GXDLMSTranslator.AddTag(list, Command.GatewayRequest, "GatewayRequest");
     GXDLMSTranslator.AddTag(list, Command.GatewayResponse, "GatewayResponse");
 }
Exemple #10
0
 /// <summary>
 /// Get glo tags.
 /// </summary>
 /// <param name="type"></param>
 /// <param name="list"></param>
 internal static void GetGloTags(TranslatorOutputType type, SortedList <int, string> list)
 {
     GXDLMSTranslator.AddTag(list, Command.GloInitiateRequest, "glo-initiate-request");
     GXDLMSTranslator.AddTag(list, Command.GloInitiateResponse, "glo-initiate-response");
     GXDLMSTranslator.AddTag(list, Command.GloGetRequest, "glo-get-request");
     GXDLMSTranslator.AddTag(list, Command.GloGetResponse, "glo-get-response");
     GXDLMSTranslator.AddTag(list, Command.GloSetRequest, "glo-set-request");
     GXDLMSTranslator.AddTag(list, Command.GloSetResponse, "glo-set-response");
     GXDLMSTranslator.AddTag(list, Command.GloMethodRequest, "glo-action-request");
     GXDLMSTranslator.AddTag(list, Command.GloMethodResponse, "glo-action-response");
     GXDLMSTranslator.AddTag(list, Command.GloReadRequest, "glo-read-request");
     GXDLMSTranslator.AddTag(list, Command.GloReadResponse, "glo-read-response");
     GXDLMSTranslator.AddTag(list, Command.GloWriteRequest, "glo-write-request");
     GXDLMSTranslator.AddTag(list, Command.GloWriteResponse, "glo-write-response");
     GXDLMSTranslator.AddTag(list, Command.GeneralGloCiphering, "general-glo-ciphering");
 }
Exemple #11
0
 /// <summary>
 /// Get glo tags.
 /// </summary>
 /// <param name="type"></param>
 /// <param name="list"></param>
 internal static void GetGloTags(TranslatorOutputType type, SortedList <int, string> list)
 {
     GXDLMSTranslator.AddTag(list, Command.GloInitiateRequest, "glo_InitiateRequest");
     GXDLMSTranslator.AddTag(list, Command.GloInitiateResponse, "glo_InitiateResponse");
     GXDLMSTranslator.AddTag(list, Command.GloGetRequest, "glo_GetRequest");
     GXDLMSTranslator.AddTag(list, Command.GloGetResponse, "glo_GetResponse");
     GXDLMSTranslator.AddTag(list, Command.GloSetRequest, "glo_SetRequest");
     GXDLMSTranslator.AddTag(list, Command.GloSetResponse, "glo_SetResponse");
     GXDLMSTranslator.AddTag(list, Command.GloMethodRequest, "glo_ActionRequest");
     GXDLMSTranslator.AddTag(list, Command.GloMethodResponse, "glo_ActionResponse");
     GXDLMSTranslator.AddTag(list, Command.GloReadRequest, "glo_ReadRequest");
     GXDLMSTranslator.AddTag(list, Command.GloReadResponse, "glo_ReadResponse");
     GXDLMSTranslator.AddTag(list, Command.GloWriteRequest, "glo_WriteRequest");
     GXDLMSTranslator.AddTag(list, Command.GloWriteResponse, "glo_WriteResponse");
     GXDLMSTranslator.AddTag(list, Command.GeneralGloCiphering, "GeneralGloCiphering");
 }
Exemple #12
0
 /// <summary>
 /// Get SN tags.
 /// </summary>
 /// <param name="type"></param>
 /// <param name="list"></param>
 internal static void GetSnTags(TranslatorOutputType type, SortedList <int, string> list)
 {
     list.Add((int)Command.ReadRequest, "ReadRequest");
     list.Add((int)Command.WriteRequest, "WriteRequest");
     list.Add((int)Command.WriteResponse, "WriteResponse");
     list.Add((int)(Command.ReadRequest) << 8 | (byte)VariableAccessSpecification.VariableName, "VariableName");
     list.Add((int)(Command.ReadRequest) << 8 | (byte)VariableAccessSpecification.ParameterisedAccess, "ParameterisedAccess");
     list.Add((int)(Command.ReadRequest) << 8 | (byte)VariableAccessSpecification.BlockNumberAccess, "BlockNumberAccess");
     list.Add(
         (int)Command.WriteRequest << 8
             | (int)VariableAccessSpecification.VariableName,
             "VariableName");
     list.Add((int)Command.ReadResponse, "ReadResponse");
     list.Add((int)(Command.ReadResponse) << 8 | (byte)SingleReadResponse.DataBlockResult, "DataBlockResult");
     list.Add((int)(Command.ReadResponse) << 8 | (byte)SingleReadResponse.Data, "Data");
     list.Add((int)Command.ReadResponse << 8
              | (int)SingleReadResponse.DataAccessError,
              "DataAccessError");
 }
Exemple #13
0
 /// <summary>
 /// Get general tags.
 /// </summary>
 /// <param name="type"></param>
 /// <param name="list"></param>
 internal static void GetGeneralTags(TranslatorOutputType type, SortedList <int, string> list)
 {
     GXDLMSTranslator.AddTag(list, Command.Snrm, "Snrm");
     GXDLMSTranslator.AddTag(list, Command.UnacceptableFrame, "UnacceptableFrame");
     GXDLMSTranslator.AddTag(list, Command.DisconnectMode, "DisconnectMode");
     GXDLMSTranslator.AddTag(list, Command.Ua, "Ua");
     GXDLMSTranslator.AddTag(list, Command.Aarq, "AssociationRequest");
     GXDLMSTranslator.AddTag(list, Command.Aare, "AssociationResponse");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ApplicationContextName, "ApplicationContextName");
     GXDLMSTranslator.AddTag(list, Command.InitiateResponse, "InitiateResponse");
     GXDLMSTranslator.AddTag(list, Command.InitiateRequest, "InitiateRequest");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.NegotiatedQualityOfService, "NegotiatedQualityOfService");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ProposedQualityOfService, "ProposedQualityOfService");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ProposedDlmsVersionNumber, "ProposedDlmsVersionNumber");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ProposedMaxPduSize, "ProposedMaxPduSize");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ProposedConformance, "ProposedConformance");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.VaaName, "VaaName");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.NegotiatedConformance, "NegotiatedConformance");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.NegotiatedDlmsVersionNumber, "NegotiatedDlmsVersionNumber");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.NegotiatedMaxPduSize, "NegotiatedMaxPduSize");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ConformanceBit, "ConformanceBit");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.SenderACSERequirements, "SenderACSERequirements");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ResponderACSERequirement, "ResponderACSERequirement");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.RespondingMechanismName, "MechanismName");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.CallingMechanismName, "MechanismName");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.CallingAuthentication, "CallingAuthentication");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.RespondingAuthentication, "RespondingAuthentication");
     GXDLMSTranslator.AddTag(list, Command.ReleaseRequest, "ReleaseRequest");
     GXDLMSTranslator.AddTag(list, Command.ReleaseResponse, "ReleaseResponse");
     GXDLMSTranslator.AddTag(list, Command.DisconnectRequest, "Disc");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.AssociationResult, "AssociationResult");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ResultSourceDiagnostic, "ResultSourceDiagnostic");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ACSEServiceUser, "ACSEServiceUser");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.CallingAPTitle, "CallingAPTitle");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.RespondingAPTitle, "RespondingAPTitle");
 }
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="type">Translator output type.</param>
 public GXDLMSTranslator(TranslatorOutputType type)
 {
     OutputType = type;
     GetTags(type, tags, tagsByName);
     if (type == TranslatorOutputType.SimpleXml)
     {
         Hex = true;
     }
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="type">XML type.</param>
 public GXDLMSXmlClient(TranslatorOutputType type, bool hex)
 {
     translator                = new GXDLMSTranslator(type);
     translator.Hex            = hex;
     UseLogicalNameReferencing = true;
 }
 /// <summary>
 /// Get all tags.
 /// </summary>
 /// <param name="type">Output type.</param>
 /// <param name="list">List of tags by ID.</param>
 /// <param name="tagsByName">List of tags by name.</param>
 private static void GetTags(TranslatorOutputType type,
                             SortedList<int, string> list, SortedList<string, int> tagsByName)
 {
     if (type == TranslatorOutputType.SimpleXml)
     {
         TranslatorSimpleTags.GetGeneralTags(type, list);
         TranslatorSimpleTags.GetSnTags(type, list);
         TranslatorSimpleTags.GetLnTags(type, list);
         TranslatorSimpleTags.GetGloTags(type, list);
         TranslatorSimpleTags.GetTranslatorTags(type, list);
         TranslatorSimpleTags.GetDataTypeTags(list);
     }
     else
     {
         TranslatorStandardTags.GetGeneralTags(type, list);
         TranslatorStandardTags.GetSnTags(type, list);
         TranslatorStandardTags.GetLnTags(type, list);
         TranslatorStandardTags.GetGloTags(type, list);
         TranslatorStandardTags.GetTranslatorTags(type, list);
         TranslatorStandardTags.GetDataTypeTags(list);
     }
     // Simple is not case sensitive.
     bool lowercase = type == TranslatorOutputType.SimpleXml;
     foreach (var it in list)
     {
         string str = it.Value;
         if (lowercase)
         {
             str = str.ToLower();
         }
         if (!tagsByName.ContainsKey(str))
         {
             tagsByName.Add(str, it.Key);
         }
     }
 }
Exemple #17
0
        public string CheckFileNameAndOutputType(string fileName, TranslatorOutputType outputType, bool isMinified = false)
        {
            if (outputType == TranslatorOutputType.None)
            {
                return(null);
            }

            var outputTypeByFileName = GetOutputType(fileName);

            if (outputTypeByFileName == outputType)
            {
                return(null);
            }

            string changeExtention = null;

            switch (outputTypeByFileName)
            {
            case TranslatorOutputType.JavaScript:
                if (IsMinJS(fileName))
                {
                    changeExtention = Files.Extensions.MinJS;
                }
                else
                {
                    changeExtention = Files.Extensions.JS;
                }
                break;

            case TranslatorOutputType.TypeScript:
                changeExtention = Files.Extensions.DTS;
                break;

            case TranslatorOutputType.StyleSheets:
                changeExtention = Files.Extensions.CSS;
                break;

            default:
                break;
            }

            if (changeExtention != null)
            {
                fileName = fileName.ReplaceLastInstanceOf(changeExtention, string.Empty);
            }

            if (fileName[fileName.Length - 1] == '.')
            {
                fileName = fileName.Remove(fileName.Length - 1);
            }

            switch (outputType)
            {
            case TranslatorOutputType.JavaScript:
                if (isMinified)
                {
                    fileName = fileName + Files.Extensions.MinJS;
                }
                else
                {
                    fileName = fileName + Files.Extensions.JS;
                }

                return(fileName);

            case TranslatorOutputType.TypeScript:
                return(fileName + Files.Extensions.DTS);

            case TranslatorOutputType.StyleSheets:
                return(fileName + Files.Extensions.CSS);

            default:
                return(null);
            }
        }
 /// <summary>
 /// Get SN tags.
 /// </summary>
 /// <param name="type"></param>
 /// <param name="list"></param>
 internal static void GetSnTags(TranslatorOutputType type, SortedList<int, string> list)
 {
     list.Add((int)Command.ReadRequest, "ReadRequest");
     list.Add((int)Command.WriteRequest, "WriteRequest");
     list.Add((int)Command.WriteResponse, "WriteResponse");
     list.Add((int)(Command.ReadRequest) << 8 | (byte)VariableAccessSpecification.VariableName, "VariableName");
     list.Add((int)(Command.ReadRequest) << 8 | (byte)VariableAccessSpecification.ParameterisedAccess, "ParameterisedAccess");
     list.Add((int)(Command.ReadRequest) << 8 | (byte)VariableAccessSpecification.BlockNumberAccess, "BlockNumberAccess");
     list.Add(
         (int)Command.WriteRequest << 8
         | (int)VariableAccessSpecification.VariableName,
         "VariableName");
     list.Add((int)Command.ReadResponse, "ReadResponse");
     list.Add((int)(Command.ReadResponse) << 8 | (byte)SingleReadResponse.DataBlockResult, "DataBlockResult");
     list.Add((int)(Command.ReadResponse) << 8 | (byte)SingleReadResponse.Data, "Data");
     GXDLMSTranslator.AddTag(list, Command.GetResponse, "GetResponse");
     list.Add((int)(Command.GetResponse) << 8 | (byte)GetCommandType.Normal, "Normal");
     list.Add((int)(Command.GetResponse) << 8 | (byte)GetCommandType.NextDataBlock, "GetResponsewithDataBlock");
     list.Add((int)(Command.GetResponse) << 8 | (byte)GetCommandType.WithList, "GetResponseWithList");
     GXDLMSTranslator.AddTag(list, Command.SetResponse, "SetResponse");
     list.Add((int)(Command.SetResponse) << 8 | (byte)SetResponseType.Normal, "SetResponseNormal");
     list.Add((int)(Command.SetResponse) << 8 | (byte)SetResponseType.DataBlock, "SetResponseDataBlock");
     list.Add((int)(Command.SetResponse) << 8 | (byte)SetResponseType.LastDataBlock, "SetResponseWithLastDataBlock");
     list.Add((int)(Command.SetResponse) << 8 | (byte)SetResponseType.WithList, "SetResponseWithList");
     list.Add((int)Command.ReadResponse << 8
              | (int)SingleReadResponse.DataAccessError,
              "DataAccessError");
 }
 /// <summary>
 /// Get translator tags.
 /// </summary>
 /// <param name="type"></param>
 /// <param name="list"></param>
 internal static void GetTranslatorTags(TranslatorOutputType type, SortedList<int, string> list)
 {
     GXDLMSTranslator.AddTag(list, TranslatorTags.Wrapper, "Wrapper");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Hdlc, "Hdlc");
     GXDLMSTranslator.AddTag(list, TranslatorTags.PduDlms, "x:xDLMS-APDU");
     GXDLMSTranslator.AddTag(list, TranslatorTags.PduCse, "x:aCSE-APDU");
     GXDLMSTranslator.AddTag(list, TranslatorTags.TargetAddress,
                             "TargetAddress");
     GXDLMSTranslator.AddTag(list, TranslatorTags.SourceAddress,
                             "SourceAddress");
     GXDLMSTranslator.AddTag(list,
                             TranslatorTags.ListOfVariableAccessSpecification,
                             "x:variable-access-specification");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ListOfData,
                             "x:list-of-data");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Success, "Success");
     GXDLMSTranslator.AddTag(list, TranslatorTags.DataAccessError,
                             "x:data-access-result");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AttributeDescriptor,
                             "x:cosem-attribute-descriptor");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ClassId, "x:class-id");
     GXDLMSTranslator.AddTag(list, TranslatorTags.InstanceId,
                             "x:instance-id");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AttributeId,
                             "x:attribute-id");
     GXDLMSTranslator.AddTag(list,
                             TranslatorTags.MethodInvocationParameters,
                             "x:method-invocation-parameters");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Selector, "x:selector");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Parameter, "x:parameter");
     GXDLMSTranslator.AddTag(list, TranslatorTags.LastBlock, "LastBlock");
     GXDLMSTranslator.AddTag(list, TranslatorTags.BlockNumber,
                             "x:block-number");
     GXDLMSTranslator.AddTag(list, TranslatorTags.RawData, "RawData");
     GXDLMSTranslator.AddTag(list, TranslatorTags.MethodDescriptor,
                             "x:cosem-method-descriptor");
     GXDLMSTranslator.AddTag(list, TranslatorTags.MethodId, "x:method-id");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Result, "x:result");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ReturnParameters,
                             "x:return-parameters");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AccessSelection,
                             "x:access-selection");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Value, "x:value");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AccessSelector,
                             "x:access-selector");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AccessParameters,
                             "x:access-parameters");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AttributeDescriptorList,
                             "AttributeDescriptorList");
     GXDLMSTranslator.AddTag(list,
                             TranslatorTags.AttributeDescriptorWithSelection,
                             "AttributeDescriptorWithSelection");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ReadDataBlockAccess,
                             "ReadDataBlockAccess");
     GXDLMSTranslator.AddTag(list, TranslatorTags.WriteDataBlockAccess,
                             "WriteDataBlockAccess");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Data, "x:data");
     GXDLMSTranslator.AddTag(list, TranslatorTags.InvokeId,
                             "x:invoke-id-and-priority");
     GXDLMSTranslator.AddTag(list, TranslatorTags.LongInvokeId,
                             "x:long-invoke-id-and-priority");
     GXDLMSTranslator.AddTag(list, TranslatorTags.DateTime, "x:date-time");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Reason, "Reason");
     GXDLMSTranslator.AddTag(list,
                             TranslatorTags.VariableAccessSpecification,
                             "x:Variable-Access-Specification");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Choice, "x:CHOICE");
     GXDLMSTranslator.AddTag(list, TranslatorTags.NotificationBody,
                             "x:notification-body");
     GXDLMSTranslator.AddTag(list, TranslatorTags.DataValue,
                             "x:data-value");
 }
Exemple #20
0
 /// <summary>
 /// Get translator tags.
 /// </summary>
 /// <param name="type"></param>
 /// <param name="list"></param>
 internal static void GetTranslatorTags(TranslatorOutputType type, SortedList <int, string> list)
 {
     GXDLMSTranslator.AddTag(list, TranslatorTags.Wrapper, "Wrapper");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Hdlc, "Hdlc");
     GXDLMSTranslator.AddTag(list, TranslatorTags.PduDlms, "xDLMS-APDU");
     GXDLMSTranslator.AddTag(list, TranslatorTags.PduCse, "aCSE-APDU");
     GXDLMSTranslator.AddTag(list, TranslatorTags.TargetAddress,
                             "TargetAddress");
     GXDLMSTranslator.AddTag(list, TranslatorTags.SourceAddress,
                             "SourceAddress");
     GXDLMSTranslator.AddTag(list,
                             TranslatorTags.ListOfVariableAccessSpecification,
                             "variable-access-specification");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ListOfData,
                             "list-of-data");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Success, "Success");
     GXDLMSTranslator.AddTag(list, TranslatorTags.DataAccessError,
                             "data-access-result");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AttributeDescriptor,
                             "cosem-attribute-descriptor");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ClassId, "class-id");
     GXDLMSTranslator.AddTag(list, TranslatorTags.InstanceId,
                             "instance-id");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AttributeId,
                             "attribute-id");
     GXDLMSTranslator.AddTag(list,
                             TranslatorTags.MethodInvocationParameters,
                             "method-invocation-parameters");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Selector, "selector");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Parameter, "parameter");
     GXDLMSTranslator.AddTag(list, TranslatorTags.LastBlock, "LastBlock");
     GXDLMSTranslator.AddTag(list, TranslatorTags.BlockNumber,
                             "block-number");
     GXDLMSTranslator.AddTag(list, TranslatorTags.RawData, "RawData");
     GXDLMSTranslator.AddTag(list, TranslatorTags.MethodDescriptor,
                             "cosem-method-descriptor");
     GXDLMSTranslator.AddTag(list, TranslatorTags.MethodId, "method-id");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Result, "result");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ReturnParameters,
                             "return-parameters");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AccessSelection,
                             "access-selection");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Value, "value");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AccessSelector,
                             "access-selector");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AccessParameters,
                             "access-parameters");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AttributeDescriptorList,
                             "AttributeDescriptorList");
     GXDLMSTranslator.AddTag(list,
                             TranslatorTags.AttributeDescriptorWithSelection,
                             "AttributeDescriptorWithSelection");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ReadDataBlockAccess,
                             "ReadDataBlockAccess");
     GXDLMSTranslator.AddTag(list, TranslatorTags.WriteDataBlockAccess,
                             "WriteDataBlockAccess");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Data, "data");
     GXDLMSTranslator.AddTag(list, TranslatorTags.InvokeId,
                             "invoke-id-and-priority");
     GXDLMSTranslator.AddTag(list, TranslatorTags.LongInvokeId,
                             "long-invoke-id-and-priority");
     GXDLMSTranslator.AddTag(list, TranslatorTags.DateTime, "date-time");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Reason, "Reason");
     GXDLMSTranslator.AddTag(list,
                             TranslatorTags.VariableAccessSpecification,
                             "Variable-Access-Specification");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Choice, "CHOICE");
     GXDLMSTranslator.AddTag(list, TranslatorTags.NotificationBody, "notification-body");
     GXDLMSTranslator.AddTag(list, TranslatorTags.DataValue, "data-value");
     GXDLMSTranslator.AddTag(list, TranslatorTags.InitiateError, "initiateError");
     GXDLMSTranslator.AddTag(list, TranslatorTags.CipheredService, "ciphered-content");
     GXDLMSTranslator.AddTag(list, TranslatorTags.SystemTitle, "system-title");
     GXDLMSTranslator.AddTag(list, TranslatorTags.DataBlock, "DataBlock");
 }
Exemple #21
0
 /// <summary>
 /// Get general tags.
 /// </summary>
 /// <param name="type"></param>
 /// <param name="list"></param>
 internal static void GetGeneralTags(TranslatorOutputType type, SortedList <int, string> list)
 {
     GXDLMSTranslator.AddTag(list, Command.Snrm, "Snrm");
     GXDLMSTranslator.AddTag(list, Command.UnacceptableFrame, "UnacceptableFrame");
     GXDLMSTranslator.AddTag(list, Command.DisconnectMode, "DisconnectMode");
     GXDLMSTranslator.AddTag(list, Command.Ua, "Ua");
     GXDLMSTranslator.AddTag(list, Command.Aarq, "aarq");
     GXDLMSTranslator.AddTag(list, Command.Aare, "aare");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.ApplicationContextName,
                             "application-context-name");
     GXDLMSTranslator.AddTag(list, Command.InitiateResponse,
                             "InitiateResponse");
     GXDLMSTranslator.AddTag(list, Command.InitiateRequest,
                             "user-information");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.NegotiatedQualityOfService,
                             "negotiated-quality-of-service");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.ProposedQualityOfService,
                             "proposed-quality-of-service");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.ProposedDlmsVersionNumber,
                             "proposed-dlms-version-number");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.ProposedMaxPduSize,
                             "client-max-receive-pdu-size");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.ProposedConformance,
                             "proposed-conformance");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.VaaName,
                             "VaaName");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.NegotiatedConformance,
                             "NegotiatedConformance");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.NegotiatedDlmsVersionNumber,
                             "NegotiatedDlmsVersionNumber");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.NegotiatedMaxPduSize,
                             "NegotiatedMaxPduSize");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ConformanceBit,
                             "ConformanceBit");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.SenderACSERequirements,
                             "sender-acse-requirements");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.ResponderACSERequirement,
                             "responder-acse-requirements");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.RespondingMechanismName,
                             "mechanism-name");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.CallingMechanismName,
                             "mechanism-name");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.CallingAuthentication,
                             "calling-authentication-value");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.RespondingAuthentication,
                             "responding-authentication-value");
     GXDLMSTranslator.AddTag(list, Command.ReleaseRequest,
                             "ReleaseRequest");
     GXDLMSTranslator.AddTag(list, Command.ReleaseResponse,
                             "ReleaseResponse");
     GXDLMSTranslator.AddTag(list, Command.DisconnectRequest, "Disc");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.AssociationResult,
                             "result");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.ResultSourceDiagnostic,
                             "result-source-diagnostic");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ACSEServiceUser,
                             "acse-service-user");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.CallingAPTitle,
                             "CallingAPTitle");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.RespondingAPTitle,
                             "RespondingAPTitle");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.CharString,
                             "charstring");
 }
Exemple #22
0
        /// <summary>
        /// Get LN tags.
        /// </summary>
        /// <param name="type"></param>
        /// <param name="list"></param>
        internal static void GetLnTags(TranslatorOutputType type, SortedList <int, string> list)
        {
            GXDLMSTranslator.AddTag(list, Command.GetRequest, "get-request");
            list.Add((int)Command.GetRequest << 8 | (int)GetCommandType.Normal,
                     "get-request-normal");
            list.Add((int)Command.GetRequest << 8 | (int)GetCommandType.NextDataBlock,
                     "get-request-next");
            list.Add((int)Command.GetRequest << 8 | (int)GetCommandType.WithList,
                     "get-request-with-list");
            GXDLMSTranslator.AddTag(list, Command.SetRequest, "set-request");
            list.Add((int)Command.SetRequest << 8 | (int)SetRequestType.Normal,
                     "set-request-normal");
            list.Add((int)Command.SetRequest << 8 | (int)SetRequestType.FirstDataBlock,
                     "set-request-first-data-block");
            list.Add((int)Command.SetRequest << 8 | (int)SetRequestType.WithDataBlock,
                     "set-request-with-data-block");
            list.Add((int)Command.SetRequest << 8 | (int)SetRequestType.WithList,
                     "set-request-with-list");
            GXDLMSTranslator.AddTag(list, Command.MethodRequest,
                                    "action-request");
            list.Add((int)Command.MethodRequest << 8 | (int)ActionRequestType.Normal,
                     "action-request-normal");
            list.Add((int)Command.MethodRequest << 8 | (int)ActionRequestType.NextBlock,
                     "ActionRequestForNextDataBlock");
            list.Add((int)Command.MethodRequest << 8 | (int)ActionRequestType.WithList,
                     "action-request-with-list");
            GXDLMSTranslator.AddTag(list, Command.MethodResponse,
                                    "action-response");
            list.Add((int)Command.MethodResponse << 8 | (int)ActionResponseType.Normal,
                     "action-response-normal");
            list.Add((int)Command.MethodResponse << 8 | (int)ActionResponseType.WithFirstBlock,
                     "action-response-with-first-block");
            list.Add((int)Command.MethodResponse << 8 | (int)ActionResponseType.WithList,
                     "action-response-with-list");
            list.Add((int)TranslatorTags.SingleResponse, "single-response");
            list.Add((int)Command.DataNotification, "data-notification");
            GXDLMSTranslator.AddTag(list, Command.GetResponse, "get-response");
            list.Add((int)Command.GetResponse << 8 | (int)GetCommandType.Normal,
                     "get-response-normal");
            list.Add((int)Command.GetResponse << 8 | (int)GetCommandType.NextDataBlock,
                     "get-response-with-data-block");
            list.Add((int)Command.GetResponse << 8 | (int)GetCommandType.WithList,
                     "get-response-with-list");
            GXDLMSTranslator.AddTag(list, Command.SetResponse, "set-response");
            list.Add((int)Command.SetResponse << 8 | (int)SetResponseType.Normal,
                     "set-response-normal");
            list.Add((int)Command.SetResponse << 8 | (int)SetResponseType.DataBlock,
                     "set-response-data-block");
            list.Add((int)Command.SetResponse << 8 | (int)SetResponseType.LastDataBlock,
                     "set-response-with-last-data-block");
            list.Add((int)Command.SetResponse << 8 | (int)SetResponseType.WithList,
                     "set-response-with-list");

            GXDLMSTranslator.AddTag(list, Command.AccessRequest,
                                    "access-request");
            list.Add((int)Command.AccessRequest << 8 | (int)AccessServiceCommandType.Get,
                     "access-request-Get");
            list.Add((int)Command.AccessRequest << 8 | (int)AccessServiceCommandType.Set,
                     "access-request-set");
            list.Add((int)
                     Command.AccessRequest << 8 | (int)AccessServiceCommandType.Action,
                     "access-request-action");
            GXDLMSTranslator.AddTag(list, Command.AccessResponse,
                                    "access-response");
            list.Add((int)Command.AccessResponse << 8 | (int)AccessServiceCommandType.Get,
                     "access-response-Get");
            list.Add((int)Command.AccessResponse << 8 | (int)AccessServiceCommandType.Set,
                     "access-response-set");
            list.Add((int)Command.AccessResponse << 8 | (int)AccessServiceCommandType.Action,
                     "access-response-action");

            list.Add((int)TranslatorTags.AccessRequestBody, "access-request-body");
            list.Add((int)TranslatorTags.ListOfAccessRequestSpecification,
                     "access-request-specification");
            list.Add((int)TranslatorTags.AccessRequestSpecification,
                     "Access-Request-Specification");
            list.Add((int)TranslatorTags.AccessRequestListOfData,
                     "access-request-list-of-data");

            list.Add((int)TranslatorTags.AccessResponseBody, "access-response-body");
            list.Add((int)TranslatorTags.ListOfAccessResponseSpecification,
                     "access-response-specification");
            list.Add((int)TranslatorTags.AccessResponseSpecification,
                     "Access-Response-Specification");
            list.Add((int)TranslatorTags.AccessResponseListOfData,
                     "access-response-list-of-data");

            list.Add((int)TranslatorTags.Service, "service");
            list.Add((int)TranslatorTags.ServiceError, "service-error");
        }
 /// <summary>
 /// Get glo tags.
 /// </summary>
 /// <param name="type"></param>
 /// <param name="list"></param>
 internal static void GetGloTags(TranslatorOutputType type, SortedList<int, string> list)
 {
     GXDLMSTranslator.AddTag(list, Command.GloInitiateRequest, "gloInitiateRequest");
     GXDLMSTranslator.AddTag(list, Command.GloInitiateResponse, "gloInitiateResponse");
     GXDLMSTranslator.AddTag(list, Command.GloGetRequest, "gloGetRequest");
     GXDLMSTranslator.AddTag(list, Command.GloGetResponse, "gloGetResponse");
     GXDLMSTranslator.AddTag(list, Command.GloSetRequest, "gloSetRequest");
     GXDLMSTranslator.AddTag(list, Command.GloSetResponse, "gloSetResponse");
     GXDLMSTranslator.AddTag(list, Command.GloMethodRequest, "gloActionRequest");
     GXDLMSTranslator.AddTag(list, Command.GloMethodResponse, "gloActionResponse");
     GXDLMSTranslator.AddTag(list, Command.GloReadRequest, "gloReadRequest");
     GXDLMSTranslator.AddTag(list, Command.GloReadResponse, "gloReadResponse");
     GXDLMSTranslator.AddTag(list, Command.GloWriteRequest, "gloWriteRequest");
     GXDLMSTranslator.AddTag(list, Command.GloWriteResponse, "gloWriteResponse");
 }
 /// <summary>
 /// Get translator tags.
 /// </summary>
 /// <param name="type"></param>
 /// <param name="list"></param>
 internal static void GetTranslatorTags(TranslatorOutputType type, SortedList<int, string> list)
 {
     GXDLMSTranslator.AddTag(list, TranslatorTags.Wrapper, "Wrapper");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Hdlc, "Hdlc");
     GXDLMSTranslator.AddTag(list, TranslatorTags.PduDlms, "Pdu");
     GXDLMSTranslator.AddTag(list, TranslatorTags.TargetAddress, "TargetAddress");
     GXDLMSTranslator.AddTag(list, TranslatorTags.SourceAddress, "SourceAddress");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ListOfVariableAccessSpecification, "ListOfVariableAccessSpecification");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ListOfData, "ListOfData");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Success, "Ok");
     GXDLMSTranslator.AddTag(list, TranslatorTags.DataAccessError, "DataAccessError");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AttributeDescriptor, "AttributeDescriptor");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ClassId, "ClassId");
     GXDLMSTranslator.AddTag(list, TranslatorTags.InstanceId, "InstanceId");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AttributeId, "AttributeId");
     GXDLMSTranslator.AddTag(list, TranslatorTags.MethodInvocationParameters, "MethodInvocationParameters");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Selector, "Selector");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Parameter, "Parameter");
     GXDLMSTranslator.AddTag(list, TranslatorTags.LastBlock, "LastBlock");
     GXDLMSTranslator.AddTag(list, TranslatorTags.BlockNumber, "BlockNumber");
     GXDLMSTranslator.AddTag(list, TranslatorTags.RawData, "RawData");
     GXDLMSTranslator.AddTag(list, TranslatorTags.MethodDescriptor, "MethodDescriptor");
     GXDLMSTranslator.AddTag(list, TranslatorTags.MethodId, "MethodId");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Result, "Result");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ReturnParameters, "ReturnParameters");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AccessSelection, "AccessSelection");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Value, "Value");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AccessSelector, "AccessSelector");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AccessParameters, "AccessParameters");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AttributeDescriptorList, "AttributeDescriptorList");
     GXDLMSTranslator.AddTag(list, TranslatorTags.AttributeDescriptorWithSelection, "AttributeDescriptorWithSelection");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ReadDataBlockAccess, "ReadDataBlockAccess");
     GXDLMSTranslator.AddTag(list, TranslatorTags.WriteDataBlockAccess, "WriteDataBlockAccess");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Data, "Data");
     GXDLMSTranslator.AddTag(list, TranslatorTags.InvokeId, "InvokeIdAndPriority");
     GXDLMSTranslator.AddTag(list, TranslatorTags.DateTime, "SendTime");
     GXDLMSTranslator.AddTag(list, TranslatorTags.Reason, "Reason");
     GXDLMSTranslator.AddTag(list, TranslatorTags.ListOfResult, "ListOfResult");
 }
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="list">List of tags.</param>
 public GXDLMSTranslatorStructure(TranslatorOutputType type, bool numericsAshex, bool hex, SortedList<int, string> list)
 {
     OutputType = type;
     showNumericsAsHex = numericsAshex;
     ShowStringAsHex = hex;
     tags = list;
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="type">XML type.</param>
 public GXDLMSXmlClient(TranslatorOutputType type)
 {
     translator     = new GXDLMSTranslator(type);
     translator.Hex = false;
 }
 internal static String ErrorCodeToString(TranslatorOutputType type,
         ErrorCode value)
 {
     if (type == TranslatorOutputType.StandardXml)
     {
         return TranslatorStandardTags.ErrorCodeToString(value);
     }
     else
     {
         return TranslatorSimpleTags.ErrorCodeToString(value);
     }
 }
    /// <summary>
    /// Get LN tags.
    /// </summary>
    /// <param name="type"></param>
    /// <param name="list"></param>
    internal static void GetLnTags(TranslatorOutputType type, SortedList<int, string> list)
    {
        GXDLMSTranslator.AddTag(list, Command.GetRequest, "x:get-request");
        list.Add((int)Command.GetRequest << 8 | (int)GetCommandType.Normal,
                 "x:get-request-normal");
        list.Add((int)Command.GetRequest << 8 | (int)GetCommandType.NextDataBlock,
                 "x:get-request-next");
        list.Add((int)Command.GetRequest << 8 | (int)GetCommandType.WithList,
                 "x:get-request-with-list");
        GXDLMSTranslator.AddTag(list, Command.SetRequest, "x:set-request");
        list.Add((int)Command.SetRequest << 8 | (int)SetRequestType.Normal,
                 "x:set-request-normal");
        list.Add((int)Command.SetRequest << 8 | (int)SetRequestType.FirstDataBlock,
                 "x:set-request-first-data-block");
        list.Add((int)Command.SetRequest << 8 | (int)SetRequestType.WithDataBlock,
                 "x:set-request-with-data-block");
        list.Add((int)Command.SetRequest << 8 | (int)SetRequestType.WithList,
                 "x:set-request-with-list");
        GXDLMSTranslator.AddTag(list, Command.MethodRequest,
                                "x:action-request");
        list.Add((int)Command.MethodRequest << 8 | (int)ActionRequestType.Normal,
                 "x:action-request-normal");
        list.Add((int)Command.MethodRequest << 8 | (int)ActionRequestType.NextBlock,
                 "ActionRequestForNextDataBlock");
        list.Add((int)Command.MethodRequest << 8 | (int)ActionRequestType.WithList,
                 "x:action-request-with-list");
        GXDLMSTranslator.AddTag(list, Command.MethodResponse,
                                "x:action-response");
        list.Add((int)Command.MethodResponse << 8 | (int)ActionResponseType.Normal,
                 "x:action-response-normal");
        list.Add((int)Command.MethodResponse << 8 | (int)ActionResponseType.WithFirstBlock,
                 "x:action-response-with-first-block");
        list.Add((int)Command.MethodResponse << 8 | (int)ActionResponseType.WithList,
                 "x:action-response-with-list");
        list.Add((int)TranslatorTags.SingleResponse, "x:single-response");
        list.Add((int)Command.DataNotification, "x:data-notification");
        GXDLMSTranslator.AddTag(list, Command.GetResponse, "x:get-response");
        list.Add((int)Command.GetResponse << 8 | (int)GetCommandType.Normal,
                 "x:get-response-normal");
        list.Add((int)Command.GetResponse << 8 | (int)GetCommandType.NextDataBlock,
                 "x:get-response-with-data-block");
        list.Add((int)Command.GetResponse << 8 | (int)GetCommandType.WithList,
                 "x:get-response-with-list");
        GXDLMSTranslator.AddTag(list, Command.SetResponse, "x:set-response");
        list.Add((int)Command.SetResponse << 8 | (int)SetResponseType.Normal,
                 "x:set-response-normal");
        list.Add((int)Command.SetResponse << 8 | (int)SetResponseType.DataBlock,
                 "x:set-response-data-block");
        list.Add((int)Command.SetResponse << 8 | (int)SetResponseType.LastDataBlock,
                 "x:set-response-with-last-data-block");
        list.Add((int)Command.SetResponse << 8 | (int)SetResponseType.WithList,
                 "x:set-response-with-list");

        GXDLMSTranslator.AddTag(list, Command.AccessRequest,
                                "x:access-request");
        list.Add((int)Command.AccessRequest << 8 | (int)AccessServiceCommandType.Get,
                 "x:access-request-Get");
        list.Add((int)Command.AccessRequest << 8 | (int)AccessServiceCommandType.Set,
                 "x:access-request-set");
        list.Add((int)
                 Command.AccessRequest << 8 | (int)AccessServiceCommandType.Action,
                 "x:access-request-action");
        GXDLMSTranslator.AddTag(list, Command.AccessResponse,
                                "x:access-response");
        list.Add((int)Command.AccessResponse << 8 | (int)AccessServiceCommandType.Get,
                 "x:access-response-Get");
        list.Add((int)Command.AccessResponse << 8 | (int)AccessServiceCommandType.Set,
                 "x:access-response-set");
        list.Add((int)Command.AccessResponse << 8 | (int)AccessServiceCommandType.Action,
                 "x:access-response-action");

        list.Add((int)TranslatorTags.AccessRequestBody, "x:access-request-body");
        list.Add((int)TranslatorTags.ListOfAccessRequestSpecification,
                 "x:access-request-specification");
        list.Add((int)TranslatorTags.AccessRequestSpecification,
                 "x:Access-Request-Specification");
        list.Add((int)TranslatorTags.AccessRequestListOfData,
                 "x:access-request-list-of-data");

        list.Add((int)TranslatorTags.AccessResponseBody, "x:access-response-body");
        list.Add((int)TranslatorTags.ListOfAccessResponseSpecification,
                 "x:access-response-specification");
        list.Add((int)TranslatorTags.AccessResponseSpecification,
                 "x:Access-Response-Specification");
        list.Add((int)TranslatorTags.AccessResponseListOfData,
                 "x:access-response-list-of-data");
    }
 static ErrorCode ValueOfErrorCode(TranslatorOutputType type,
                                   String value)
 {
     if (type == TranslatorOutputType.StandardXml)
     {
         return TranslatorStandardTags.ValueOfErrorCode(value);
     }
     else
     {
         return TranslatorSimpleTags.ValueOfErrorCode(value);
     }
 }
    /// <summary>
    /// Get SN tags.
    /// </summary>
    /// <param name="type"></param>
    /// <param name="list"></param>
    internal static void GetSnTags(TranslatorOutputType type, SortedList<int, string> list)
    {
        list.Add((int)Command.ReadRequest, "x:readRequest");
        list.Add((int)Command.WriteRequest, "x:writeRequest");
        list.Add((int)Command.WriteResponse, "x:writeResponse");
        list.Add((int)Command.WriteRequest << 8 | (int)SingleReadResponse.Data,
                 "x:Data");
        list.Add(
            (int)Command.ReadRequest << 8
            | (int)VariableAccessSpecification.VariableName,
            "x:variable-name");
        list.Add(
            (int)Command.ReadRequest << 8
            | (int)VariableAccessSpecification.ParameterisedAccess,
            "x:parameterized-access");
        list.Add(
            (int)Command.ReadRequest << 8
            | (int)VariableAccessSpecification.BlockNumberAccess,
            "BlockNumberAccess");
        list.Add(
            (int)Command.WriteRequest << 8
            | (int)VariableAccessSpecification.VariableName,
            "x:variable-name");

        list.Add((int)Command.ReadResponse, "x:readResponse");
        list.Add(
            (int)Command.ReadResponse << 8
            | (int)SingleReadResponse.DataBlockResult,
            "DataBlockResult");
        list.Add((int)Command.ReadResponse << 8 | (int)SingleReadResponse.Data,
                 "x:data");
        list.Add((int)Command.WriteResponse << 8 | (int)SingleReadResponse.Data,
                 "x:data");
        list.Add(
            (int)Command.ReadResponse << 8
            | (int)SingleReadResponse.DataAccessError,
            "x:data-access-error");
    }
 /// <summary>
 /// Get LN tags.
 /// </summary>
 /// <param name="type"></param>
 /// <param name="list"></param>
 internal static void GetLnTags(TranslatorOutputType type, SortedList<int, string> list)
 {
     GXDLMSTranslator.AddTag(list, Command.GetRequest, "GetRequest");
     list.Add((int)(Command.GetRequest) << 8 | (byte)GetCommandType.Normal, "GetRequestNormal");
     list.Add((int)(Command.GetRequest) << 8 | (byte)GetCommandType.NextDataBlock, "GetRequestForNextDataBlock");
     list.Add((int)(Command.GetRequest) << 8 | (byte)GetCommandType.WithList, "GetRequestWithList");
     GXDLMSTranslator.AddTag(list, Command.SetRequest, "SetRequest");
     list.Add((int)(Command.SetRequest) << 8 | (byte)SetRequestType.Normal, "SetRequestNormal");
     list.Add((int)(Command.SetRequest) << 8 | (byte)SetRequestType.FirstDataBlock, "SetRequestFirstDataBlock");
     list.Add((int)(Command.SetRequest) << 8 | (byte)SetRequestType.WithDataBlock, "SetRequestWithDataBlock");
     list.Add((int)(Command.SetRequest) << 8 | (byte)SetRequestType.WithList, "SetRequestWithList");
     GXDLMSTranslator.AddTag(list, Command.MethodRequest, "ActionRequest");
     list.Add((int)(Command.MethodRequest) << 8 | (byte)ActionRequestType.Normal, "ActionRequestNormal");
     list.Add((int)(Command.MethodRequest) << 8 | (byte)ActionRequestType.NextBlock, "ActionRequestForNextDataBlock");
     list.Add((int)(Command.MethodRequest) << 8 | (byte)ActionRequestType.WithList, "ActionRequestWithList");
     GXDLMSTranslator.AddTag(list, Command.MethodResponse, "ActionResponse");
     list.Add((int)(Command.MethodResponse) << 8 | (byte)ActionRequestType.Normal, "ActionResponseNormal");
     list.Add((int)(Command.MethodResponse) << 8 | (byte)ActionRequestType.WithFirstBlock, "ActionResponseWithFirstBlock");
     list.Add((int)(Command.MethodResponse) << 8 | (byte)ActionRequestType.WithList, "ActionResponseWithList");
     list.Add((int)Command.DataNotification, "DataNotification");
     GXDLMSTranslator.AddTag(list, Command.AccessRequest, "AccessRequest");
     list.Add((int)(Command.AccessRequest) << 8 | (byte)AccessServiceCommandType.Get, "AccessRequestGet");
     list.Add((int)(Command.AccessRequest) << 8 | (byte)AccessServiceCommandType.Set, "AccessRequestSet");
     list.Add((int)(Command.AccessRequest) << 8 | (byte)AccessServiceCommandType.Action, "AccessRequestAction");
     GXDLMSTranslator.AddTag(list, Command.AccessResponse, "AccessResponse");
     list.Add((int)(Command.AccessResponse) << 8 | (byte)AccessServiceCommandType.Get, "AccessResponseGet");
     list.Add((int)(Command.AccessResponse) << 8 | (byte)AccessServiceCommandType.Set, "AccessResponseSet");
     list.Add((int)(Command.AccessResponse) << 8 | (byte)AccessServiceCommandType.Action, "AccessResponseAction");
 }
 /// <summary>
 /// Get general tags.
 /// </summary>
 /// <param name="type"></param>
 /// <param name="list"></param>
 internal static void GetGeneralTags(TranslatorOutputType type, SortedList<int, string> list)
 {
     GXDLMSTranslator.AddTag(list, Command.Snrm, "Snrm");
     GXDLMSTranslator.AddTag(list, Command.Ua, "Ua");
     GXDLMSTranslator.AddTag(list, Command.Aarq, "x:aarq");
     GXDLMSTranslator.AddTag(list, Command.Aare, "x:aare");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.ApplicationContextName,
                             "x:application-context-name");
     GXDLMSTranslator.AddTag(list, Command.InitiateResponse,
                             "InitiateResponse");
     GXDLMSTranslator.AddTag(list, Command.InitiateRequest,
                             "x:user-information");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.NegotiatedQualityOfService,
                             "x:negotiated-quality-of-service");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.ProposedQualityOfService,
                             "x:proposed-quality-of-service");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.ProposedDlmsVersionNumber,
                             "x:proposed-dlms-version-number");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.ProposedMaxPduSize,
                             "x:client-max-receive-pdu-size");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.ProposedConformance,
                             "x:proposed-conformance");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.VaaName,
                             "VaaName");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.NegotiatedConformance,
                             "NegotiatedConformance");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.NegotiatedDlmsVersionNumber,
                             "NegotiatedDlmsVersionNumber");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.NegotiatedMaxPduSize,
                             "NegotiatedMaxPduSize");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ConformanceBit,
                             "ConformanceBit");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.SenderACSERequirements,
                             "x:sender-acse-requirements");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.ResponderACSERequirement,
                             "x:responder-acse-requirements");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.RespondingMechanismName,
                             "x:mechanism-name");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.CallingMechanismName,
                             "x:mechanism-name");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.CallingAuthentication,
                             "x:calling-authentication-value");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.RespondingAuthentication,
                             "x:responding-authentication-value");
     GXDLMSTranslator.AddTag(list, Command.ReleaseRequest,
                             "ReleaseRequest");
     GXDLMSTranslator.AddTag(list, Command.ReleaseResponse,
                             "ReleaseResponse");
     GXDLMSTranslator.AddTag(list, Command.DisconnectRequest, "Disc");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.AssociationResult,
                             "x:result");
     GXDLMSTranslator.AddTag(list,
                             TranslatorGeneralTags.ResultSourceDiagnostic,
                             "x:result-source-diagnostic");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.ACSEServiceUser,
                             "x:acse-service-user");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.CallingAPTitle,
                             "CallingAPTitle");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.RespondingAPTitle,
                             "RespondingAPTitle");
     GXDLMSTranslator.AddTag(list, TranslatorGeneralTags.CharString,
                             "x:charstring");
 }