bug=47878

r=edburns
a=edburns
author=rmv@sparc.spb.su


git-svn-id: svn://10.0.0.236/trunk@79785 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
edburns%acm.org
2000-09-22 00:06:21 +00:00
parent 88d5cc777e
commit 496cf20121
6 changed files with 15 additions and 9 deletions

View File

@@ -27,6 +27,7 @@ import org.w3c.dom.DOMException;
public class NamedNodeMapImpl implements NamedNodeMap {
private long p_nsIDOMNamedNodeMap = 0;
// instantiated from JNI only
private NamedNodeMapImpl() {}

View File

@@ -46,6 +46,7 @@ jclass JavaDOMGlobals::textClass = NULL;
jfieldID JavaDOMGlobals::nodePtrFID = NULL;
jfieldID JavaDOMGlobals::nodeListPtrFID = NULL;
jfieldID JavaDOMGlobals::domImplementationPtrFID = NULL;
jfieldID JavaDOMGlobals::namedNodeMapPtrFID = NULL;
jfieldID JavaDOMGlobals::nodeTypeAttributeFID = NULL;
jfieldID JavaDOMGlobals::nodeTypeCDataSectionFID = NULL;
@@ -167,6 +168,9 @@ void JavaDOMGlobals::Initialize(JNIEnv *env)
namedNodeMapClass = env->FindClass("org/mozilla/dom/NamedNodeMapImpl");
if (!namedNodeMapClass) return;
namedNodeMapPtrFID =
env->GetFieldID(namedNodeMapClass, "p_nsIDOMNamedNodeMap", "J");
if (!namedNodeMapPtrFID) return;
namedNodeMapClass = (jclass) env->NewGlobalRef(namedNodeMapClass);
if (!namedNodeMapClass) return;

View File

@@ -60,6 +60,7 @@ class JavaDOMGlobals {
static jfieldID nodePtrFID;
static jfieldID nodeListPtrFID;
static jfieldID domImplementationPtrFID;
static jfieldID namedNodeMapPtrFID;
static jfieldID nodeTypeAttributeFID;
static jfieldID nodeTypeCDataSectionFID;

View File

@@ -57,7 +57,7 @@ JNIEXPORT jobject JNICALL Java_org_mozilla_dom_DocumentTypeImpl_getEntities
return NULL;
}
env->SetLongField(jret, JavaDOMGlobals::nodePtrFID, (jlong) nodeMap);
env->SetLongField(jret, JavaDOMGlobals::namedNodeMapPtrFID, (jlong) nodeMap);
if (env->ExceptionOccurred()) {
PR_LOG(JavaDOMGlobals::log, PR_LOG_ERROR,
("DocumentType.getEntities: failed to set node ptr: %x\n", nodeMap));
@@ -132,7 +132,7 @@ JNIEXPORT jobject JNICALL Java_org_mozilla_dom_DocumentTypeImpl_getNotations
return NULL;
}
env->SetLongField(jret, JavaDOMGlobals::nodePtrFID, (jlong) nodeMap);
env->SetLongField(jret, JavaDOMGlobals::namedNodeMapPtrFID, (jlong) nodeMap);
if (env->ExceptionOccurred()) {
PR_LOG(JavaDOMGlobals::log, PR_LOG_ERROR,
("DocumentType.getNotations: failed to set node ptr: %x\n", nodeMap));

View File

@@ -36,7 +36,7 @@ JNIEXPORT jint JNICALL Java_org_mozilla_dom_NamedNodeMapImpl_getLength
(JNIEnv *env, jobject jthis)
{
nsIDOMNamedNodeMap* map = (nsIDOMNamedNodeMap*)
env->GetLongField(jthis, JavaDOMGlobals::nodePtrFID);
env->GetLongField(jthis, JavaDOMGlobals::namedNodeMapPtrFID);
if (!map) {
JavaDOMGlobals::ThrowException(env,
"NodeMap.getLength: NULL pointer");
@@ -63,7 +63,7 @@ JNIEXPORT jobject JNICALL Java_org_mozilla_dom_NamedNodeMapImpl_getNamedItem
(JNIEnv *env, jobject jthis, jstring jname)
{
nsIDOMNamedNodeMap* map = (nsIDOMNamedNodeMap*)
env->GetLongField(jthis, JavaDOMGlobals::nodePtrFID);
env->GetLongField(jthis, JavaDOMGlobals::namedNodeMapPtrFID);
if (!map || !jname) {
JavaDOMGlobals::ThrowException(env,
"NodeMap.getNamedItem: NULL pointer");
@@ -104,7 +104,7 @@ JNIEXPORT jobject JNICALL Java_org_mozilla_dom_NamedNodeMapImpl_item
}
nsIDOMNamedNodeMap* map = (nsIDOMNamedNodeMap*)
env->GetLongField(jthis, JavaDOMGlobals::nodePtrFID);
env->GetLongField(jthis, JavaDOMGlobals::namedNodeMapPtrFID);
if (!map) {
JavaDOMGlobals::ThrowException(env,
"NodeMap.item: NULL pointer");
@@ -133,7 +133,7 @@ JNIEXPORT jobject JNICALL Java_org_mozilla_dom_NamedNodeMapImpl_removeNamedItem
(JNIEnv *env, jobject jthis, jstring jname)
{
nsIDOMNamedNodeMap* map = (nsIDOMNamedNodeMap*)
env->GetLongField(jthis, JavaDOMGlobals::nodePtrFID);
env->GetLongField(jthis, JavaDOMGlobals::namedNodeMapPtrFID);
if (!map || !jname) {
JavaDOMGlobals::ThrowException(env,
"NodeMap.removeNamedItem: NULL pointer");
@@ -170,7 +170,7 @@ JNIEXPORT jobject JNICALL Java_org_mozilla_dom_NamedNodeMapImpl_setNamedItem
(JNIEnv *env, jobject jthis, jobject jarg)
{
nsIDOMNamedNodeMap* map = (nsIDOMNamedNodeMap*)
env->GetLongField(jthis, JavaDOMGlobals::nodePtrFID);
env->GetLongField(jthis, JavaDOMGlobals::namedNodeMapPtrFID);
if (!map || !jarg) {
JavaDOMGlobals::ThrowException(env,
"NodeMap.setNamedItem: NULL pointer");
@@ -178,7 +178,7 @@ JNIEXPORT jobject JNICALL Java_org_mozilla_dom_NamedNodeMapImpl_setNamedItem
}
nsIDOMNode* arg = (nsIDOMNode*)
env->GetLongField(jarg, JavaDOMGlobals::nodePtrFID);
env->GetLongField(jarg, JavaDOMGlobals::namedNodeMapPtrFID);
if (!arg) {
JavaDOMGlobals::ThrowException(env,
"NodeMap.setNamedItem: NULL item pointer");

View File

@@ -233,7 +233,7 @@ JNIEXPORT jobject JNICALL Java_org_mozilla_dom_NodeImpl_getAttributes
return NULL;
}
env->SetLongField(jret, JavaDOMGlobals::nodePtrFID, (jlong) nodeMap);
env->SetLongField(jret, JavaDOMGlobals::namedNodeMapPtrFID, (jlong) nodeMap);
if (env->ExceptionOccurred()) {
JavaDOMGlobals::ThrowException(env,
"Node.getAttributes: failed to set node ptr");