import org.opendaylight.mdsal.dom.api.DOMMountPointService;
import org.opendaylight.restconf.nb.rfc8040.handlers.SchemaContextHandler;
import org.opendaylight.restconf.nb.rfc8040.jersey.providers.JsonNormalizedNodeBodyReader;
-import org.opendaylight.restconf.nb.rfc8040.jersey.providers.NormalizedNodeJsonBodyWriter;
-import org.opendaylight.restconf.nb.rfc8040.jersey.providers.NormalizedNodeXmlBodyWriter;
+import org.opendaylight.restconf.nb.rfc8040.jersey.providers.JsonNormalizedNodeBodyWriter;
import org.opendaylight.restconf.nb.rfc8040.jersey.providers.XmlNormalizedNodeBodyReader;
+import org.opendaylight.restconf.nb.rfc8040.jersey.providers.XmlNormalizedNodeBodyWriter;
import org.opendaylight.restconf.nb.rfc8040.jersey.providers.YangSchemaExportBodyWriter;
import org.opendaylight.restconf.nb.rfc8040.jersey.providers.YinSchemaExportBodyWriter;
import org.opendaylight.restconf.nb.rfc8040.jersey.providers.errors.RestconfDocumentedExceptionMapper;
@Override
public final Set<Class<?>> getClasses() {
return Set.of(
- NormalizedNodeJsonBodyWriter.class, NormalizedNodeXmlBodyWriter.class,
+ JsonNormalizedNodeBodyWriter.class, XmlNormalizedNodeBodyWriter.class,
YinSchemaExportBodyWriter.class, YangSchemaExportBodyWriter.class,
PatchJsonBodyWriter.class, PatchXmlBodyWriter.class);
}
--- /dev/null
+/*
+ * Copyright (c) 2021 PANTHEON.tech, s.r.o. and others. All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.opendaylight.restconf.nb.rfc8040.jersey.providers;
+
+import java.lang.annotation.Annotation;
+import java.lang.reflect.Type;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.ext.MessageBodyWriter;
+import org.opendaylight.restconf.common.context.NormalizedNodeContext;
+
+abstract class AbstractNormalizedNodeBodyWriter implements MessageBodyWriter<NormalizedNodeContext> {
+ @Override
+ public final boolean isWriteable(final Class<?> type, final Type genericType, final Annotation[] annotations,
+ final MediaType mediaType) {
+ return type.equals(NormalizedNodeContext.class);
+ }
+}
import javax.ws.rs.WebApplicationException;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.ext.MessageBodyWriter;
import javax.ws.rs.ext.Provider;
import org.opendaylight.restconf.common.context.InstanceIdentifierContext;
import org.opendaylight.restconf.common.context.NormalizedNodeContext;
@Provider
@Produces({ MediaTypes.APPLICATION_YANG_DATA_JSON, MediaType.APPLICATION_JSON })
-public class NormalizedNodeJsonBodyWriter implements MessageBodyWriter<NormalizedNodeContext> {
-
+public class JsonNormalizedNodeBodyWriter extends AbstractNormalizedNodeBodyWriter {
private static final int DEFAULT_INDENT_SPACES_NUM = 2;
- @Override
- public boolean isWriteable(final Class<?> type,
- final Type genericType,
- final Annotation[] annotations,
- final MediaType mediaType) {
- return type.equals(NormalizedNodeContext.class);
- }
-
@Override
public void writeTo(final NormalizedNodeContext context,
final Class<?> type,
import javax.ws.rs.WebApplicationException;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.ext.MessageBodyWriter;
import javax.ws.rs.ext.Provider;
import javax.xml.XMLConstants;
import javax.xml.stream.FactoryConfigurationError;
@Provider
@Produces({ MediaTypes.APPLICATION_YANG_DATA_XML, MediaType.APPLICATION_XML, MediaType.TEXT_XML })
-public class NormalizedNodeXmlBodyWriter implements MessageBodyWriter<NormalizedNodeContext> {
+public class XmlNormalizedNodeBodyWriter extends AbstractNormalizedNodeBodyWriter {
private static final XMLOutputFactory XML_FACTORY;
static {
XML_FACTORY.setProperty(XMLOutputFactory.IS_REPAIRING_NAMESPACES, true);
}
- @Override
- public boolean isWriteable(final Class<?> type,
- final Type genericType,
- final Annotation[] annotations,
- final MediaType mediaType) {
- return type.equals(NormalizedNodeContext.class);
- }
-
@Override
public void writeTo(final NormalizedNodeContext context,
final Class<?> type,