USP_FENXTMERGETOKENS

Parameters

Parameter Parameter Type Mode Description
@ACCESSTOKEN nvarchar(2048) IN
@REFRESHTOKEN nvarchar(256) IN
@EXPIRESON datetime IN
@ENVIRONMENTID nvarchar(50) IN

Definition

Copy


            create procedure dbo.USP_FENXTMERGETOKENS
            (
                @ACCESSTOKEN nvarchar(2048),
                @REFRESHTOKEN nvarchar(256),
                @EXPIRESON datetime,
                @ENVIRONMENTID nvarchar(50)
            )
            as
                begin try
                    exec dbo.USP_GET_KEY_ACCESS;

                    merge into dbo.FENXTTOKEN
                    using (select
                            EncryptByKey(Key_GUID('sym_BBInfinity'), @ACCESSTOKEN) as AccessToken,
                            EncryptByKey(Key_GUID('sym_BBInfinity'), @REFRESHTOKEN) as RefreshToken,
                            @EXPIRESON as ExpiresOn,
                            @ENVIRONMENTID as EnvironmentID
                            ) as Source
                    on FENXTTOKEN.ENVIRONMENTID = Source.EnvironmentID
                    when matched then
                        update set
                                ACCESSTOKEN = Source.AccessToken,
                                REFRESHTOKEN = Source.RefreshToken,
                                EXPIRESON = Source.ExpiresOn,
                                LOCKEDON = null
                    when not matched then
                        insert (
                                ENVIRONMENTID,
                                ACCESSTOKEN,
                                REFRESHTOKEN,
                                EXPIRESON
                                )
                        values (
                                source.EnvironmentID,
                                source.AccessToken,
                                source.RefreshToken,
                                source.ExpiresOn);

                    close symmetric key sym_BBInfinity;
                end try

                begin catch
                     EXEC dbo.USP_RAISE_ERROR;

                    --Make sure we close the symmetric key

                    close symmetric key sym_BBInfinity; 
              end catch