1 /* JORTEDomainAppDestroy.c */
4 * This code provides conversion between JAVA a C environments.
5 * The C functions are calling here and results are send to JAVA
6 * native functions. It uses the header pregenerated by JAVA
7 * (by command 'javah -jni class_with_native_function')
9 * @author Lukas Pokorny (lukas_pokorny@centrum.cz)
10 * @author CTU FEE Prague - Department of Control Engineering (dce.felk.cvut.cz
12 * @author Project ORTE - OCERA Real Time Ethernet (www.ocera.org)
13 * @author dedication to Kj
17 * This program is free software; you can redistribute it and/or modify
18 * it under the terms of the GNU General Public License as published by
19 * the Free Software Foundation; either version 2 of the License, or
20 * (at your option) any later version.
22 * This program is distributed in the hope that it will be useful,
23 * but WITHOUT ANY WARRANTY; without even the implied warranty of
24 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25 * GNU General Public License for more details.
30 // origin orte headers
32 // pregenerated header
33 #include "jorte/org_ocera_orte_DomainApp.h"
34 #include "jorte/4all.h"
35 #include "jorte/jorte_typedefs_defines.h"
37 JNIEXPORT jboolean JNICALL
38 Java_org_ocera_orte_DomainApp_jORTEDomainAppDestroy
39 (JNIEnv *env, jobject obj, jlong dhandle)
47 // check domain handle
50 printf(":!c: ORTEDomainAppDestroy failed! [bad handle] \n");
54 if (!ORTEDomainAppDestroy((ORTEDomain *) dhandle))
57 printf(":c: ORTEDomainAppDestroy failed.. \n");
62 // free domainEvents object
64 cls = (*env)->GetObjectClass(env, obj);
68 printf(":!c: cls = NULL! \n");
73 fid = (*env)->GetFieldID(env,
75 "domainEventsContextHandle",
80 printf(":!c: fid = NULL! \n");
85 h = (*env)->GetLongField(env, obj, fid);
88 JORTEDomainEventsContext_t *ctx = (JORTEDomainEventsContext_t*)h;
92 printf(":c: deleting ctx->obj_de \n");
94 (*env)->DeleteGlobalRef(env, ctx->obj_de);
104 printf(":!c: ORTEDomainAppDestroy failed! \n");