protected override void ProcessRecord() { try { // 1. Validating the input WriteDebug("Validating"); var activityFilter = EnumConverter.ToActivityFilter <EDT25ServiceReference.ActivityFilter>(ActivityFilter); IshFields metadataFilter = new IshFields(MetadataFilter); // add more fields required for pipe operations IshFields requestedMetadata = IshSession.IshTypeFieldSetup.ToIshRequestedMetadataFields(IshSession.DefaultRequestedMetadata, ISHType, new IshFields(RequestedMetadata), Enumerations.ActionMode.Find); // 2. Finding WriteDebug($"Finding ActivityFilter[{activityFilter}] MetadataFilter.length[{metadataFilter.ToXml().Length}] RequestedMetadata.length[{requestedMetadata.ToXml().Length}]"); string xmlIshObjects = IshSession.EDT25.Find( activityFilter, metadataFilter.ToXml(), requestedMetadata.ToXml()); WriteVerbose("xmlIshObjects.length[" + xmlIshObjects.Length + "]"); // 3. Write it var returnedObjects = new IshObjects(ISHType, xmlIshObjects).ObjectList; WriteVerbose("returned object count[" + returnedObjects.Count + "]"); WriteObject(IshSession, ISHType, returnedObjects.ConvertAll(x => (IshBaseObject)x), true); } catch (TrisoftAutomationException trisoftAutomationException) { ThrowTerminatingError(new ErrorRecord(trisoftAutomationException, base.GetType().Name, ErrorCategory.InvalidOperation, null)); } catch (Exception exception) { ThrowTerminatingError(new ErrorRecord(exception, base.GetType().Name, ErrorCategory.NotSpecified, null)); } }
protected override void ProcessRecord() { try { IshFields metadataFilter = new IshFields(MetadataFilter); IshFields requestedMetadata = IshSession.IshTypeFieldSetup.ToIshRequestedMetadataFields(IshSession.DefaultRequestedMetadata, ISHType, new IshFields(RequestedMetadata), Enumerations.ActionMode.Find); WriteDebug($"Finding MetadataFilter.length[{metadataFilter.ToXml().Length}] RequestedMetadata.length[{requestedMetadata.ToXml().Length}]"); string xmlIshObjects = IshSession.Baseline25.GetList( metadataFilter.ToXml(), requestedMetadata.ToXml()); var returnedObjects = new IshObjects(ISHType, xmlIshObjects).ObjectList; WriteVerbose("returned object count[" + returnedObjects.Count + "]"); WriteObject(IshSession, ISHType, returnedObjects.ConvertAll(x => (IshBaseObject)x), true); } catch (TrisoftAutomationException trisoftAutomationException) { ThrowTerminatingError(new ErrorRecord(trisoftAutomationException, base.GetType().Name, ErrorCategory.InvalidOperation, null)); } catch (Exception exception) { ThrowTerminatingError(new ErrorRecord(exception, base.GetType().Name, ErrorCategory.NotSpecified, null)); } }