/// /// JHybridOmniPlayerFactorySpec.cpp /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE. /// https://github.com/mrousavy/nitro /// Copyright © Marc Rousavy @ Margelo /// #include "JHybridOmniPlayerFactorySpec.hpp" // Forward declaration of `HybridOmniPlayerSpec` to properly resolve imports. namespace margelo::nitro::omni { class HybridOmniPlayerSpec; } // Forward declaration of `HybridOmniPlayerPropsSpec` to properly resolve imports. namespace margelo::nitro::omni { class HybridOmniPlayerPropsSpec; } #include #include "HybridOmniPlayerSpec.hpp" #include "JHybridOmniPlayerSpec.hpp" #include "HybridOmniPlayerPropsSpec.hpp" #include "JHybridOmniPlayerPropsSpec.hpp" namespace margelo::nitro::omni { std::shared_ptr JHybridOmniPlayerFactorySpec::JavaPart::getJHybridOmniPlayerFactorySpec() { auto hybridObject = JHybridObject::JavaPart::getJHybridObject(); auto castHybridObject = std::dynamic_pointer_cast(hybridObject); if (castHybridObject == nullptr) [[unlikely]] { throw std::runtime_error("Failed to downcast JHybridObject to JHybridOmniPlayerFactorySpec!"); } return castHybridObject; } jni::local_ref JHybridOmniPlayerFactorySpec::CxxPart::initHybrid(jni::alias_ref jThis) { return makeCxxInstance(jThis); } std::shared_ptr JHybridOmniPlayerFactorySpec::CxxPart::createHybridObject(const jni::local_ref& javaPart) { auto castJavaPart = jni::dynamic_ref_cast(javaPart); if (castJavaPart == nullptr) [[unlikely]] { throw std::runtime_error("Failed to cast JHybridObject::JavaPart to JHybridOmniPlayerFactorySpec::JavaPart!"); } return std::make_shared(castJavaPart); } void JHybridOmniPlayerFactorySpec::CxxPart::registerNatives() { registerHybrid({ makeNativeMethod("initHybrid", JHybridOmniPlayerFactorySpec::CxxPart::initHybrid), }); } // Properties // Methods std::shared_ptr JHybridOmniPlayerFactorySpec::createPlayer(const std::shared_ptr& props) { static const auto method = _javaPart->javaClassStatic()->getMethod(jni::alias_ref /* props */)>("createPlayer"); auto __result = method(_javaPart, std::dynamic_pointer_cast(props)->getJavaPart()); return __result->getJHybridOmniPlayerSpec(); } } // namespace margelo::nitro::omni