Bouk250 opened a new pull request, #395: URL: https://github.com/apache/pulsar-client-node/pull/395
<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <!-- ### Contribution Checklist - PR title format should be *[type][component] summary*. For details, see *[Guideline - Pulsar PR Naming Convention](https://docs.google.com/document/d/1d8Pw6ZbWk-_pCKdOmdvx9rnhPiyuxwq60_TrD68d7BA/edit#heading=h.trs9rsex3xom)*. - Fill out the template below to describe the changes contributed by the pull request. That will give reviewers the context they need to do the review. - Each pull request should address only one issue, not mix up code from multiple issues. - Each commit in the pull request has a meaningful commit message - Once all items of the checklist are addressed, remove the above text and this checklist, leaving only the filled out template below. --> <!-- or this PR is one task of an issue --> Master Issue: #<xyz> ### Motivation <!-- Explain here the context, and why you're making that change. What is the problem you're trying to solve. --> The `AuthenticationToken` only supports static token, limiting us to use token without expiration. So the integration with existing authentication returns tokens with expiration becomes not possible. ### Modifications <!-- Describe the modifications you've done. --> Added the necessary cpp code for support token supplier as a js callback returns string tokens. #### Modified file: - `index.d.ts` - Update constructor signature for support TS. - `src/Authentication.cc` - Implement the logic of communication between js callback and cpp token supplier. #### New file -`src/TokenSupplier.h` - Needed for the logic implementation. -`examples/consummer_token.js` - Example ### Verifying this change - [ ] Make sure that the change passes the CI checks. This change added tests and can be verified as follows: - Added tow new test in the e2e file to cover token supplier (sync/async) ### Documentation <!-- DO NOT REMOVE THIS SECTION. CHECK THE PROPER BOX ONLY. --> - [ ] `doc-required` (Your PR needs to update docs and you will update later) - [X] `doc-not-needed` The changes is internally only, the feature is already documented. - [ ] `doc` (Your PR contains doc changes) - [ ] `doc-complete` (Docs have been already added) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@pulsar.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org