internal static DataSetConfiguration Create(NodeDescriptor descriptor)
 {
     if (descriptor == null)
     throw new ArgumentNullException(nameof(descriptor));
       if (descriptor.NodeIdentifier == null || descriptor.NodeIdentifier.IsEmpty)
     throw new ArgumentNullException(nameof(descriptor.NodeIdentifier));
       NodeDescriptor _newRoot = new NodeDescriptor()
       {
     BindingDescription = descriptor.BindingDescription,
     DataType = descriptor.DataType,
     InstanceDeclaration = descriptor.InstanceDeclaration,
     NodeClass = descriptor.NodeClass,
     NodeIdentifier = descriptor.NodeIdentifier
       };
       DataSetConfiguration _new = new DataSetConfiguration()
       {
     AssociationName = descriptor.NodeIdentifier.ToString(),
     AssociationRole = AssociationRole.Producer,
     DataSet = new FieldMetaData[0],
     DataSymbolicName = descriptor.NodeIdentifier.ToString(),
     ExtensionData = null,
     Id = System.Guid.NewGuid(),
     RepositoryGroup = "[RepositoryGroup]",
     Root = _newRoot,
       };
       return _new;
 }
Example #2
0
        internal static DataSetConfiguration Create(NodeDescriptor descriptor)
        {
            if (descriptor == null)
            {
                throw new ArgumentNullException(nameof(descriptor));
            }
            if (descriptor.NodeIdentifier == null || descriptor.NodeIdentifier.IsEmpty)
            {
                throw new ArgumentNullException(nameof(descriptor.NodeIdentifier));
            }
            NodeDescriptor _newRoot = new NodeDescriptor()
            {
                BindingDescription  = descriptor.BindingDescription,
                DataType            = descriptor.DataType,
                InstanceDeclaration = descriptor.InstanceDeclaration,
                NodeClass           = descriptor.NodeClass,
                NodeIdentifier      = descriptor.NodeIdentifier
            };
            DataSetConfiguration _new = new DataSetConfiguration()
            {
                AssociationName  = descriptor.NodeIdentifier.ToString(),
                AssociationRole  = AssociationRole.Producer,
                DataSet          = new FieldMetaData[0],
                DataSymbolicName = descriptor.NodeIdentifier.ToString(),
                ExtensionData    = null,
                Id = System.Guid.NewGuid(),
                RepositoryGroup = "[RepositoryGroup]",
                Root            = _newRoot,
            };

            return(_new);
        }
 public InstanceConfiguration(DataSetConfiguration dataSet, ObservableCollection<MessageHandlerConfiguration> availableHandlers, TraceEvent trace, Action onModification)
 {
     AvailableMessageHandlers = availableHandlers;
     AssociatedMessageHandlers = new ObservableCollection<MessageHandlerConfiguration>(availableHandlers.Where<MessageHandlerConfiguration>(x => x.Associated(dataSet.AssociationName)).ToArray<MessageHandlerConfiguration>());
     DataSetConfiguration = dataSet;
     PropertyChanged += (x, y) => onModification();
 }
