Esempio n. 1
0
        }//listBalanceConfigurations()



        private static CswNbtObjClassBalanceConfiguration _findConfigurationWithName( CswNbtResources NbtResources, string Name )
        {
            CswNbtObjClassBalanceConfiguration Ret = null;

            CswNbtMetaDataObjectClass BalanceConfigurationOC = NbtResources.MetaData.getObjectClass( CswEnumNbtObjectClass.BalanceConfigurationClass );
            CswNbtMetaDataObjectClassProp ConfigNameOCP = BalanceConfigurationOC.getObjectClassProp( CswNbtObjClassBalanceConfiguration.PropertyName.Name );

            CswNbtView ExistingConfigsView = new CswNbtView( NbtResources );
            ExistingConfigsView.ViewName = "Balance Configurations";
            CswNbtViewRelationship ConfigNameRel = ExistingConfigsView.AddViewRelationship( BalanceConfigurationOC, false );
            ExistingConfigsView.AddViewPropertyAndFilter( ConfigNameRel, ConfigNameOCP,
                                                           Value: Name,
                                                           FilterMode: CswEnumNbtFilterMode.Equals );
            ICswNbtTree ExistingConfigsTree = NbtResources.Trees.getTreeFromView( ExistingConfigsView, false, true, true );


            if( ExistingConfigsTree.getChildNodeCount() > 0 )
            {
                //this configuration exists, grab a reference to it.
                ExistingConfigsTree.goToNthChild( 0 );
                Ret = ExistingConfigsTree.getCurrentNode();
            }

            return Ret;
        }
Esempio n. 2
0
        }//listConnectedBalances( ICswResources CswResources, CswNbtBalanceReturn Return, object Request )




        public static void listBalanceConfigurations( ICswResources CswResources, CswNbtBalanceReturn Return, object Request )
        {

            CswNbtResources NbtResources = (CswNbtResources) CswResources;
            Return.Data.ConfigurationList = new Collection<BalanceConfiguration>();



            CswNbtMetaDataObjectClass BalanceConfigurationOC = NbtResources.MetaData.getObjectClass( CswEnumNbtObjectClass.BalanceConfigurationClass );
            if( null != BalanceConfigurationOC )
            {

                CswNbtView ExistingConfigurationsView = BalanceConfigurationOC.CreateDefaultView( true );

                ICswNbtTree ConfigTree = NbtResources.Trees.getTreeFromView( ExistingConfigurationsView, true, false, false );
                int ConfigCount = ConfigTree.getChildNodeCount();
                if( ConfigCount > 0 )
                {
                    ConfigTree.goToRoot();
                    for( int i = 0; i < ConfigCount; i++ )
                    {
                        ConfigTree.goToNthChild( i );
                        CswNbtObjClassBalanceConfiguration Configuration = ConfigTree.getCurrentNode();

                        Return.Data.ConfigurationList.Add( new BalanceConfiguration
                        {
                            Name = Configuration.Name.Text,
                            RequestFormat = Configuration.RequestFormat.Text,
                            ResponseFormat = Configuration.ResponseFormat.Text,
                            BaudRate = (int) Configuration.BaudRate.Value,
                            ParityBit = Configuration.ParityBit.Text,
                            DataBits = (int) Configuration.DataBits.Value,
                            StopBits = Configuration.StopBits.Text,
                            Handshake = Configuration.Handshake.Text,

                        } );

                        ConfigTree.goToParentNode();

                    } //for ( int i = 0; i < BalanceCount; i++ )

                } //if( BalanceCount > 0 )

            } //if ( null != BalanceOC )


        }//listBalanceConfigurations()
Esempio n. 3
0
        public static void registerBalanceConfiguration( ICswResources CswResources, CswNbtBalanceReturn Return, BalanceConfiguration Request )
        {
            CswNbtResources NbtResources = (CswNbtResources) CswResources;

            CswNbtMetaDataObjectClass BalanceConfigurationOC = NbtResources.MetaData.getObjectClass( CswEnumNbtObjectClass.BalanceConfigurationClass );
            if( null != BalanceConfigurationOC )
            {
                Return.Data.ConfigurationList = new Collection<BalanceConfiguration>();

                CswNbtObjClassBalanceConfiguration BalanceConfiguration = _findConfigurationWithName( NbtResources, Request.Name );

                Action<CswNbtNode> AfterBalanceConfig = delegate( CswNbtNode NewNode )
                    {
                        CswNbtObjClassBalanceConfiguration thisBalanceConfig = NewNode;
                        thisBalanceConfig.Name.Text = Request.Name;
                        thisBalanceConfig.RequestFormat.Text = Request.RequestFormat;
                        thisBalanceConfig.ResponseFormat.Text = Request.ResponseFormat;
                        thisBalanceConfig.BaudRate.Value = Request.BaudRate;
                        thisBalanceConfig.ParityBit.Text = Request.ParityBit;
                        thisBalanceConfig.DataBits.Value = Request.DataBits;
                        thisBalanceConfig.StopBits.Text = Request.StopBits;
                        thisBalanceConfig.Handshake.Text = Request.Handshake;
                    };
                

                if( null == BalanceConfiguration )
                {
                    //there is no configuration with this name yet. Make a new one.
                    CswNbtMetaDataNodeType ConfigNT = BalanceConfigurationOC.FirstNodeType;
                    BalanceConfiguration = NbtResources.Nodes.makeNodeFromNodeTypeId( ConfigNT.NodeTypeId, AfterBalanceConfig );
                }
                else
                {
                    AfterBalanceConfig( BalanceConfiguration.Node );
                    BalanceConfiguration.postChanges( false );
                }

                Return.Data.ConfigurationList.Add( Request );

            }//if ( null != BalanceConfigurationOC )

        } // registerBalanceConfiguration()