protected override void ProcessRecord()
        {
            if (ValidateInput())
            {
                if (isInitialized())
                {
                    try
                    {
                        String[] vs_list = GetiControl().LocalLBVirtualServer.get_list();
                        iControl.CommonEnabledState[] enabled_states = GetiControl().LocalLBVirtualServer.get_enabled_state(vs_list);

                        // Build a list of indexes
                        ArrayList index_list = new ArrayList();

                        for (int i = 0; i < vs_list.Length; i++)
                        {
                            if (matchString(vs_list[i], _name))
                            {
                                index_list.Add(i);
                            }
                        }

                        if (index_list.Count > 0)
                        {
                            String[] target_vs_list = new String[index_list.Count];
                            iControl.CommonEnabledState[] target_enabled_states = new iControl.CommonEnabledState[index_list.Count];
                            for (int j = 0; j < index_list.Count; j++)
                            {
                                int index = Convert.ToInt32(index_list[j]);
                                target_vs_list[j]        = vs_list[index];
                                target_enabled_states[j] = iControl.CommonEnabledState.STATE_ENABLED;
                            }

                            GetiControl().LocalLBVirtualServer.set_enabled_state(target_vs_list, target_enabled_states);

                            LTMStatusItem si = new LTMStatusItem();
                            si.Name         = VirtualServer;
                            si.Availability = iControl.LocalLBAvailabilityStatus.AVAILABILITY_STATUS_NONE;
                            si.Enabled      = iControl.LocalLBEnabledStatus.ENABLED_STATUS_ENABLED;
                            si.Status       = "";

                            WriteObject(si);
                        }
                    }
                    catch (Exception ex)
                    {
                        handleException(ex);
                    }
                }
                else
                {
                    handleNotInitialized();
                }
            }
        }
Exemple #2
0
        protected override void ProcessRecord()
        {
            if (isInitialized())
            {
                try
                {
                    String[] vs_list = GetiControl().LocalLBVirtualServer.get_list();
                    iControl.LocalLBObjectStatus[] object_statuses = GetiControl().LocalLBVirtualServer.get_object_status(vs_list);

                    for (int i = 0; i < vs_list.Length; i++)
                    {
                        bool bMatch = true;
                        if (null != _name)
                        {
                            bMatch = (matchString(vs_list[i], _name));
                        }

                        if (bMatch)
                        {
                            LTMStatusItem si = new LTMStatusItem();
                            si.Name         = vs_list[i];
                            si.Availability = object_statuses[i].availability_status;
                            si.Enabled      = object_statuses[i].enabled_status;
                            si.Status       = object_statuses[i].status_description;

                            WriteObject(si);
                        }
                    }
                }
                catch (Exception ex)
                {
                    ErrorRecord er = new ErrorRecord(ex, "2", ErrorCategory.OpenError, "error");
                    WriteError(er);
                }
            }
            else
            {
                handleNotInitialized();
            }
        }