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

evolvedbinary / elemental / 982

29 Apr 2025 08:34PM UTC coverage: 56.409% (+0.007%) from 56.402%
982

push

circleci

adamretter
[feature] Improve README.md badges

28451 of 55847 branches covered (50.94%)

Branch coverage included in aggregate %.

77468 of 131924 relevant lines covered (58.72%)

0.59 hits per line

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

80.0
/exist-core/src/main/java/org/exist/xmlrpc/ExistRpcTypeFactory.java
1
/*
2
 * Elemental
3
 * Copyright (C) 2024, Evolved Binary Ltd
4
 *
5
 * admin@evolvedbinary.com
6
 * https://www.evolvedbinary.com | https://www.elemental.xyz
7
 *
8
 * Use of this software is governed by the Business Source License 1.1
9
 * included in the LICENSE file and at www.mariadb.com/bsl11.
10
 *
11
 * Change Date: 2028-04-27
12
 *
13
 * On the date above, in accordance with the Business Source License, use
14
 * of this software will be governed by the Apache License, Version 2.0.
15
 *
16
 * Additional Use Grant: Production use of the Licensed Work for a permitted
17
 * purpose. A Permitted Purpose is any purpose other than a Competing Use.
18
 * A Competing Use means making the Software available to others in a commercial
19
 * product or service that: substitutes for the Software; substitutes for any
20
 * other product or service we offer using the Software that exists as of the
21
 * date we make the Software available; or offers the same or substantially
22
 * similar functionality as the Software.
23
 */
24
package org.exist.xmlrpc;
25

26
import com.evolvedbinary.j8fu.tuple.*;
27
import org.apache.ws.commons.util.NamespaceContextImpl;
28
import org.apache.xmlrpc.common.TypeFactoryImpl;
29
import org.apache.xmlrpc.common.XmlRpcController;
30
import org.apache.xmlrpc.common.XmlRpcStreamConfig;
31
import org.apache.xmlrpc.parser.TypeParser;
32
import org.apache.xmlrpc.serializer.TypeSerializer;
33
import org.exist.security.internal.aider.ACEAider;
34
import org.xml.sax.SAXException;
35

36
/**
37
 * Custom XML-RPC type factory to enable the use
38
 * of extended types in XML-RPC.
39
 *
40
 * @author <a href="mailto:adam@evolvedbinary.com">Adam Retter</a>
41
 */
42
public class ExistRpcTypeFactory extends TypeFactoryImpl {
43
    public ExistRpcTypeFactory(final XmlRpcController controller) {
44
        super(controller);
1✔
45
    }
1✔
46

47
    @Override
48
    public TypeParser getParser(final XmlRpcStreamConfig config, final NamespaceContextImpl context, final String uri, final String localName) {
49
        if (TupleSerializer.TUPLE_TAG.equals(localName)) {
1!
50
            return new TupleParser(config, context, this);
×
51

52
        } else if (ACEAiderSerializer.ACEAIDER_TAG.equals(localName)) {
1✔
53
            return new ACEAiderParser(config, context, this);
1✔
54

55
        } else {
56
            return super.getParser(config, context, uri, localName);
1✔
57
        }
58
    }
59

60
    @Override
61
    public TypeSerializer getSerializer(final XmlRpcStreamConfig config, final Object object) throws SAXException {
62
        if (object instanceof Tuple) {
1!
63
            return new TupleSerializer(this, config);
×
64

65
        } else if (object instanceof ACEAider) {
1✔
66
            return new ACEAiderSerializer(this, config);
1✔
67

68
        } else {
69
            return super.getSerializer(config, object);
1✔
70
        }
71
    }
72
}
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

© 2025 Coveralls, Inc