MyUserPrompter-JNI.h 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. /*
  2. *
  3. * Copyright (c) 2022 Project CHIP Authors
  4. *
  5. * Licensed under the Apache License, Version 2.0 (the "License");
  6. * you may not use this file except in compliance with the License.
  7. * You may obtain a copy of the License at
  8. *
  9. * http://www.apache.org/licenses/LICENSE-2.0
  10. *
  11. * Unless required by applicable law or agreed to in writing, software
  12. * distributed under the License is distributed on an "AS IS" BASIS,
  13. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. * See the License for the specific language governing permissions and
  15. * limitations under the License.
  16. */
  17. #pragma once
  18. #include "CommissionerMain.h"
  19. #include "lib/support/logging/CHIPLogging.h"
  20. #include <jni.h>
  21. class JNIMyUserPrompter : public UserPrompter
  22. {
  23. public:
  24. JNIMyUserPrompter(jobject prompter);
  25. void PromptForCommissionOKPermission(uint16_t vendorId, uint16_t productId, const char * commissioneeName) override;
  26. void PromptForCommissionPincode(uint16_t vendorId, uint16_t productId, const char * commissioneeName) override;
  27. void PromptCommissioningSucceeded(uint16_t vendorId, uint16_t productId, const char * commissioneeName) override;
  28. void PromptCommissioningFailed(const char * commissioneeName, CHIP_ERROR error) override;
  29. private:
  30. jobject mJNIMyUserPrompterObject = nullptr;
  31. jmethodID mPromptForCommissionOKPermissionMethod = nullptr;
  32. jmethodID mPromptForCommissionPincodeMethod = nullptr;
  33. jmethodID mPromptCommissioningSucceededMethod = nullptr;
  34. jmethodID mPromptCommissioningFailedMethod = nullptr;
  35. };