//export Java_io_v_impl_google_lib_discovery_GlobalDiscovery_nativeNewDiscovery func Java_io_v_impl_google_lib_discovery_GlobalDiscovery_nativeNewDiscovery(jenv *C.JNIEnv, jRuntime C.jclass, jContext C.jobject, jPath C.jstring, jMountTTL, jScanInterval C.jobject) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) ctx, _, err := jcontext.GoContext(env, jutil.Object(uintptr(unsafe.Pointer(jContext)))) if err != nil { jutil.JThrowV(env, err) return nil } path := jutil.GoString(env, jutil.Object(uintptr(unsafe.Pointer(jPath)))) mountTTL, err := jutil.GoDuration(env, jutil.Object(uintptr(unsafe.Pointer(jMountTTL)))) if err != nil { jutil.JThrowV(env, err) return nil } scanInterval, err := jutil.GoDuration(env, jutil.Object(uintptr(unsafe.Pointer(jScanInterval)))) if err != nil { jutil.JThrowV(env, err) return nil } discovery, err := gdiscovery.NewWithTTL(ctx, path, mountTTL, scanInterval) if err != nil { jutil.JThrowV(env, err) return nil } jDiscovery, err := JavaDiscovery(env, discovery) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jDiscovery)) }
//export Java_io_v_v23_security_VPrincipalImpl_nativeCreatePersistentForSigner func Java_io_v_v23_security_VPrincipalImpl_nativeCreatePersistentForSigner(jenv *C.JNIEnv, jclass C.jclass, jSigner C.jobject, jDir C.jstring) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) signerObj := jutil.Object(uintptr(unsafe.Pointer(jSigner))) signer, err := GoSigner(env, signerObj) if err != nil { jutil.JThrowV(env, err) return nil } dir := jutil.GoString(env, jutil.Object(uintptr(unsafe.Pointer(jDir)))) stateSerializer, err := vsecurity.NewPrincipalStateSerializer(dir) if err != nil { jutil.JThrowV(env, err) return nil } principal, err := vsecurity.NewPrincipalFromSigner(signer, stateSerializer) if err != nil { jutil.JThrowV(env, err) return nil } ref := jutil.GoNewRef(&principal) // Un-refed when the Java VPrincipalImpl is finalized. jPrincipal, err := jutil.NewObject(env, jVPrincipalImplClass, []jutil.Sign{jutil.LongSign, signerSign, blessingStoreSign, blessingRootsSign}, int64(ref), signerObj, jutil.NullObject, jutil.NullObject) if err != nil { jutil.GoDecRef(ref) jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jPrincipal)) }
//export Java_io_v_v23_security_VPrincipalImpl_nativeBless func Java_io_v_v23_security_VPrincipalImpl_nativeBless(jenv *C.JNIEnv, jVPrincipalImpl C.jobject, goRef C.jlong, jKey C.jobject, jWith C.jobject, jExtension C.jstring, jCaveat C.jobject, jAdditionalCaveats C.jobjectArray) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) key, err := GoPublicKey(env, jutil.Object(uintptr(unsafe.Pointer(jKey)))) if err != nil { jutil.JThrowV(env, err) return nil } with, err := GoBlessings(env, jutil.Object(uintptr(unsafe.Pointer(jWith)))) if err != nil { jutil.JThrowV(env, err) return nil } extension := jutil.GoString(env, jutil.Object(uintptr(unsafe.Pointer(jExtension)))) caveat, err := GoCaveat(env, jutil.Object(uintptr(unsafe.Pointer(jCaveat)))) if err != nil { jutil.JThrowV(env, err) return nil } additionalCaveats, err := GoCaveats(env, jutil.Object(uintptr(unsafe.Pointer(jAdditionalCaveats)))) if err != nil { jutil.JThrowV(env, err) return nil } blessings, err := (*(*security.Principal)(jutil.GoRefValue(jutil.Ref(goRef)))).Bless(key, with, extension, caveat, additionalCaveats...) if err != nil { jutil.JThrowV(env, err) return nil } jBlessings, err := JavaBlessings(env, blessings) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jBlessings)) }
//export Java_io_v_v23_security_access_PermissionsAuthorizer_nativeCreate func Java_io_v_v23_security_access_PermissionsAuthorizer_nativeCreate(jenv *C.JNIEnv, jPermissionsAuthorizerClass C.jclass, jPermissions C.jobject, jTagType C.jobject) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) perms, err := GoPermissions(env, jutil.Object(uintptr(unsafe.Pointer(jPermissions)))) if err != nil { jutil.JThrowV(env, err) return nil } tagType, err := jutil.GoVdlType(env, jutil.Object(uintptr(unsafe.Pointer(jTagType)))) if err != nil { jutil.JThrowV(env, err) return nil } authorizer, err := access.PermissionsAuthorizer(perms, tagType) if err != nil { jutil.JThrowV(env, err) return nil } ref := jutil.GoNewRef(&authorizer) // Un-refed when the Java PermissionsAuthorizer is finalized jAuthorizer, err := jutil.NewObject(env, jutil.Class(uintptr(unsafe.Pointer(jPermissionsAuthorizerClass))), []jutil.Sign{jutil.LongSign}, int64(ref)) if err != nil { jutil.GoDecRef(ref) jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jAuthorizer)) }
func NewPlayer(sampleRate, channelNum, bytesPerSample int) (*Player, error) { p := &Player{ sampleRate: sampleRate, channelNum: channelNum, bytesPerSample: bytesPerSample, buffer: []byte{}, chErr: make(chan error), chBuffer: make(chan []byte, 8), } if err := jni.RunOnJVM(func(vm, env, ctx uintptr) error { audioTrack := C.jobject(nil) bufferSize := C.int(0) if msg := C.initAudioTrack(C.uintptr_t(vm), C.uintptr_t(env), C.int(sampleRate), C.int(channelNum), C.int(bytesPerSample), &audioTrack, &bufferSize); msg != nil { return errors.New("driver: " + C.GoString(msg)) } p.audioTrack = audioTrack p.bufferSize = int(bufferSize) return nil }); err != nil { return nil, err } go p.loop() return p, nil }
//export Java_io_v_v23_security_BlessingRootsImpl_nativeDump func Java_io_v_v23_security_BlessingRootsImpl_nativeDump(jenv *C.JNIEnv, jBlessingRootsImpl C.jobject, goRef C.jlong) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) dump := (*(*security.BlessingRoots)(jutil.GoRefValue(jutil.Ref(goRef)))).Dump() result := make(map[jutil.Object][]jutil.Object) for pattern, keys := range dump { jBlessingPattern, err := JavaBlessingPattern(env, pattern) if err != nil { jutil.JThrowV(env, err) return nil } jPublicKeys := make([]jutil.Object, len(keys)) for i, key := range keys { var err error if jPublicKeys[i], err = JavaPublicKey(env, key); err != nil { jutil.JThrowV(env, err) return nil } } result[jBlessingPattern] = jPublicKeys } jMap, err := jutil.JObjectMultimap(env, result) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jMap)) }
//export Java_io_v_v23_security_VSecurity_nativeCreateAuthorizer func Java_io_v_v23_security_VSecurity_nativeCreateAuthorizer(jenv *C.JNIEnv, jVSecurityClass C.jclass, kind C.jint, jKey C.jobject) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) var auth security.Authorizer switch kind { case 0: auth = security.AllowEveryone() case 1: auth = security.EndpointAuthorizer() case 2: auth = security.DefaultAuthorizer() case 3: key, err := GoPublicKey(env, jutil.Object(uintptr(unsafe.Pointer(jKey)))) if err != nil { jutil.JThrowV(env, err) return nil } auth = security.PublicKeyAuthorizer(key) default: return nil } ref := jutil.GoNewRef(&auth) // Un-refed when the Java PermissionsAuthorizer is finalized jAuthorizer, err := jutil.NewObject(env, jutil.Class(uintptr(unsafe.Pointer(jPermissionsAuthorizerClass))), []jutil.Sign{jutil.LongSign}, int64(ref)) if err != nil { jutil.GoDecRef(ref) jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jAuthorizer)) }
func (self *Exception) Error() string { obj := newObject(C.jobject(self.ex)) str, _, err := obj.CallString(self.env, false, "toString") if err != nil { panic(err) } return str }
func initAL() { err := mobileinit.RunOnJVM(func(vm, env, ctx uintptr) error { C.al_init(C.uintptr_t(vm), C.uintptr_t(env), C.jobject(ctx), &alHandle) if alHandle == nil { return errors.New("al: cannot load libopenal.so") } return nil }) if err != nil { log.Fatalf("al: %v", err) } alEnableFunc = C.LPALENABLE(fn("alEnable")) alDisableFunc = C.LPALDISABLE(fn("alDisable")) alIsEnabledFunc = C.LPALISENABLED(fn("alIsEnabled")) alGetIntegerFunc = C.LPALGETINTEGER(fn("alGetInteger")) alGetIntegervFunc = C.LPALGETINTEGERV(fn("alGetIntegerv")) alGetFloatFunc = C.LPALGETFLOAT(fn("alGetFloat")) alGetFloatvFunc = C.LPALGETFLOATV(fn("alGetFloatv")) alGetBooleanFunc = C.LPALGETBOOLEAN(fn("alGetBoolean")) alGetBooleanvFunc = C.LPALGETBOOLEANV(fn("alGetBooleanv")) alGetStringFunc = C.LPALGETSTRING(fn("alGetString")) alDistanceModelFunc = C.LPALDISTANCEMODEL(fn("alDistanceModel")) alDopplerFactorFunc = C.LPALDOPPLERFACTOR(fn("alDopplerFactor")) alDopplerVelocityFunc = C.LPALDOPPLERVELOCITY(fn("alDopplerVelocity")) alSpeedOfSoundFunc = C.LPALSPEEDOFSOUND(fn("alSpeedOfSound")) alGetErrorFunc = C.LPALGETERROR(fn("alGetError")) alGenSourcesFunc = C.LPALGENSOURCES(fn("alGenSources")) alSourcePlayvFunc = C.LPALSOURCEPLAYV(fn("alSourcePlayv")) alSourcePausevFunc = C.LPALSOURCEPAUSEV(fn("alSourcePausev")) alSourceStopvFunc = C.LPALSOURCESTOPV(fn("alSourceStopv")) alSourceRewindvFunc = C.LPALSOURCEREWINDV(fn("alSourceRewindv")) alDeleteSourcesFunc = C.LPALDELETESOURCES(fn("alDeleteSources")) alGetSourceiFunc = C.LPALGETSOURCEI(fn("alGetSourcei")) alGetSourcefFunc = C.LPALGETSOURCEF(fn("alGetSourcef")) alGetSourcefvFunc = C.LPALGETSOURCEFV(fn("alGetSourcefv")) alSourceiFunc = C.LPALSOURCEI(fn("alSourcei")) alSourcefFunc = C.LPALSOURCEF(fn("alSourcef")) alSourcefvFunc = C.LPALSOURCEFV(fn("alSourcefv")) alSourceQueueBuffersFunc = C.LPALSOURCEQUEUEBUFFERS(fn("alSourceQueueBuffers")) alSourceUnqueueBuffersFunc = C.LPALSOURCEUNQUEUEBUFFERS(fn("alSourceUnqueueBuffers")) alGetListenerfFunc = C.LPALGETLISTENERF(fn("alGetListenerf")) alGetListenerfvFunc = C.LPALGETLISTENERFV(fn("alGetListenerfv")) alListenerfFunc = C.LPALLISTENERF(fn("alListenerf")) alListenerfvFunc = C.LPALLISTENERFV(fn("alListenerfv")) alGenBuffersFunc = C.LPALGENBUFFERS(fn("alGenBuffers")) alDeleteBuffersFunc = C.LPALDELETEBUFFERS(fn("alDeleteBuffers")) alGetBufferiFunc = C.LPALGETBUFFERI(fn("alGetBufferi")) alBufferDataFunc = C.LPALBUFFERDATA(fn("alBufferData")) alIsBufferFunc = C.LPALISBUFFER(fn("alIsBuffer")) alcGetErrorFunc = C.LPALCGETERROR(fn("alcGetError")) alcOpenDeviceFunc = C.LPALCOPENDEVICE(fn("alcOpenDevice")) alcCloseDeviceFunc = C.LPALCCLOSEDEVICE(fn("alcCloseDevice")) alcCreateContextFunc = C.LPALCCREATECONTEXT(fn("alcCreateContext")) alcMakeContextCurrentFunc = C.LPALCMAKECONTEXTCURRENT(fn("alcMakeContextCurrent")) alcDestroyContextFunc = C.LPALCDESTROYCONTEXT(fn("alcDestroyContext")) }
//export Java_io_v_impl_google_rpc_ServerCallImpl_nativeRemoteEndpoint func Java_io_v_impl_google_rpc_ServerCallImpl_nativeRemoteEndpoint(jenv *C.JNIEnv, jServerCall C.jobject, goRef C.jlong) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) jEndpoint, err := jnaming.JavaEndpoint(env, (*(*rpc.ServerCall)(jutil.GoRefValue(jutil.Ref(goRef)))).RemoteEndpoint()) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jEndpoint)) }
func assetInit() { err := mobileinit.RunOnJVM(func(vm, env, ctx uintptr) error { C.asset_manager_init(C.uintptr_t(vm), C.uintptr_t(env), C.jobject(ctx)) return nil }) if err != nil { log.Fatalf("asset: %v", err) } }
//export Java_io_v_impl_google_rpc_ServerImpl_nativeGetStatus func Java_io_v_impl_google_rpc_ServerImpl_nativeGetStatus(jenv *C.JNIEnv, jServer C.jobject, goRef C.jlong) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) status := (*(*rpc.Server)(jutil.GoRefValue(jutil.Ref(goRef)))).Status() jStatus, err := JavaServerStatus(env, status) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jStatus)) }
//export Java_io_v_v23_security_CallImpl_nativeLocalDischarges func Java_io_v_v23_security_CallImpl_nativeLocalDischarges(jenv *C.JNIEnv, jCall C.jobject, goRef C.jlong) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) localDischarges := (*(*security.Call)(jutil.GoRefValue(jutil.Ref(goRef)))).LocalDischarges() jObjectMap, err := javaDischargeMap(env, localDischarges) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jObjectMap)) }
//export Java_io_v_v23_security_CallImpl_nativeLocalPrincipal func Java_io_v_v23_security_CallImpl_nativeLocalPrincipal(jenv *C.JNIEnv, jCall C.jobject, goRef C.jlong) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) principal := (*(*security.Call)(jutil.GoRefValue(jutil.Ref(goRef)))).LocalPrincipal() jPrincipal, err := JavaPrincipal(env, principal) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jPrincipal)) }
func (self *Environment) newObjectArray(sz int, klass *Class, init C.jobject) (o *Object, err error) { ja := C.envNewObjectArray(self.env, C.jsize(sz), klass.class, init) if ja == nil { err = self.ExceptionOccurred() } if err == nil { o = newObject(C.jobject(ja)) } return }
//export Java_io_v_v23_security_Blessings_nativeWireFormat func Java_io_v_v23_security_Blessings_nativeWireFormat(jenv *C.JNIEnv, jBlessings C.jobject, goRef C.jlong) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) wire := security.MarshalBlessings(*(*security.Blessings)(jutil.GoRefValue(jutil.Ref(goRef)))) jWire, err := JavaWireBlessings(env, wire) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jWire)) }
//export Java_io_v_impl_google_rpc_ServerCallImpl_nativeServer func Java_io_v_impl_google_rpc_ServerCallImpl_nativeServer(jenv *C.JNIEnv, jServerCall C.jobject, goRef C.jlong) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) server := (*(*rpc.ServerCall)(jutil.GoRefValue(jutil.Ref(goRef)))).Server() jServer, err := JavaServer(env, server) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jServer)) }
//export Java_io_v_v23_context_VContext_nativeWithCancel func Java_io_v_v23_context_VContext_nativeWithCancel(jenv *C.JNIEnv, jVContext C.jobject, goRef C.jlong) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) ctx, cancelFunc := context.WithCancel((*context.T)(jutil.GoRefValue(jutil.Ref(goRef)))) jCtx, err := JavaContext(env, ctx, cancelFunc) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jCtx)) }
//export Java_io_v_v23_security_CallImpl_nativeTimestamp func Java_io_v_v23_security_CallImpl_nativeTimestamp(jenv *C.JNIEnv, jCall C.jobject, goRef C.jlong) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) t := (*(*security.Call)(jutil.GoRefValue(jutil.Ref(goRef)))).Timestamp() jTime, err := jutil.JTime(env, t) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jTime)) }
//export Java_io_v_v23_security_VPrincipalImpl_nativeBlessingStore func Java_io_v_v23_security_VPrincipalImpl_nativeBlessingStore(jenv *C.JNIEnv, jVPrincipalImpl C.jobject, goRef C.jlong) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) store := (*(*security.Principal)(jutil.GoRefValue(jutil.Ref(goRef)))).BlessingStore() jStore, err := JavaBlessingStore(env, store) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jStore)) }
//export Java_io_v_v23_security_BlessingStoreImpl_nativePublicKey func Java_io_v_v23_security_BlessingStoreImpl_nativePublicKey(jenv *C.JNIEnv, jBlessingStoreImpl C.jobject, goRef C.jlong) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) key := (*(*security.BlessingStore)(jutil.GoRefValue(jutil.Ref(goRef)))).PublicKey() jKey, err := JavaPublicKey(env, key) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jKey)) }
//export Java_io_v_v23_security_BlessingStoreImpl_nativeDefaultBlessings func Java_io_v_v23_security_BlessingStoreImpl_nativeDefaultBlessings(jenv *C.JNIEnv, jBlessingStoreImpl C.jobject, goRef C.jlong) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) blessings, _ := (*(*security.BlessingStore)(jutil.GoRefValue(jutil.Ref(goRef)))).Default() jBlessings, err := JavaBlessings(env, blessings) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jBlessings)) }
//export Java_io_v_v23_security_VPrincipalImpl_nativeRoots func Java_io_v_v23_security_VPrincipalImpl_nativeRoots(jenv *C.JNIEnv, jVPrincipalImpl C.jobject, goRef C.jlong) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) roots := (*(*security.Principal)(jutil.GoRefValue(jutil.Ref(goRef)))).Roots() jRoots, err := JavaBlessingRoots(env, roots) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jRoots)) }
//export Java_io_v_v23_context_VContext_nativeCreate func Java_io_v_v23_context_VContext_nativeCreate(jenv *C.JNIEnv, jVContext C.jclass) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) ctx, _ := context.RootContext() jContext, err := JavaContext(env, ctx, nil) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jContext)) }
//export Java_io_v_impl_google_rpc_ServerCallImpl_nativeGrantedBlessings func Java_io_v_impl_google_rpc_ServerCallImpl_nativeGrantedBlessings(jenv *C.JNIEnv, jServerCall C.jobject, goRef C.jlong) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) blessings := (*(*rpc.ServerCall)(jutil.GoRefValue(jutil.Ref(goRef)))).GrantedBlessings() jBlessings, err := jsecurity.JavaBlessings(env, blessings) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jBlessings)) }
//export Java_io_v_v23_security_CallImpl_nativeRemoteBlessings func Java_io_v_v23_security_CallImpl_nativeRemoteBlessings(jenv *C.JNIEnv, jCall C.jobject, goRef C.jlong) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) blessings := (*(*security.Call)(jutil.GoRefValue(jutil.Ref(goRef)))).RemoteBlessings() jBlessings, err := JavaBlessings(env, blessings) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jBlessings)) }
//export Java_io_v_v23_security_BlessingPattern_nativeMakeNonExtendable func Java_io_v_v23_security_BlessingPattern_nativeMakeNonExtendable(jenv *C.JNIEnv, jBlessingPattern C.jobject, goRef C.jlong) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) pattern := (*(*security.BlessingPattern)(jutil.GoRefValue(jutil.Ref(goRef)))).MakeNonExtendable() jPattern, err := JavaBlessingPattern(env, pattern) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jPattern)) }
//export Java_io_v_v23_security_Blessings_nativeSigningBlessings func Java_io_v_v23_security_Blessings_nativeSigningBlessings(jenv *C.JNIEnv, jBlessings C.jobject, goRef C.jlong) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) blessings := security.SigningBlessings(*(*security.Blessings)(jutil.GoRefValue(jutil.Ref(goRef)))) jSigningBlessings, err := JavaBlessings(env, blessings) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jSigningBlessings)) }
//export Java_io_v_impl_google_lib_discovery_UUIDUtil_attributeUUID func Java_io_v_impl_google_lib_discovery_UUIDUtil_attributeUUID(jenv *C.JNIEnv, _ C.jclass, jName C.jstring) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) name := jutil.GoString(env, jutil.Object(uintptr(unsafe.Pointer(jName)))) jUuid, err := javaUUID(env, idiscovery.NewAttributeUUID(name)) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jUuid)) }
//export Java_io_v_v23_context_VContext_nativeValue func Java_io_v_v23_context_VContext_nativeValue(jenv *C.JNIEnv, jVContext C.jobject, goRef C.jlong, jKeySign C.jstring) C.jobject { env := jutil.Env(uintptr(unsafe.Pointer(jenv))) key := goContextKey(jutil.GoString(env, jutil.Object(uintptr(unsafe.Pointer(jKeySign))))) value := (*(*context.T)(jutil.GoRefValue(jutil.Ref(goRef)))).Value(key) jValue, err := JavaContextValue(env, value) if err != nil { jutil.JThrowV(env, err) return nil } return C.jobject(unsafe.Pointer(jValue)) }