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:
@@ -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() {}
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -60,6 +60,7 @@ class JavaDOMGlobals {
|
||||
static jfieldID nodePtrFID;
|
||||
static jfieldID nodeListPtrFID;
|
||||
static jfieldID domImplementationPtrFID;
|
||||
static jfieldID namedNodeMapPtrFID;
|
||||
|
||||
static jfieldID nodeTypeAttributeFID;
|
||||
static jfieldID nodeTypeCDataSectionFID;
|
||||
|
||||
@@ -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));
|
||||
|
||||
@@ -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");
|
||||
|
||||
@@ -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");
|
||||
|
||||
Reference in New Issue
Block a user