public OperandSelectorMessage Create(Type targetOperandSelectorType, OperandSelectorMessageType messageType, string operand)
        {
            //TODO: Check that targetOperandSelectorType inherits from OperandSelector
            short operandSelectorId = networkOperator.Registers.GetId <OperandSelector>(targetOperandSelectorType);

            return(Create(operandSelectorId, messageType, operand));
        }
示例#2
0
        private void InformAboutCurrentStatus(OperandSelectorMessageType type)
        {
            string localMachineName = NetworkOperator.Registers.Get <OperandSelector>(OperandSelectorType.FullName).LocalMachineName;

            NetworkOperator.Registers.ForEach <ICommunicationInterface>(ci => ci.Send(OperandSelectorMessageFactory.Current.Create(OperandSelectorType, type, localMachineName)));
        }
        public OperandSelectorMessage Create(short operandSelectorId, OperandSelectorMessageType messageType, string operand)
        {
            char messageTypeChar = (char)messageType;

            return(new OperandSelectorMessage($"{operandSelectorId}{OperandSelectorMessage.CONTENT_DELIMITER}{messageTypeChar}{OperandSelectorMessage.CONTENT_DELIMITER}{operand}"));
        }
        public OperandSelectorMessage Create <OperandSelectorType>(OperandSelectorMessageType messageType, string operand) where OperandSelectorType : OperandSelector
        {
            short operandSelectorId = networkOperator.Registers.GetId <OperandSelector, OperandSelectorType>();

            return(Create(operandSelectorId, messageType, operand));
        }