• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

hazendaz / httpunit / 656

06 Dec 2025 09:11PM UTC coverage: 80.452% (+0.02%) from 80.435%
656

push

github

hazendaz
[maven-release-plugin] prepare for next development iteration

3213 of 4105 branches covered (78.27%)

Branch coverage included in aggregate %.

8245 of 10137 relevant lines covered (81.34%)

0.81 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

83.33
/src/main/java/com/meterware/httpunit/dom/HTMLEventHandler.java
1
/*
2
 * MIT License
3
 *
4
 * Copyright 2011-2025 Russell Gold
5
 *
6
 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
7
 * documentation files (the "Software"), to deal in the Software without restriction, including without limitation
8
 * the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
9
 * to permit persons to whom the Software is furnished to do so, subject to the following conditions:
10
 *
11
 * The above copyright notice and this permission notice shall be included in all copies or substantial portions
12
 * of the Software.
13
 *
14
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
15
 * THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
17
 * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
18
 * DEALINGS IN THE SOFTWARE.
19
 */
20
package com.meterware.httpunit.dom;
21

22
import org.mozilla.javascript.Context;
23
import org.mozilla.javascript.Function;
24

25
/**
26
 * The handler for HTML events.
27
 */
28
class HTMLEventHandler {
29

30
    /** The base element. */
31
    private HTMLElementImpl _baseElement;
32

33
    /** The handler name. */
34
    private String _handlerName;
35

36
    /** The handler. */
37
    private Function _handler;
38

39
    /**
40
     * create a handler for the given HTML Event.
41
     *
42
     * @param baseElement
43
     *            the base element
44
     * @param handlerName
45
     *            the handler name
46
     */
47
    public HTMLEventHandler(HTMLElementImpl baseElement, String handlerName) {
1✔
48
        _baseElement = baseElement;
1✔
49
        _handlerName = handlerName;
1✔
50
    }
1✔
51

52
    /**
53
     * set the handler Function for this event Handler.
54
     *
55
     * @param handler
56
     *            the new handler
57
     */
58
    void setHandler(Function handler) {
59
        _handler = handler;
×
60
    }
×
61

62
    /**
63
     * get the (cached) handler Function for this event Handler on first access compile the function.
64
     *
65
     * @return the handler
66
     */
67
    Function getHandler() {
68
        if (_handler == null) {
1✔
69
            String attribute = _baseElement.getAttributeWithNoDefault(_handlerName);
1✔
70
            if (attribute != null && Context.getCurrentContext() != null) {
1!
71
                _handler = Context.getCurrentContext().compileFunction(_baseElement,
1✔
72
                        "function " + AbstractDomComponent.createAnonymousFunctionName() + "() { " + attribute + "}",
1✔
73
                        "httpunit", 0, null);
74
            }
75
        }
76
        return _handler;
1✔
77
    }
78
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc