PageRenderTime 46ms CodeModel.GetById 14ms RepoModel.GetById 0ms app.codeStats 0ms

/Source/RemoveFIMResource.cs

#
C# | 40 lines | 35 code | 5 blank | 0 comment | 1 complexity | 67b8a073bfd61b78c88e3b43ab930822 MD5 | raw file
  1. using System;
  2. using System.Management.Automation;
  3. using Microsoft.ResourceManagement.ObjectModel;
  4. namespace Quest.FIMPowerShellSnapin
  5. {
  6. [Cmdlet(VerbsCommon.Remove, Constants.Nouns.FIMResource, SupportsShouldProcess = true)]
  7. public class RemoveFIMResource : PSCmdlet
  8. {
  9. private String _objectID;
  10. private FIMPSSession _session;
  11. [Parameter(Mandatory = true, Position = 0, ValueFromPipeline = true, ValueFromPipelineByPropertyName = true)]
  12. [ValidateNotNullOrEmpty]
  13. public String ObjectID
  14. {
  15. get { return _objectID; }
  16. set { _objectID = value; }
  17. }
  18. [Parameter(Mandatory = true, ValueFromPipeline = true, ValueFromPipelineByPropertyName = true)]
  19. [ValidateNotNullOrEmpty]
  20. public FIMPSSession Session
  21. {
  22. get { return _session; }
  23. set { _session = value; }
  24. }
  25. protected override void ProcessRecord()
  26. {
  27. bool shouldProcess = ShouldProcess(Constants.Messages.VerboseRemove, Constants.Messages.ConfirmRemove, _objectID);
  28. if (shouldProcess)
  29. {
  30. RmReference id = new RmReference(_objectID);
  31. _session.Client.Delete(id); //!!! should we do anything with the return value?
  32. }
  33. }
  34. }
  35. }