Example #4
0
        /// <summary>
        /// Gets the instance configuration - collection of data sets represented as the <see cref="DataSetConfiguration"/>.
        /// </summary>
        /// <param name="descriptor">The descriptor.</param>
        /// <returns>IEnumerable&lt;IInstanceConfiguration&gt;.</returns>
        public DataSetConfiguration GetInstanceConfiguration(NodeDescriptor descriptor)
        {
            DataSetConfiguration _node = DataSetsList.Where <DataSetConfiguration>(x => x.Root.CreateWrapper().CompareTo(descriptor) == 0).FirstOrDefault <DataSetConfiguration>();

            if (_node == null)
            {
                _node = DataSetConfiguration.Create(descriptor);
            }
            return(_node);
        }
 private void TestAssociations(DataSetConfiguration[] associationConfiguration)
 {
     foreach (DataSetConfiguration _ac in associationConfiguration)
       {
     Assert.IsNotNull(_ac.DataSet);
     Assert.IsFalse(String.IsNullOrEmpty(_ac.AssociationName));
     Assert.IsFalse(String.IsNullOrEmpty(_ac.DataSymbolicName));
     Assert.IsFalse(String.IsNullOrEmpty(_ac.InformationModelURI));
     TestDataSets(_ac);
       }
 }
 private void TestConfiguration(DataSetConfiguration[] associationConfiguration)
 {
     foreach (DataSetConfiguration _acx in associationConfiguration)
       {
     AssociationConfigurationDictionary.Add(_acx.AssociationName, _acx);
     Uri _nu = new Uri(_acx.InformationModelURI);
     Assert.IsFalse(String.IsNullOrEmpty(_acx.DataSymbolicName));
     TestDataSet(_acx);
     AssociationConfigurationGuidDictionary.Add(_acx.Id, _acx);
       }
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="ProducerAssociation"/> class.
 /// </summary>
 /// <param name="data">The semantic data description.</param>
 /// <param name="aliasName">Name of the alias - .</param>
 /// <param name="dataSet">The data set configuration.</param>
 /// <param name="bindingFactory">The binding factory.</param>
 /// <param name="encodingFactory">The encoding factory.</param>
 internal ProducerAssociation(ISemanticData data, string aliasName, DataSetConfiguration dataSet, IBindingFactory bindingFactory, IEncodingFactory encodingFactory)
     : base(data, dataSet.AssociationName)
 {
     m_ConfigurationVersion = dataSet.ConfigurationVersion;
       m_DataSetBindings =
     dataSet.DataSet.Select<FieldMetaData, IProducerBinding>
     ((_fieldMetadata) =>
     {
       IProducerBinding _ret = _fieldMetadata.GetProducerBinding4DataMember(dataSet.RepositoryGroup, bindingFactory, encodingFactory);
       _ret.PropertyChanged += ProducerBinding_PropertyChanged;
       return _ret;
     }).ToArray<IProducerBinding>();
       m_Timer = new Timer(1000) { AutoReset = true };
       m_Timer.Elapsed += M_Timer_Elapsed;
       m_Timer.Start();
 }
 private void TestDataSets(DataSetConfiguration dataSetConfiguration)
 {
     Assert.IsNotNull(dataSetConfiguration.DataSet);
       TestMembers(dataSetConfiguration.DataSet);
 }
 public void AfterCreationStateTest()
 {
     DataSetConfiguration _dataSet = new DataSetConfiguration();
       Assert.IsTrue(String.IsNullOrEmpty(_dataSet.Guid));
       Assert.AreEqual<Guid>(Guid.Empty, _dataSet.Id);
 }
 public IInstanceConfiguration GetIInstanceConfiguration(DataSetConfiguration dataSet, ObservableCollection<MessageHandlerConfiguration> availableHandlers, TraceEvent trace, Action onModification)
 {
     return new InstanceConfiguration(dataSet, availableHandlers, trace, onModification);
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="ConsumerAssociation" /> class.
 /// </summary>
 /// <param name="data">The data.</param>
 /// <param name="dataSet">The members.</param>
 /// <param name="bindingFactory">The binding factory.</param>
 /// <param name="encodingFactory">The encoding factory.</param>
 internal ConsumerAssociation(ISemanticData data, DataSetConfiguration dataSet, IBindingFactory bindingFactory, IEncodingFactory encodingFactory)
     : base(data, dataSet.AssociationName)
 {
     m_DataSetBindings = dataSet.DataSet.Select<FieldMetaData, IConsumerBinding>(x => x.GetConsumerBinding4DataMember(dataSet.RepositoryGroup, bindingFactory, encodingFactory)).ToArray<IConsumerBinding>();
 }
 private void TestDataSet(DataSetConfiguration dataSetConfiguration)
 {
     RepositoryGroupDictionary.Add(dataSetConfiguration.RepositoryGroup, dataSetConfiguration);
       TestConfiguration(dataSetConfiguration.DataSet);
 }