/** * Puts a value in the table. * @return the old value or null */ public Object put(Object o1, Object o2, Object o3, Object value) { int hash = hashCode(o1, o2, o3) & 0x7FFFFFFF; int index = hash % table.length; for (Entry e = table[index]; e != null; e = e.next) { if ((e.hash == hash) && e.match(o1, o2, o3)) { Object old = e.value; e.value = value; return old; } } // The key is not in the hash table int len = table.length; if (count++ >= (len - (len >> 2))) { // more than 75% loaded: grow rehash(); index = hash % table.length; } Entry e = new Entry(hash, o1, o2, o3, value, table[index]); table[index] = e; return null; }
(eventNamespaceURI, eventType, listener, false, null); if (handlerScriptingListeners == null) { handlerScriptingListeners = new TriplyIndexedTable(); handlerScriptingListeners.put (eventNamespaceURI, eventType, elt, listener);
/** * Gets the value of an entry * @return the value or null */ public Object get(Object o1, Object o2, Object o3) { int hash = hashCode(o1, o2, o3) & 0x7FFFFFFF; int index = hash % table.length; for (Entry e = table[index]; e != null; e = e.next) { if ((e.hash == hash) && e.match(o1, o2, o3)) { return e.value; } } return null; }
/** * Removes the scripting listeners from the given element. */ protected void removeScriptingListenersOn(Element elt) { String eltNS = elt.getNamespaceURI(); String eltLN = elt.getLocalName(); if (SVGConstants.SVG_NAMESPACE_URI.equals(eltNS) && SVG12Constants.SVG_HANDLER_TAG.equals(eltLN)) { // For this 'handler' element, remove the handler for the given // event type. AbstractElement tgt = (AbstractElement) elt.getParentNode(); String eventType = elt.getAttributeNS (XMLConstants.XML_EVENTS_NAMESPACE_URI, XMLConstants.XML_EVENTS_EVENT_ATTRIBUTE); String eventNamespaceURI = XMLConstants.XML_EVENTS_NAMESPACE_URI; if (eventType.indexOf(':') != -1) { String prefix = DOMUtilities.getPrefix(eventType); eventType = DOMUtilities.getLocalName(eventType); eventNamespaceURI = ((AbstractElement) elt).lookupNamespaceURI(prefix); } EventListener listener = (EventListener) handlerScriptingListeners.put (eventNamespaceURI, eventType, elt, null); tgt.removeEventListenerNS (eventNamespaceURI, eventType, listener, false); } super.removeScriptingListenersOn(elt); }
(eventNamespaceURI, eventType, listener, false, null); if (handlerScriptingListeners == null) { handlerScriptingListeners = new TriplyIndexedTable(); handlerScriptingListeners.put (eventNamespaceURI, eventType, elt, listener);
/** * Gets the value of an entry * @return the value or null */ public Object get(Object o1, Object o2, Object o3) { int hash = hashCode(o1, o2, o3) & 0x7FFFFFFF; int index = hash % table.length; for (Entry e = table[index]; e != null; e = e.next) { if ((e.hash == hash) && e.match(o1, o2, o3)) { return e.value; } } return null; }
/** * Removes the scripting listeners from the given element. */ protected void removeScriptingListenersOn(Element elt) { String eltNS = elt.getNamespaceURI(); String eltLN = elt.getLocalName(); if (SVGConstants.SVG_NAMESPACE_URI.equals(eltNS) && SVG12Constants.SVG_HANDLER_TAG.equals(eltLN)) { // For this 'handler' element, remove the handler for the given // event type. AbstractElement tgt = (AbstractElement) elt.getParentNode(); String eventType = elt.getAttributeNS (XMLConstants.XML_EVENTS_NAMESPACE_URI, XMLConstants.XML_EVENTS_EVENT_ATTRIBUTE); String eventNamespaceURI = XMLConstants.XML_EVENTS_NAMESPACE_URI; if (eventType.indexOf(':') != -1) { String prefix = DOMUtilities.getPrefix(eventType); eventType = DOMUtilities.getLocalName(eventType); eventNamespaceURI = ((AbstractElement) elt).lookupNamespaceURI(prefix); } EventListener listener = (EventListener) handlerScriptingListeners.put (eventNamespaceURI, eventType, elt, null); tgt.removeEventListenerNS (eventNamespaceURI, eventType, listener, false); } super.removeScriptingListenersOn(elt); }
/** * Puts a value in the table. * @return the old value or null */ public Object put(Object o1, Object o2, Object o3, Object value) { int hash = hashCode(o1, o2, o3) & 0x7FFFFFFF; int index = hash % table.length; for (Entry e = table[index]; e != null; e = e.next) { if ((e.hash == hash) && e.match(o1, o2, o3)) { Object old = e.value; e.value = value; return old; } } // The key is not in the hash table int len = table.length; if (count++ >= (len - (len >> 2))) { // more than 75% loaded: grow rehash(); index = hash % table.length; } Entry e = new Entry(hash, o1, o2, o3, value, table[index]); table[index] = e; return null; }
(eventNamespaceURI, eventType, listener, false, null); if (handlerScriptingListeners == null) { handlerScriptingListeners = new TriplyIndexedTable(); handlerScriptingListeners.put (eventNamespaceURI, eventType, elt, listener);
/** * Gets the value of an entry * @return the value or null */ public Object get(Object o1, Object o2, Object o3) { int hash = hashCode(o1, o2, o3) & 0x7FFFFFFF; int index = hash % table.length; for (Entry e = table[index]; e != null; e = e.next) { if ((e.hash == hash) && e.match(o1, o2, o3)) { return e.value; } } return null; }
/** * Removes the scripting listeners from the given element. */ protected void removeScriptingListenersOn(Element elt) { String eltNS = elt.getNamespaceURI(); String eltLN = elt.getLocalName(); if (SVGConstants.SVG_NAMESPACE_URI.equals(eltNS) && SVG12Constants.SVG_HANDLER_TAG.equals(eltLN)) { // For this 'handler' element, remove the handler for the given // event type. AbstractElement tgt = (AbstractElement) elt.getParentNode(); String eventType = elt.getAttributeNS (XMLConstants.XML_EVENTS_NAMESPACE_URI, XMLConstants.XML_EVENTS_EVENT_ATTRIBUTE); String eventNamespaceURI = XMLConstants.XML_EVENTS_NAMESPACE_URI; if (eventType.indexOf(':') != -1) { String prefix = DOMUtilities.getPrefix(eventType); eventType = DOMUtilities.getLocalName(eventType); eventNamespaceURI = elt.lookupNamespaceURI(prefix); } EventListener listener = (EventListener) handlerScriptingListeners.put (eventNamespaceURI, eventType, elt, null); tgt.removeEventListenerNS (eventNamespaceURI, eventType, listener, false); } super.removeScriptingListenersOn(elt); }
/** * Puts a value in the table. * @return the old value or null */ public Object put(Object o1, Object o2, Object o3, Object value) { int hash = hashCode(o1, o2, o3) & 0x7FFFFFFF; int index = hash % table.length; for (Entry e = table[index]; e != null; e = e.next) { if ((e.hash == hash) && e.match(o1, o2, o3)) { Object old = e.value; e.value = value; return old; } } // The key is not in the hash table int len = table.length; if (count++ >= (len - (len >> 2))) { // more than 75% loaded: grow rehash(); index = hash % table.length; } Entry e = new Entry(hash, o1, o2, o3, value, table[index]); table[index] = e; return null; }