public PSTroubleshootResult GetTroubleshooting(string resourceGroupName, string name, MNM.QueryTroubleshootingParameters parameters)
        {
            MNM.TroubleshootingResult troubleshoot = this.NetworkWatcherClient.GetTroubleshootingResult(resourceGroupName, name, parameters);

            PSTroubleshootResult psTroubleshoot = Mapper.Map <PSTroubleshootResult>(troubleshoot);

            return(psTroubleshoot);
        }
        public PSTroubleshootResult GetTroubleshooting(string resourceGroupName, string name, MNM.TroubleshootingParameters parameters, string expandResource = null)
        {
            MNM.TroubleshootingResult troubleshoot = this.NetworkWatcherClient.GetTroubleshooting(resourceGroupName, name, parameters);

            PSTroubleshootResult psTroubleshoot = NetworkResourceManagerProfile.Mapper.Map <PSTroubleshootResult>(troubleshoot);

            return(psTroubleshoot);
        }
        public override void Execute()
        {
            base.Execute();
            MNM.QueryTroubleshootingParameters parameters = new MNM.QueryTroubleshootingParameters();
            parameters.TargetResourceId = this.TargetResourceId;

            PSTroubleshootResult troubleshoot = new PSTroubleshootResult();

            if (ParameterSetName.Contains("SetByResource"))
            {
                troubleshoot = GetTroubleshooting(this.NetworkWatcher.ResourceGroupName, this.NetworkWatcher.Name, parameters);
            }
            else
            {
                troubleshoot = GetTroubleshooting(this.ResourceGroupName, this.NetworkWatcherName, parameters);
            }
            WriteObject(troubleshoot);
        }