Beispiel #1
0
 internal void AddDefinition(DiscoverableServiceHandlingOperativeDefs.DiscoverableServiceDefinition definition)
 {
     this._DefinitionsList.Add(definition, null, null, null);
 }
        public void Button1_Click(System.Object sender, System.EventArgs e)
        {
            this.btnClear_Click(sender, e);
            try
            {
                this.Cursor = Cursors.WaitCursor;

                if (this.txtServiceNameToLookfor.Text.Length > 0)
                {
                    DiscoverableServiceDefinitionsContainer serviceDefinitionContainer = default(DiscoverableServiceDefinitionsContainer);
                    serviceDefinitionContainer = this._STXServiceClient.DiscoverServicesNumOfInstances(this.txtServiceNameToLookfor.Text, 2);
                    this.lstSErverParameters.Items.Clear();
                    DiscoverableServiceHandlingOperativeDefs.DiscoverableServiceDefinition def = default(DiscoverableServiceHandlingOperativeDefs.DiscoverableServiceDefinition);
                    IEnumerator enumm = serviceDefinitionContainer.GetEnumerator();
                    while (enumm.MoveNext())
                    {
                        def = (DiscoverableServiceHandlingOperativeDefs.DiscoverableServiceDefinition)enumm.Current;
                        this.lstSErverParameters.Items.Add(def.ServiceName);
                    }
                }
                else
                {
                    MessageBox.Show("No service Name specified");
                }
            }
            catch (DiscoverableServiceDefinitionHandlingSearchFailureException exx)
            {
                MessageBox.Show(System.Convert.ToString(exx.Message));
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                this.Cursor = Cursors.Default;
            }
        }
            public DiscoverableServiceHandlingOperativeDefs.DiscoverableServiceDefinition FindService(string ServiceNameToFind)
            {
                try
                {
                    BroadCasting.Data.BroadCastRepliesContainer replies = default(BroadCasting.Data.BroadCastRepliesContainer);
                    replies = this._DataBroadcastClient.BroadCastDataAndWaitOneFirstReply(DiscoverableServiceHandlingOperativeDefs.SERVICE_NAME_QUERY_BROADCAST_ID_NAME_STRING, DiscoverableServiceHandlingOperativeDefs.SERVICE_NAME, ServiceNameToFind, TIME_OUT_SECONDS);
                    if (replies.Count > 0)
                    {
                        //evaluates if the reply contains the reply from the service searched
                        if (replies.ContainsReplyIDName(DiscoverableServiceHandlingOperativeDefs.SERVICE_NAME_QUERY_REPLYIDNAME_STRING))
                        {
                            BroadCasting.Data.BroadCastReply STXSErviceReply = default(BroadCasting.Data.BroadCastReply);
                            STXSErviceReply = replies.Item(DiscoverableServiceHandlingOperativeDefs.SERVICE_NAME_QUERY_REPLYIDNAME_STRING);

                            //evaluates for the service parameters table attached with the data name specified
                            //by the constant SERVICE_PARAMETERS_TABLE
                            if (STXSErviceReply.DataName == DiscoverableServiceHandlingOperativeDefs.SERVICE_PARAMETERS_TABLE)
                            {
                                CustomHashTable paramsTable = (CustomHashTable)STXSErviceReply.Value;
                                DiscoverableServiceDefinitionParametersContainer serviceParams = new DiscoverableServiceDefinitionParametersContainer(paramsTable);
                                DiscoverableServiceHandlingOperativeDefs.DiscoverableServiceDefinition serviceDEfiniton = new DiscoverableServiceHandlingOperativeDefs.DiscoverableServiceDefinition();

                                DiscoverableServiceParameter param = default(DiscoverableServiceParameter);

                                //retrieves the service name from the parameters list
                                //and removes it from the parameters list
                                param = serviceParams.GetParameter(DiscoverableServiceHandlingOperativeDefs.SERVICE_NAME);
                                if (param == null)
                                {
                                    throw (new DiscoverableServiceDefinitionHandlingException(ServiceNameToFind, DiscoverableServiceHandlingOperativeDefs.SERVICE_NAME));
                                }
                                serviceDEfiniton.ServiceName = param.Value;
                                serviceParams.RemoveParameter(DiscoverableServiceHandlingOperativeDefs.SERVICE_NAME);

                                //retrieves the service id from the parameters table and removes it
                                param = serviceParams.GetParameter(DiscoverableServiceHandlingOperativeDefs.SERVICE_ID);
                                if (param == null)
                                {
                                    throw (new DiscoverableServiceDefinitionHandlingException(ServiceNameToFind, DiscoverableServiceHandlingOperativeDefs.SERVICE_ID));
                                }
                                serviceDEfiniton.ServiceIDString = param.Value;
                                serviceParams.RemoveParameter(DiscoverableServiceHandlingOperativeDefs.SERVICE_ID);

                                //retrieves the service operation mode
                                param = serviceParams.GetParameter(DiscoverableServiceHandlingOperativeDefs.SERVICE_OPERATION_MODE);
                                if (param == null)
                                {
                                    throw (new DiscoverableServiceDefinitionHandlingException(ServiceNameToFind, DiscoverableServiceHandlingOperativeDefs.SERVICE_OPERATION_MODE));
                                }
                                serviceDEfiniton.ServiceOperationMode = DiscoverableServiceHandlingOperativeDefs.GetServiceOperationModeFromString(param.Value);
                                serviceParams.RemoveParameter(DiscoverableServiceHandlingOperativeDefs.SERVICE_OPERATION_MODE);

                                serviceDEfiniton.ServiceParameters = serviceParams;
                                return(serviceDEfiniton);
                            }
                            else
                            {
                                throw (new DiscoverableServiceDefinitionHandlingSearchFailureException(ServiceNameToFind));
                            }
                        }
                        else
                        {
                            throw (new DiscoverableServiceDefinitionHandlingSearchFailureException(ServiceNameToFind));
                        }
                    }
                    else
                    {
                        throw (new DiscoverableServiceDefinitionHandlingSearchFailureException(ServiceNameToFind));
                    }
                }
                catch (Services.BroadCasting.DataBroadCastWaitReplyException)
                {
                    throw (new DiscoverableServiceDefinitionHandlingSearchFailureException(ServiceNameToFind));
                }
                catch (Exception)
                {
                    throw (new DiscoverableServiceDefinitionHandlingSearchFailureException(ServiceNameToFind));
                }
            }
        public void btnSearchService_Click(System.Object sender, System.EventArgs e)
        {
            this.btnClear_Click(sender, e);
            try
            {
                this.Cursor = Cursors.WaitCursor;

                if (this.txtServiceNameToLookfor.Text.Length > 0)
                {
                    DiscoverableServiceHandlingOperativeDefs.DiscoverableServiceDefinition serviceDefinition = default(DiscoverableServiceHandlingOperativeDefs.DiscoverableServiceDefinition);
                    serviceDefinition = this._STXServiceClient.FindService(this.txtServiceNameToLookfor.Text);
                    this.lstSErverParameters.Items.Clear();
                    IEnumerator enumm = serviceDefinition.ServiceParameters.GetEnumerator();
                    DiscoverableServiceParameter param = default(DiscoverableServiceParameter);
                    while (enumm.MoveNext())
                    {
                        param = (DiscoverableServiceParameter)enumm.Current;
                        this.lstSErverParameters.Items.Add(param);
                    }
                    this.txtServiceName.Text   = System.Convert.ToString(serviceDefinition.ServiceName);
                    this.txtOperationMode.Text = System.Convert.ToString(serviceDefinition.ServiceOperationMode.ToString());
                }
                else
                {
                    MessageBox.Show("No service Name specified");
                }
            }
            catch (DiscoverableServiceDefinitionHandlingSearchFailureException exx)
            {
                MessageBox.Show(System.Convert.ToString(exx.Message));
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                this.Cursor = Cursors.Default;
            }
        }
            public Services.DiscoverableServiceHandling.Data.DiscoverableServiceDefinitionsContainer DiscoverServicesNumOfInstances(string ServiceNameToFind, int numberOfInstances)
            {
                Services.DiscoverableServiceHandling.Data.DiscoverableServiceDefinitionsContainer servicesFoundContainer = new Services.DiscoverableServiceHandling.Data.DiscoverableServiceDefinitionsContainer();

                BroadCasting.Data.BroadCastRepliesContainer replies = default(BroadCasting.Data.BroadCastRepliesContainer);
                try
                {
                    replies = this._DataBroadcastClient.BroadCastDataAndWaitSpecifiedNumberOfReplies(DiscoverableServiceHandlingOperativeDefs.SERVICE_NAME_QUERY_BROADCAST_ID_NAME_STRING, DiscoverableServiceHandlingOperativeDefs.SERVICE_NAME, ServiceNameToFind, numberOfInstances);

                    IEnumerator    enumm = replies.GetEnumerator();
                    BroadCastReply reply = default(BroadCastReply);

                    while (enumm.MoveNext())
                    {
                        reply = (BroadCastReply)enumm.Current;

                        //evaluates if the reply contains the reply from the service searched
                        if (reply.ReplyIDName == DiscoverableServiceHandlingOperativeDefs.SERVICE_NAME_QUERY_REPLYIDNAME_STRING)
                        {
                            BroadCasting.Data.BroadCastReply STXSErviceReply = default(BroadCasting.Data.BroadCastReply);
                            STXSErviceReply = reply;

                            //evaluates for the service parameters table attached with the data name specified
                            //by the constant SERVICE_PARAMETERS_TABLE
                            if (STXSErviceReply.DataName == DiscoverableServiceHandlingOperativeDefs.SERVICE_PARAMETERS_TABLE)
                            {
                                CustomHashTable paramsTable = (CustomHashTable)STXSErviceReply.Value;
                                DiscoverableServiceDefinitionParametersContainer serviceParams = new DiscoverableServiceDefinitionParametersContainer(paramsTable);
                                DiscoverableServiceHandlingOperativeDefs.DiscoverableServiceDefinition serviceDEfiniton = new DiscoverableServiceHandlingOperativeDefs.DiscoverableServiceDefinition();

                                DiscoverableServiceParameter param = default(DiscoverableServiceParameter);

                                //retrieves the service name from the parameters list
                                //and removes it from the parameters list
                                param = serviceParams.GetParameter(DiscoverableServiceHandlingOperativeDefs.SERVICE_NAME);
                                if (param == null)
                                {
                                    throw (new DiscoverableServiceDefinitionHandlingException(ServiceNameToFind, DiscoverableServiceHandlingOperativeDefs.SERVICE_NAME));
                                }
                                serviceDEfiniton.ServiceName = param.Value;
                                serviceParams.RemoveParameter(DiscoverableServiceHandlingOperativeDefs.SERVICE_NAME);

                                //retrieves the service id from the parameters table and removes it
                                param = serviceParams.GetParameter(DiscoverableServiceHandlingOperativeDefs.SERVICE_ID);
                                if (param == null)
                                {
                                    throw (new DiscoverableServiceDefinitionHandlingException(ServiceNameToFind, DiscoverableServiceHandlingOperativeDefs.SERVICE_ID));
                                }
                                serviceDEfiniton.ServiceIDString = param.Value;
                                serviceParams.RemoveParameter(DiscoverableServiceHandlingOperativeDefs.SERVICE_ID);

                                //retrieves the service operation mode
                                param = serviceParams.GetParameter(DiscoverableServiceHandlingOperativeDefs.SERVICE_OPERATION_MODE);
                                if (param == null)
                                {
                                    throw (new DiscoverableServiceDefinitionHandlingException(ServiceNameToFind, DiscoverableServiceHandlingOperativeDefs.SERVICE_OPERATION_MODE));
                                }
                                serviceDEfiniton.ServiceOperationMode = DiscoverableServiceHandlingOperativeDefs.GetServiceOperationModeFromString(param.Value);
                                serviceParams.RemoveParameter(DiscoverableServiceHandlingOperativeDefs.SERVICE_OPERATION_MODE);

                                serviceDEfiniton.ServiceParameters = serviceParams;

                                servicesFoundContainer.AddDefinition(serviceDEfiniton);
                            }
                        }
                    }
                    return(servicesFoundContainer);
                }
                catch (Exception)
                {
                    return(servicesFoundContainer);
                }
            }