Advertisement
Guest User

Untitled

a guest
Jan 12th, 2016
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.24 KB | None | 0 0
  1. unit cmis;
  2.  
  3. {$mode objfpc}{$H+}
  4.  
  5. interface
  6.  
  7. uses
  8. Classes, SysUtils, ValEdit, fphttpclient, RegexPr, DOM, XMLRead;
  9.  
  10.  
  11.  
  12. type
  13. CMISHelper = Class
  14. public
  15. constructor Create(URL: string);
  16. procedure Authenticate( username: string; password: string);
  17. function getChildren(path: string): TStringList;
  18. function getAuthToken(): string;
  19. private
  20. auth_token: string;
  21. alf_path: string;
  22. end;
  23.  
  24. implementation
  25.  
  26. constructor CMISHelper.Create(URL: string);
  27. begin
  28. alf_path := URL;
  29. end;
  30.  
  31. procedure CMISHelper.Authenticate(username: string; password: string);
  32. var
  33. HTTPClient: TFPHTTPClient;
  34. IPRegex: TRegExpr;
  35. RawData: string;
  36. Doc: TXMLDocument;
  37. Child: TDOMNode;
  38. b: TStringStream;
  39. composed_url: string;
  40.  
  41.  
  42. begin
  43. HTTPClient:=TFPHTTPClient.Create(nil);
  44.  
  45. composed_url := alf_path + '/service/api/login?u=' + username + '&pw=' + password;
  46.  
  47. RawData:=HTTPClient.Get(composed_url);
  48. b := TStringStream.Create(RawData);
  49. ReadXMLFile(Doc, b);
  50. Child := Doc.DocumentElement.FirstChild;
  51.  
  52. if assigned(Child)
  53. then
  54. begin
  55. auth_token := Child.TextContent;
  56. end
  57. else
  58. auth_token := '';
  59. end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement