Use As_Header in Access_Token procedure.
1 files changed, 7 insertions(+), 32 deletions(-)

M src/oauth-easy.adb
M src/oauth-easy.adb +7 -32
@@ 233,7 233,7 @@ package body OAuth.Easy is
 
       Temp_Token : String := To_String (Context.Token);
       Temp_Secret : String := To_String (Context.Token_Secret);
-      Params : OAuth.Parameter_List.List;
+      Params : OAuth.Parameter_List.List := OAuth.Parameter_List.Empty_List;
       Digest_Val : SHA.Digest;
       Base_Str : Unbounded_String;
       Ctx : HMAC_SHA.HMAC_Context;

          
@@ 242,44 242,19 @@ package body OAuth.Easy is
       Result : Charbuf.Char_Buffer;
       R_Code : Long_Integer;
    begin
-      Params := OAuth.Create_Parameter_List
-        (Consumer_Key => To_String (Context.Key),
-         Token        => Temp_Token,
-         Signature_Method => "HMAC-SHA1",
-         Timestamp    => OAuth.Timestamp,
-         Nonce        => OAuth.Nonce
-           (Natural'Image (Context.Request_Count),
-            OAuth.Timestamp,
-            To_String (Context.Key) & URL),
-         Version      => "1.0");
       OAuth.Parameter_List.Append (Params, (Key => +"oauth_verifier",
                                             Value => +Verifier));
       OAuth.Parameter_Sorting.Sort (Params);
-      Base_Str := +(OAuth.Create_Base_String (Method, URL, Params));
-      Put_Line ("Base string: " & To_String (Base_Str));
-
-      HMAC_SHA.Initialize
-        (Key     => To_String (Context.Secret) & "&" & Temp_Secret,
-         Context => Ctx);
-      HMAC_SHA.Add (Message => To_String (Base_Str),
-                    Context => Ctx);
-      HMAC_SHA.Finalize (Result => Digest_Val,
-                         Context => Ctx);
-      Sig := +(String (SHA.Strings.B64_From_SHA (Digest_Val)));
-      OAuth.Parameter_List.Append (Params, (Key => +"oauth_signature",
-                                            Value => Sig));
-      OAuth.Parameter_Sorting.Sort (Params);
-      OAuth.Parameter_List.Prepend (Params, (Key => +"realm",
-                                            Value => +""));
-      H := +(OAuth.Params_To_Header (Params));
-      Put_Line ("Header: " & To_String (H));
+      As_Header (Context, URL, Method, Params, H);
+      
+      -- Put_Line ("Header: " & To_String (H));
       HTTP.Get_Page
         (URL => URL,
          Header_Key => "Authorization",
          Header_Value => To_String (H),
          Contents => Result,
          Response_Code => R_Code);
-      Put_Line ("Result: " & To_String (Result));
+      -- Put_Line ("Result: " & To_String (Result));
       Parse_Access_Token
         (To_String (Result), Context.Token, Context.Token_Secret,
          User_Id, Name);

          
@@ 309,12 284,12 @@ package body OAuth.Easy is
            (Natural'Image (Context.Request_Count),
             OAuth.Timestamp,
             To_String (Context.Key) & URL),
-         Version      => "1.0");
+         Version      => "1.0a");
       OAuth.Parameter_Sorting.Sort (OAuth_Params);
       OAuth.Parameter_Sorting.Sort (Params);
       OAuth.Parameter_Sorting.Merge (Target => Params, Source => OAuth_Params);
       Base_Str := +(OAuth.Create_Base_String (Method, URL, Params));
-      Put_Line ("Base string: " & To_String (Base_Str));
+      
       HMAC_SHA.Initialize
         (Key     => To_String (Context.Secret) & "&" & Temp_Secret,
          Context => Ctx);