summaryrefslogtreecommitdiffstats
path: root/rosetta/src/main/java/org/onap/aaf/rosetta/env
diff options
context:
space:
mode:
Diffstat (limited to 'rosetta/src/main/java/org/onap/aaf/rosetta/env')
-rw-r--r--rosetta/src/main/java/org/onap/aaf/rosetta/env/RosettaDF.java266
-rw-r--r--rosetta/src/main/java/org/onap/aaf/rosetta/env/RosettaData.java313
-rw-r--r--rosetta/src/main/java/org/onap/aaf/rosetta/env/RosettaEnv.java89
3 files changed, 0 insertions, 668 deletions
diff --git a/rosetta/src/main/java/org/onap/aaf/rosetta/env/RosettaDF.java b/rosetta/src/main/java/org/onap/aaf/rosetta/env/RosettaDF.java
deleted file mode 100644
index 4005e81..0000000
--- a/rosetta/src/main/java/org/onap/aaf/rosetta/env/RosettaDF.java
+++ /dev/null
@@ -1,266 +0,0 @@
-/*******************************************************************************
- * ============LICENSE_START====================================================
- * * org.onap.aaf
- * * ===========================================================================
- * * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
- * * ===========================================================================
- * * Licensed under the Apache License, Version 2.0 (the "License");
- * * you may not use this file except in compliance with the License.
- * * You may obtain a copy of the License at
- * *
- * * http://www.apache.org/licenses/LICENSE-2.0
- * *
- * * Unless required by applicable law or agreed to in writing, software
- * * distributed under the License is distributed on an "AS IS" BASIS,
- * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * * See the License for the specific language governing permissions and
- * * limitations under the License.
- * * ============LICENSE_END====================================================
- * *
- * * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * *
- ******************************************************************************/
-package org.onap.aaf.rosetta.env;
-
-import java.io.IOException;
-import java.io.OutputStream;
-import java.io.OutputStreamWriter;
-import java.io.Reader;
-import java.io.StringReader;
-import java.io.StringWriter;
-import java.io.Writer;
-
-import javax.xml.bind.JAXBException;
-import javax.xml.namespace.QName;
-import javax.xml.validation.Schema;
-
-import org.onap.aaf.inno.env.APIException;
-import org.onap.aaf.inno.env.BaseDataFactory;
-import org.onap.aaf.inno.env.Data;
-import org.onap.aaf.inno.env.DataFactory;
-import org.onap.aaf.inno.env.Env;
-import org.onap.aaf.inno.env.TimeTaken;
-import org.onap.aaf.inno.env.Trans;
-import org.onap.aaf.inno.env.Data.TYPE;
-import org.onap.aaf.inno.env.jaxb.JAXBmar;
-import org.onap.aaf.inno.env.jaxb.JAXBumar;
-import org.onap.aaf.rosetta.InJson;
-import org.onap.aaf.rosetta.InXML;
-import org.onap.aaf.rosetta.JaxInfo;
-import org.onap.aaf.rosetta.Marshal;
-import org.onap.aaf.rosetta.Out;
-import org.onap.aaf.rosetta.OutJson;
-import org.onap.aaf.rosetta.OutRaw;
-import org.onap.aaf.rosetta.OutXML;
-import org.onap.aaf.rosetta.Parse;
-import org.onap.aaf.rosetta.ParseException;
-import org.onap.aaf.rosetta.marshal.DocMarshal;
-
-public class RosettaDF<T> extends BaseDataFactory implements DataFactory<T> {
-
- static InJson inJSON = new InJson();
- InXML inXML;
-
- static OutJson outJSON = new OutJson();
- OutXML outXML;
- static OutRaw outRAW = new OutRaw();
-
- // Temporary until we write JAXB impl...
- JAXBmar jaxMar;
- JAXBumar jaxUmar;
-
- private Parse<Reader,?> defaultIn;
- private Out defaultOut;
- private RosettaEnv env;
- private TYPE inType;
- private TYPE outType;
- private int defOption;
- Marshal<T> marshal = null;
-
-
- /**
- * Private constructor to setup Type specific data manipulators
- * @param schema
- * @param rootNs
- * @param cls
- * @throws SecurityException
- * @throws NoSuchFieldException
- * @throws ClassNotFoundException
- * @throws ParseException
- * @throws JAXBException
- */
- // package on purpose
- RosettaDF(RosettaEnv env, Schema schema, String rootNs, Class<T> cls) throws APIException {
- this.env = env;
- try {
- // Note: rootNs can be null, in order to derive content from Class.
- JaxInfo ji = rootNs==null?JaxInfo.build(cls):JaxInfo.build(cls,rootNs);
- // Note: JAXBmar sets qname to null if not exists
- jaxMar = new JAXBmar(rootNs==null?null:new QName("xmlns",rootNs),cls);
- // Note: JAXBumar sets schema to null if not exists
- jaxUmar = new JAXBumar(schema, cls);
-
- defaultIn = inXML = new InXML(ji);
- defaultOut = outXML = new OutXML(ji);
- inType=outType=Data.TYPE.XML;
- defOption = 0;
- } catch (Exception e) {
- throw new APIException(e);
- }
- }
-
-
- // @Override
- public RosettaData<T> newData() {
- RosettaData<T> data = new RosettaData<T>(env, this)
- .in(inType)
- .out(outType)
- .option(defOption);
- return data;
- }
-
- // @Override
- public RosettaData<T> newData(Env trans) {
- RosettaData<T> data = new RosettaData<T>(trans, this)
- .in(inType)
- .out(outType)
- .option(defOption);
- return data;
- }
-
- @SuppressWarnings("unchecked")
- // @Override
- public Class<T> getTypeClass() {
- return (Class<T>)jaxMar.getMarshalClass();
- }
-
- public RosettaDF<T> in(Data.TYPE type) {
- inType = type;
- defaultIn=getIn(type==Data.TYPE.DEFAULT?Data.TYPE.JSON:type);
- return this;
- }
-
- /**
- * If exists, first option is "Pretty", second is "Fragment"
- *
- * @param options
- * @return
- */
- public RosettaDF<T> out(Data.TYPE type) {
- outType = type;
- defaultOut = getOut(type==Data.TYPE.DEFAULT?Data.TYPE.JSON:type);
- return this;
- }
-
- public Parse<Reader,?> getIn(Data.TYPE type) {
- switch(type) {
- case DEFAULT:
- return defaultIn;
- case JSON:
- return inJSON;
- case XML:
- return inXML;
- default:
- return defaultIn;
- }
- }
-
- public Out getOut(Data.TYPE type) {
- switch(type) {
- case DEFAULT:
- return defaultOut;
- case JSON:
- return outJSON;
- case XML:
- return outXML;
- case RAW:
- return outRAW;
- default:
- return defaultOut;
- }
- }
-
- public int logType(org.onap.aaf.inno.env.Data.TYPE ot) {
- switch(ot) {
- case JSON:
- return Env.JSON;
- default:
- return Env.XML;
- }
- }
-
-
- public RosettaEnv getEnv() {
- return env;
- }
-
-
- public Data.TYPE getInType() {
- return inType;
- }
-
- public Data.TYPE getOutType() {
- return outType;
- }
-
- public RosettaDF<T> option(int option) {
- defOption = option;
-
- return this;
- }
-
- /**
- * Assigning Root Marshal Object
- *
- * Will wrap with DocMarshal Object if not already
- *
- * @param marshal
- * @return
- */
- public RosettaDF<T> rootMarshal(Marshal<T> marshal) {
- if(marshal instanceof DocMarshal) {
- this.marshal = marshal;
- } else {
- this.marshal = DocMarshal.root(marshal);
- }
- return this;
- }
-
- public void direct(Trans trans, T t, OutputStream os, boolean ... options) throws APIException, IOException {
- Out out = getOut(outType);
- TimeTaken tt = trans.start(out.logName(),logType(outType)); // determine from Out.. without dependency on Env?
- try {
- if(marshal==null) { // Unknown marshaller... do working XML marshal/extraction
- StringWriter sw = new StringWriter();
- jaxMar.marshal(trans.debug(), t, sw, options);
- out.extract(new StringReader(sw.toString()), new OutputStreamWriter(os), inXML,options);
- } else {
- out.extract(t, new OutputStreamWriter(os), marshal,options);
- }
- } catch (Exception e) {
- throw new APIException(e);
- } finally {
- tt.done();
- }
- }
-
- public void direct(Trans trans, T t, Writer writer, boolean ... options) throws APIException, IOException {
- Out out = getOut(outType);
- TimeTaken tt = trans.start(out.logName(),logType(outType)); // determine from Out.. without dependency on Env?
- try {
- if(marshal==null) { // Unknown marshaller... do working XML marshal/extraction
- StringWriter sw = new StringWriter();
- jaxMar.marshal(trans.debug(), t, sw, options);
- out.extract(new StringReader(sw.toString()), writer, inXML,options);
- } else {
- out.extract(t, writer, marshal,options);
- }
- } catch (Exception e) {
- throw new APIException(e);
- } finally {
- tt.done();
- }
- }
-
-
-}
diff --git a/rosetta/src/main/java/org/onap/aaf/rosetta/env/RosettaData.java b/rosetta/src/main/java/org/onap/aaf/rosetta/env/RosettaData.java
deleted file mode 100644
index 55c4b29..0000000
--- a/rosetta/src/main/java/org/onap/aaf/rosetta/env/RosettaData.java
+++ /dev/null
@@ -1,313 +0,0 @@
-/*******************************************************************************
- * ============LICENSE_START====================================================
- * * org.onap.aaf
- * * ===========================================================================
- * * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
- * * ===========================================================================
- * * Licensed under the Apache License, Version 2.0 (the "License");
- * * you may not use this file except in compliance with the License.
- * * You may obtain a copy of the License at
- * *
- * * http://www.apache.org/licenses/LICENSE-2.0
- * *
- * * Unless required by applicable law or agreed to in writing, software
- * * distributed under the License is distributed on an "AS IS" BASIS,
- * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * * See the License for the specific language governing permissions and
- * * limitations under the License.
- * * ============LICENSE_END====================================================
- * *
- * * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * *
- ******************************************************************************/
-package org.onap.aaf.rosetta.env;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.io.OutputStream;
-import java.io.OutputStreamWriter;
-import java.io.Reader;
-import java.io.StringReader;
-import java.io.StringWriter;
-import java.io.Writer;
-
-import org.onap.aaf.inno.env.APIException;
-import org.onap.aaf.inno.env.Data;
-import org.onap.aaf.inno.env.Env;
-import org.onap.aaf.inno.env.TimeTaken;
-import org.onap.aaf.rosetta.Out;
-import org.onap.aaf.rosetta.Parse;
-import org.onap.aaf.rosetta.Saved;
-
-public class RosettaData<T> implements Data<T>{
- private Env trans;
- private RosettaDF<T> df;
- private Saved saved;
- private TYPE inType, outType;
- // Note: This is an array of boolean in order to pass into other methods
- private boolean options[] = new boolean[] {false, false};
- // Temp Storage of XML. Only when we must use JAXB to read in Objects
- private String xml,json;
-
- // package on purpose
- RosettaData(Env env, RosettaDF<T> rosettaDF) {
- df = rosettaDF;
- saved = new Saved(); // Note: Saved constructs storage as needed...
- trans = env;
- inType = df.getInType();
- outType = df.getOutType(); // take defaults
- }
-
-// // @Override
- public RosettaData<T> in(TYPE rosettaType) {
- inType = rosettaType;
- return this;
- }
-
-// // @Override
- public RosettaData<T> out(TYPE rosettaType) {
- outType = rosettaType;
- return this;
- }
-
-// // @Override
- public RosettaData<T> load(Reader rdr) throws APIException {
- Parse<Reader,?> in = df.getIn(inType);
- TimeTaken tt = in.start(trans);
- try {
- saved.extract(rdr, (Writer)null, in);
- xml=json=null;
- } catch (Exception e) {
- throw new APIException(e);
- } finally {
- tt.done();
- }
- return this;
- }
-
- // @Override
- public RosettaData<T> load(InputStream is) throws APIException {
- Parse<Reader,?> in = df.getIn(inType);
- TimeTaken tt = in.start(trans);
- try {
- saved.extract(new InputStreamReader(is), (Writer)null, in);
- xml=json=null;
- } catch (Exception e) {
- throw new APIException(e);
- } finally {
- tt.done();
- }
- return this;
- }
-
- // @Override
- public RosettaData<T> load(String str) throws APIException {
- Parse<Reader,?> in = df.getIn(inType);
- TimeTaken tt = in.start(trans);
- try {
- saved.extract(new StringReader(str), (Writer)null, in);
- switch(inType) {
- case XML:
- xml = str;
- break;
- case JSON:
- json = str;
- break;
- default:
-
- }
- } catch (Exception e) {
- throw new APIException(e);
- } finally {
- tt.done();
- }
- return this;
- }
-
- // @Override
- public RosettaData<T> load(T t) throws APIException {
- Parse<?,?> in = df.getIn(inType);
- TimeTaken tt = in.start(trans);
- try {
- if(df.marshal==null) { // Unknown marshaller... do working XML marshal/extraction
- StringWriter sw = new StringWriter();
- df.jaxMar.marshal(trans.debug(), t, sw, options);
- saved.extract(new StringReader(xml = sw.toString()), (Writer)null, df.inXML);
- } else {
- saved.extract(t, (Writer)null, df.marshal);
- }
- } catch (Exception e) {
- throw new APIException(e);
- } finally {
- tt.done();
- }
- return this;
- }
-
- public Saved getEvents() {
- return saved;
- }
-
- // @Override
- public T asObject() throws APIException {
- Out out = df.getOut(TYPE.XML);
- TimeTaken tt = trans.start(out.logName(),df.logType(outType)); // determine from Out.. without dependency on Env?
- try {
- //TODO Replace JAXB with Direct Object method!!!
- StringWriter sw = new StringWriter();
- out.extract(null, sw, saved);
- return df.jaxUmar.unmarshal(trans.debug(), sw.toString());
- } catch (Exception e) {
- throw new APIException(e);
- } finally {
- tt.done();
- }
- }
-
- // @Override
- public String asString() throws APIException {
- Out out = df.getOut(outType);
- TimeTaken tt = trans.start(out.logName(),df.logType(outType)); // determine from Out.. without dependency on Env?
- try {
- if(outType==TYPE.XML) {
- if(xml==null) {
- StringWriter sw = new StringWriter();
- out.extract(null, sw, saved, options);
- xml = sw.toString();
- }
- return xml;
- } else { // is JSON
- if(json==null) {
- StringWriter sw = new StringWriter();
- out.extract(null, sw, saved, options);
- json = sw.toString();
- }
- return json;
- }
- } catch (Exception e) {
- throw new APIException(e);
- } finally {
- tt.done();
- }
- }
-
-
- // @Override
- public RosettaData<T> to(OutputStream os) throws APIException, IOException {
- Out out = df.getOut(outType);
- TimeTaken tt = trans.start(out.logName(),df.logType(outType)); // determine from Out.. without dependency on Env?
- try {
- if(outType==TYPE.XML && xml!=null) {
- os.write(xml.getBytes());
- } else if(outType==TYPE.JSON && json!=null) {
- os.write(json.getBytes());
- } else {
- out.extract(null, os, saved, options);
- }
- } catch (Exception e) {
- throw new APIException(e);
- } finally {
- tt.done();
- }
- return this;
- }
-
- // @Override
- public RosettaData<T> to(Writer writer) throws APIException, IOException {
- Out out = df.getOut(outType);
- TimeTaken tt = trans.start(out.logName(),df.logType(outType)); // determine from Out.. without dependency on Env?
- try {
- if(outType==TYPE.XML && xml!=null) {
- writer.append(xml);
- } else if(outType==TYPE.JSON && json!=null) {
- writer.append(json);
- } else {
- out.extract(null, writer, saved, options);
- }
- } catch (Exception e) {
- throw new APIException(e);
- } finally {
- tt.done();
- }
- return this;
- }
-
- // @Override
- public Class<T> getTypeClass() {
- return df.getTypeClass();
- }
-
- private static final boolean[] emptyOption = new boolean[0];
-
- public void direct(InputStream is, OutputStream os) throws APIException, IOException {
- direct(is,os,emptyOption);
- }
-
- public void direct(Reader reader, Writer writer, boolean ... options) throws APIException, IOException {
- Parse<Reader,?> in = df.getIn(inType);
- Out out = df.getOut(outType);
- TimeTaken tt = trans.start(out.logName(),df.logType(outType)); // determine from Out.. without dependency on Env?
- try {
- out.extract(reader, writer, in,options);
- } catch (Exception e) {
- throw new APIException(e);
- } finally {
- tt.done();
- }
- }
-
- public void direct(T t, Writer writer, boolean ... options) throws APIException, IOException {
- Out out = df.getOut(outType);
- TimeTaken tt = trans.start(out.logName(),df.logType(outType)); // determine from Out.. without dependency on Env?
- try {
- if(df.marshal==null) { // Unknown marshaller... do working XML marshal/extraction
- StringWriter sw = new StringWriter();
- df.jaxMar.marshal(trans.debug(), t, sw, options);
- out.extract(new StringReader(xml = sw.toString()), writer, df.inXML,options);
- } else {
- out.extract(t, writer, df.marshal,options);
- }
- } catch (Exception e) {
- throw new APIException(e);
- } finally {
- tt.done();
- }
- }
-
- public void direct(T t, OutputStream os, boolean ... options) throws APIException, IOException {
- Out out = df.getOut(outType);
- TimeTaken tt = trans.start(out.logName(),df.logType(outType)); // determine from Out.. without dependency on Env?
- try {
- if(df.marshal==null) { // Unknown marshaller... do working XML marshal/extraction
- if(outType.equals(TYPE.XML)) {
- df.jaxMar.marshal(trans.debug(), t, os, options);
- } else {
- StringWriter sw = new StringWriter();
- df.jaxMar.marshal(trans.debug(), t, sw, options);
- out.extract(new StringReader(xml = sw.toString()), new OutputStreamWriter(os), df.inXML,options);
- }
- } else {
- out.extract(t, new OutputStreamWriter(os), df.marshal,options);
- }
-
- } catch (Exception e) {
- throw new APIException(e);
- } finally {
- tt.done();
- }
- }
-
-
- public void direct(InputStream is, OutputStream os, boolean ... options) throws APIException, IOException {
- direct(new InputStreamReader(is),new OutputStreamWriter(os), options);
- }
-
- // // @Override
- public RosettaData<T> option(int option) {
- options[0] = (option&Data.PRETTY)==Data.PRETTY;
- options[1] = (option&Data.FRAGMENT)==Data.FRAGMENT;
- return this;
- }
-
-}
diff --git a/rosetta/src/main/java/org/onap/aaf/rosetta/env/RosettaEnv.java b/rosetta/src/main/java/org/onap/aaf/rosetta/env/RosettaEnv.java
deleted file mode 100644
index 8138d47..0000000
--- a/rosetta/src/main/java/org/onap/aaf/rosetta/env/RosettaEnv.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*******************************************************************************
- * ============LICENSE_START====================================================
- * * org.onap.aaf
- * * ===========================================================================
- * * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
- * * ===========================================================================
- * * Licensed under the Apache License, Version 2.0 (the "License");
- * * you may not use this file except in compliance with the License.
- * * You may obtain a copy of the License at
- * *
- * * http://www.apache.org/licenses/LICENSE-2.0
- * *
- * * Unless required by applicable law or agreed to in writing, software
- * * distributed under the License is distributed on an "AS IS" BASIS,
- * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * * See the License for the specific language governing permissions and
- * * limitations under the License.
- * * ============LICENSE_END====================================================
- * *
- * * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * *
- ******************************************************************************/
-package org.onap.aaf.rosetta.env;
-
-import java.applet.Applet;
-import java.util.Properties;
-
-import javax.xml.namespace.QName;
-import javax.xml.validation.Schema;
-
-import org.onap.aaf.inno.env.APIException;
-
-/**
- * An essential Implementation of Env, which will fully function, without any sort
- * of configuration.
- *
- * Use as a basis for Group level Env, just overriding where needed.
- *
- */
-public class RosettaEnv extends org.onap.aaf.inno.env.impl.BasicEnv {
-
- public RosettaEnv() {
- super();
- }
-
- public RosettaEnv(Applet applet, String... tags) {
- super(applet, tags);
- }
-
- public RosettaEnv(String[] args) {
- super(args);
- }
-
- public RosettaEnv(String tag, String[] args) {
- super(tag, args);
- }
-
- public RosettaEnv(String tag, Properties props) {
- super(tag, props);
- }
-
- public RosettaEnv(Properties props) {
- super(props);
- }
-
- @SuppressWarnings("unchecked")
- @Override
- public <T> RosettaDF<T> newDataFactory(Class<?>... classes) throws APIException {
- return new RosettaDF<T>(this, null, null, (Class<T>)classes[0]);
- }
-
- @SuppressWarnings("unchecked")
- @Override
- public <T> RosettaDF<T> newDataFactory(Schema schema, Class<?>... classes) throws APIException {
- return new RosettaDF<T>(this, schema, null, (Class<T>)classes[0]);
- }
-
- @SuppressWarnings("unchecked")
- @Override
- public<T> RosettaDF<T> newDataFactory(QName qName, Class<?> ... classes) throws APIException {
- return new RosettaDF<T>(this, null, qName.getNamespaceURI(),(Class<T>)classes[0]);
- }
-
- @SuppressWarnings("unchecked")
- @Override
- public<T> RosettaDF<T> newDataFactory(Schema schema, QName qName, Class<?> ... classes) throws APIException {
- return new RosettaDF<T>(this, schema,qName.getNamespaceURI(),(Class<T>)classes[0]);
- }
-}