diff --git a/ApplicationAmicalsatCli/src/main/java/org/josast/app/amicalsat/cli/option/ReceiveDataCmd.java b/ApplicationAmicalsatCli/src/main/java/org/josast/app/amicalsat/cli/option/ReceiveDataCmd.java
index f891138dbd6780fc1c58251eb19dfc1e794e73bd..2079b9ccaa4510b3b3e94a84d81997a26f7efcb3 100644
--- a/ApplicationAmicalsatCli/src/main/java/org/josast/app/amicalsat/cli/option/ReceiveDataCmd.java
+++ b/ApplicationAmicalsatCli/src/main/java/org/josast/app/amicalsat/cli/option/ReceiveDataCmd.java
@@ -7,6 +7,7 @@ import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.logging.Logger;
+import org.josast.AX25.generated.Ax25frames;
import org.josast.ModuleSoundModem.SoundModemClient;
import org.josast.amicalsat.Frame;
import org.josast.amicalsat.FrameFactory;
@@ -33,8 +34,18 @@ public class ReceiveDataCmd implements Cmd {
while (sm.isOpen()) {
byte[] temp = sm.receivedRawData();
+
+
+
+
try {
FrameTlmAmicalsat cube = new FrameTlmAmicalsat(new ByteBufferKaitaiStream(temp));
+//AX25
+ Ax25frames ax25 = new Ax25frames(new ByteBufferKaitaiStream(temp));
+ byte [] info = ax25.ax25Frame().ax25Info();
+ System.out.println(new String (info));
+
+
String tlmArea = cube.frameTlmEntrySat().payload().tlmArea();
String typeFrame = cube.frameTlmEntrySat().payload().tlmType();
Frame fm = ff.creerFrame(tlmArea, typeFrame);
diff --git a/ModuleSatelliteDatabase/pom.xml b/ModuleSatelliteDatabase/pom.xml
new file mode 100644
index 0000000000000000000000000000000000000000..cb8414d13a4f268adc56a8e81e751dda393c26dc
--- /dev/null
+++ b/ModuleSatelliteDatabase/pom.xml
@@ -0,0 +1,181 @@
+
+
+
+ 4.0.0
+
+
+ org.josast
+ JOSAST-parent
+ 0.0.2-SNAPSHOT
+
+
+ ModuleSatelliteDatabase
+ 0.0.1-SNAPSHOT
+
+ ModuleSatelliteDatabase
+
+ http://www.example.com
+
+
+ UTF-8
+ 1.8
+ 1.8
+
+
+ 1.2.0
+ 2.4.0-b180830.0359
+ 3.0.0-M2
+ 3.0.0-M2
+ 3.0.0-M2
+
+
+
+
+ junit
+ junit
+ 4.11
+ test
+
+
+ com.sun.activation
+ javax.activation
+ ${javax.activation.version}
+
+
+ commons-cli
+ commons-cli
+ 1.4
+
+
+
+
+ javax.xml.bind
+ jaxb-api
+ ${jaxb.api.version}
+
+
+
+ com.sun.xml.bind
+ jaxb-core
+ ${jaxb.core.version}
+
+
+
+ com.sun.xml.bind
+ jaxb-impl
+ ${jaxb.impl.version}
+
+
+
+ com.sun.xml.bind
+ jaxb-osgi
+ ${jaxb.osgi.version}
+
+
+
+
+ org.apache.logging.log4j
+ log4j-core
+ 2.8.2
+
+
+ org.apache.logging.log4j
+ log4j-api
+ 2.8.2
+
+
+
+
+ org.json
+ json
+ 20190722
+
+
+
+ com.github.spotbugs
+ spotbugs-maven-plugin
+ 4.0.0
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ com.github.spotbugs
+ spotbugs-maven-plugin
+ 4.0.0
+
+
+ check
+ verify
+
+ check
+
+
+
+
+
+
+
+ maven-clean-plugin
+ 3.1.0
+
+
+
+ maven-resources-plugin
+ 3.0.2
+
+
+ maven-compiler-plugin
+ 3.8.0
+
+
+ maven-surefire-plugin
+ 2.22.1
+
+
+ maven-jar-plugin
+ 3.0.2
+
+
+ maven-install-plugin
+ 2.5.2
+
+
+ maven-deploy-plugin
+ 2.8.2
+
+
+
+ maven-site-plugin
+ 3.7.1
+
+
+ maven-project-info-reports-plugin
+ 3.0.0
+
+
+
+
+
+
+
+
+ com.github.spotbugs
+ spotbugs-maven-plugin
+ 4.0.0
+
+
+
+
+
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/AmsatList.java b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/AmsatList.java
new file mode 100644
index 0000000000000000000000000000000000000000..aa85722cf4c27136b99a57ae7229fc588c8b0b65
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/AmsatList.java
@@ -0,0 +1,78 @@
+//
+// Ce fichier a été généré par l'implémentation de référence JavaTM Architecture for XML Binding (JAXB), v2.2.8-b130911.1802
+// Voir http://java.sun.com/xml/jaxb
+// Toute modification apportée à ce fichier sera perdue lors de la recompilation du schéma source.
+// Généré le : 2019.09.10 à 07:57:31 PM CEST
+//
+
+
+package org.josast.AmsatList.generated;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ *
Le fragment de schéma suivant indique le contenu attendu figurant dans cette classe.
+ *
+ *
satellites;
+
+ /**
+ * Gets the value of the satellites property.
+ *
+ *
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a set
method for the satellites property.
+ *
+ *
+ * For example, to add a new item, do as follows:
+ *
+ * getSatellites().add(newItem);
+ *
+ *
+ *
+ *
+ * Objects of the following type(s) are allowed in the list
+ * {@link Satellites }
+ *
+ *
+ */
+ public List getSatellites() {
+ if (satellites == null) {
+ satellites = new ArrayList();
+ }
+ return this.satellites;
+ }
+
+}
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/Beacons.java b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/Beacons.java
new file mode 100644
index 0000000000000000000000000000000000000000..0fbc3cd2eaa34c99cd139c9ac7e6365688d87ed9
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/Beacons.java
@@ -0,0 +1,190 @@
+//
+// Ce fichier a été généré par l'implémentation de référence JavaTM Architecture for XML Binding (JAXB), v2.2.8-b130911.1802
+// Voir http://java.sun.com/xml/jaxb
+// Toute modification apportée à ce fichier sera perdue lors de la recompilation du schéma source.
+// Généré le : 2019.09.10 à 07:57:31 PM CEST
+//
+
+
+package org.josast.AmsatList.generated;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * Classe Java pour anonymous complex type.
+ *
+ *
Le fragment de schéma suivant indique le contenu attendu figurant dans cette classe.
+ *
+ *
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{}Name"/>
+ * <element ref="{}Frequency"/>
+ * <element ref="{}Modes" maxOccurs="unbounded"/>
+ * <element ref="{}Speed" minOccurs="0"/>
+ * <element ref="{}CallSign" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ *
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "name",
+ "frequency",
+ "modes",
+ "speed",
+ "callSign"
+})
+@XmlRootElement(name = "Beacons")
+public class Beacons {
+
+ @XmlElement(name = "Name", required = true)
+ protected String name;
+ @XmlElement(name = "Frequency", required = true)
+ protected String frequency;
+ @XmlElement(name = "Modes", required = true)
+ protected List modes;
+ @XmlElement(name = "Speed")
+ protected String speed;
+ @XmlElement(name = "CallSign")
+ protected String callSign;
+
+ /**
+ * Obtient la valeur de la propriété name.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * Définit la valeur de la propriété name.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setName(String value) {
+ this.name = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété frequency.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getFrequency() {
+ return frequency;
+ }
+
+ /**
+ * Définit la valeur de la propriété frequency.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setFrequency(String value) {
+ this.frequency = value;
+ }
+
+ /**
+ * Gets the value of the modes property.
+ *
+ *
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a set
method for the modes property.
+ *
+ *
+ * For example, to add a new item, do as follows:
+ *
+ * getModes().add(newItem);
+ *
+ *
+ *
+ *
+ * Objects of the following type(s) are allowed in the list
+ * {@link Modes }
+ *
+ *
+ */
+ public List getModes() {
+ if (modes == null) {
+ modes = new ArrayList();
+ }
+ return this.modes;
+ }
+
+ /**
+ * Obtient la valeur de la propriété speed.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getSpeed() {
+ return speed;
+ }
+
+ /**
+ * Définit la valeur de la propriété speed.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setSpeed(String value) {
+ this.speed = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété callSign.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getCallSign() {
+ return callSign;
+ }
+
+ /**
+ * Définit la valeur de la propriété callSign.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setCallSign(String value) {
+ this.callSign = value;
+ }
+
+}
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/Description.java b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/Description.java
new file mode 100644
index 0000000000000000000000000000000000000000..f6d8c2105c39a626521233798452b22778942696
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/Description.java
@@ -0,0 +1,101 @@
+//
+// Ce fichier a été généré par l'implémentation de référence JavaTM Architecture for XML Binding (JAXB), v2.2.8-b130911.1802
+// Voir http://java.sun.com/xml/jaxb
+// Toute modification apportée à ce fichier sera perdue lors de la recompilation du schéma source.
+// Généré le : 2019.09.10 à 07:57:31 PM CEST
+//
+
+
+package org.josast.AmsatList.generated;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.XmlValue;
+import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+
+
+/**
+ * Classe Java pour anonymous complex type.
+ *
+ *
Le fragment de schéma suivant indique le contenu attendu figurant dans cette classe.
+ *
+ *
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attribute name="lang" type="{http://www.w3.org/2001/XMLSchema}NCName" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ *
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "content"
+})
+@XmlRootElement(name = "Description")
+public class Description {
+
+ @XmlValue
+ protected String content;
+ @XmlAttribute(name = "lang")
+ @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
+ @XmlSchemaType(name = "NCName")
+ protected String lang;
+
+ /**
+ * Obtient la valeur de la propriété content.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getContent() {
+ return content;
+ }
+
+ /**
+ * Définit la valeur de la propriété content.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setContent(String value) {
+ this.content = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété lang.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getLang() {
+ return lang;
+ }
+
+ /**
+ * Définit la valeur de la propriété lang.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setLang(String value) {
+ this.lang = value;
+ }
+
+}
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/DescriptionURL.java b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/DescriptionURL.java
new file mode 100644
index 0000000000000000000000000000000000000000..a7d79e619c3fafd17291d051dc121d7b09cc40a3
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/DescriptionURL.java
@@ -0,0 +1,129 @@
+//
+// Ce fichier a été généré par l'implémentation de référence JavaTM Architecture for XML Binding (JAXB), v2.2.8-b130911.1802
+// Voir http://java.sun.com/xml/jaxb
+// Toute modification apportée à ce fichier sera perdue lors de la recompilation du schéma source.
+// Généré le : 2019.09.10 à 07:57:31 PM CEST
+//
+
+
+package org.josast.AmsatList.generated;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * Classe Java pour anonymous complex type.
+ *
+ *
Le fragment de schéma suivant indique le contenu attendu figurant dans cette classe.
+ *
+ *
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{}Title"/>
+ * <element ref="{}Value"/>
+ * <element ref="{}Description" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ *
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "title",
+ "value",
+ "description"
+})
+@XmlRootElement(name = "DescriptionURL")
+public class DescriptionURL {
+
+ @XmlElement(name = "Title", required = true)
+ protected String title;
+ @XmlElement(name = "Value", required = true)
+ @XmlSchemaType(name = "anyURI")
+ protected String value;
+ @XmlElement(name = "Description")
+ protected Description description;
+
+ /**
+ * Obtient la valeur de la propriété title.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getTitle() {
+ return title;
+ }
+
+ /**
+ * Définit la valeur de la propriété title.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setTitle(String value) {
+ this.title = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété value.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getValue() {
+ return value;
+ }
+
+ /**
+ * Définit la valeur de la propriété value.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setValue(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété description.
+ *
+ * @return
+ * possible object is
+ * {@link Description }
+ *
+ */
+ public Description getDescription() {
+ return description;
+ }
+
+ /**
+ * Définit la valeur de la propriété description.
+ *
+ * @param value
+ * allowed object is
+ * {@link Description }
+ *
+ */
+ public void setDescription(Description value) {
+ this.description = value;
+ }
+
+}
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/FrequencyDownlink.java b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/FrequencyDownlink.java
new file mode 100644
index 0000000000000000000000000000000000000000..89a006673b5c1ba6cf0ecb871af8df1be34cd594
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/FrequencyDownlink.java
@@ -0,0 +1,100 @@
+//
+// Ce fichier a été généré par l'implémentation de référence JavaTM Architecture for XML Binding (JAXB), v2.2.8-b130911.1802
+// Voir http://java.sun.com/xml/jaxb
+// Toute modification apportée à ce fichier sera perdue lors de la recompilation du schéma source.
+// Généré le : 2019.09.10 à 07:57:31 PM CEST
+//
+
+
+package org.josast.AmsatList.generated;
+
+import java.math.BigInteger;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * Classe Java pour anonymous complex type.
+ *
+ *
Le fragment de schéma suivant indique le contenu attendu figurant dans cette classe.
+ *
+ *
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{}FrequencyBegin" minOccurs="0"/>
+ * <element ref="{}FrequencyEnd" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ *
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "frequencyBegin",
+ "frequencyEnd"
+})
+@XmlRootElement(name = "FrequencyDownlink")
+public class FrequencyDownlink {
+
+ @XmlElement(name = "FrequencyBegin")
+ protected BigInteger frequencyBegin;
+ @XmlElement(name = "FrequencyEnd")
+ protected BigInteger frequencyEnd;
+
+ /**
+ * Obtient la valeur de la propriété frequencyBegin.
+ *
+ * @return
+ * possible object is
+ * {@link BigInteger }
+ *
+ */
+ public BigInteger getFrequencyBegin() {
+ return frequencyBegin;
+ }
+
+ /**
+ * Définit la valeur de la propriété frequencyBegin.
+ *
+ * @param value
+ * allowed object is
+ * {@link BigInteger }
+ *
+ */
+ public void setFrequencyBegin(BigInteger value) {
+ this.frequencyBegin = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété frequencyEnd.
+ *
+ * @return
+ * possible object is
+ * {@link BigInteger }
+ *
+ */
+ public BigInteger getFrequencyEnd() {
+ return frequencyEnd;
+ }
+
+ /**
+ * Définit la valeur de la propriété frequencyEnd.
+ *
+ * @param value
+ * allowed object is
+ * {@link BigInteger }
+ *
+ */
+ public void setFrequencyEnd(BigInteger value) {
+ this.frequencyEnd = value;
+ }
+
+}
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/FrequencyUplink.java b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/FrequencyUplink.java
new file mode 100644
index 0000000000000000000000000000000000000000..d4251cf0ac64f13b7921f1c8a50fa108a145256e
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/FrequencyUplink.java
@@ -0,0 +1,100 @@
+//
+// Ce fichier a été généré par l'implémentation de référence JavaTM Architecture for XML Binding (JAXB), v2.2.8-b130911.1802
+// Voir http://java.sun.com/xml/jaxb
+// Toute modification apportée à ce fichier sera perdue lors de la recompilation du schéma source.
+// Généré le : 2019.09.10 à 07:57:31 PM CEST
+//
+
+
+package org.josast.AmsatList.generated;
+
+import java.math.BigInteger;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * Classe Java pour anonymous complex type.
+ *
+ *
Le fragment de schéma suivant indique le contenu attendu figurant dans cette classe.
+ *
+ *
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{}FrequencyBegin" minOccurs="0"/>
+ * <element ref="{}FrequencyEnd" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ *
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "frequencyBegin",
+ "frequencyEnd"
+})
+@XmlRootElement(name = "FrequencyUplink")
+public class FrequencyUplink {
+
+ @XmlElement(name = "FrequencyBegin")
+ protected BigInteger frequencyBegin;
+ @XmlElement(name = "FrequencyEnd")
+ protected BigInteger frequencyEnd;
+
+ /**
+ * Obtient la valeur de la propriété frequencyBegin.
+ *
+ * @return
+ * possible object is
+ * {@link BigInteger }
+ *
+ */
+ public BigInteger getFrequencyBegin() {
+ return frequencyBegin;
+ }
+
+ /**
+ * Définit la valeur de la propriété frequencyBegin.
+ *
+ * @param value
+ * allowed object is
+ * {@link BigInteger }
+ *
+ */
+ public void setFrequencyBegin(BigInteger value) {
+ this.frequencyBegin = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété frequencyEnd.
+ *
+ * @return
+ * possible object is
+ * {@link BigInteger }
+ *
+ */
+ public BigInteger getFrequencyEnd() {
+ return frequencyEnd;
+ }
+
+ /**
+ * Définit la valeur de la propriété frequencyEnd.
+ *
+ * @param value
+ * allowed object is
+ * {@link BigInteger }
+ *
+ */
+ public void setFrequencyEnd(BigInteger value) {
+ this.frequencyEnd = value;
+ }
+
+}
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/IARUCoordination.java b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/IARUCoordination.java
new file mode 100644
index 0000000000000000000000000000000000000000..23cbef7741c1ed09446b9265e5d185982968beef
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/IARUCoordination.java
@@ -0,0 +1,235 @@
+//
+// Ce fichier a été généré par l'implémentation de référence JavaTM Architecture for XML Binding (JAXB), v2.2.8-b130911.1802
+// Voir http://java.sun.com/xml/jaxb
+// Toute modification apportée à ce fichier sera perdue lors de la recompilation du schéma source.
+// Généré le : 2019.09.10 à 07:57:31 PM CEST
+//
+
+
+package org.josast.AmsatList.generated;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.datatype.XMLGregorianCalendar;
+
+
+/**
+ * Classe Java pour anonymous complex type.
+ *
+ *
Le fragment de schéma suivant indique le contenu attendu figurant dans cette classe.
+ *
+ *
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{}Coordinated"/>
+ * <element ref="{}ProcessusStatus"/>
+ * <element ref="{}URL" minOccurs="0"/>
+ * <element ref="{}ResponsibleOperator" minOccurs="0"/>
+ * <element ref="{}ApplicationDate" minOccurs="0"/>
+ * <element ref="{}CoordinationDecisionDate" minOccurs="0"/>
+ * <element ref="{}ContactPerson" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ *
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "coordinated",
+ "processusStatus",
+ "url",
+ "responsibleOperator",
+ "applicationDate",
+ "coordinationDecisionDate",
+ "contactPerson"
+})
+@XmlRootElement(name = "IARUCoordination")
+public class IARUCoordination {
+
+ @XmlElement(name = "Coordinated", defaultValue = "false")
+ protected boolean coordinated;
+ @XmlElement(name = "ProcessusStatus", required = true, defaultValue = "Not submitted")
+ protected String processusStatus;
+ @XmlElement(name = "URL")
+ protected String url;
+ @XmlElement(name = "ResponsibleOperator")
+ protected String responsibleOperator;
+ @XmlElement(name = "ApplicationDate")
+ @XmlSchemaType(name = "date")
+ protected XMLGregorianCalendar applicationDate;
+ @XmlElement(name = "CoordinationDecisionDate")
+ @XmlSchemaType(name = "date")
+ protected XMLGregorianCalendar coordinationDecisionDate;
+ @XmlElement(name = "ContactPerson")
+ protected String contactPerson;
+
+ /**
+ * Obtient la valeur de la propriété coordinated.
+ *
+ */
+ public boolean isCoordinated() {
+ return coordinated;
+ }
+
+ /**
+ * Définit la valeur de la propriété coordinated.
+ *
+ */
+ public void setCoordinated(boolean value) {
+ this.coordinated = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété processusStatus.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getProcessusStatus() {
+ return processusStatus;
+ }
+
+ /**
+ * Définit la valeur de la propriété processusStatus.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setProcessusStatus(String value) {
+ this.processusStatus = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété url.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getURL() {
+ return url;
+ }
+
+ /**
+ * Définit la valeur de la propriété url.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setURL(String value) {
+ this.url = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété responsibleOperator.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getResponsibleOperator() {
+ return responsibleOperator;
+ }
+
+ /**
+ * Définit la valeur de la propriété responsibleOperator.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setResponsibleOperator(String value) {
+ this.responsibleOperator = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété applicationDate.
+ *
+ * @return
+ * possible object is
+ * {@link XMLGregorianCalendar }
+ *
+ */
+ public XMLGregorianCalendar getApplicationDate() {
+ return applicationDate;
+ }
+
+ /**
+ * Définit la valeur de la propriété applicationDate.
+ *
+ * @param value
+ * allowed object is
+ * {@link XMLGregorianCalendar }
+ *
+ */
+ public void setApplicationDate(XMLGregorianCalendar value) {
+ this.applicationDate = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété coordinationDecisionDate.
+ *
+ * @return
+ * possible object is
+ * {@link XMLGregorianCalendar }
+ *
+ */
+ public XMLGregorianCalendar getCoordinationDecisionDate() {
+ return coordinationDecisionDate;
+ }
+
+ /**
+ * Définit la valeur de la propriété coordinationDecisionDate.
+ *
+ * @param value
+ * allowed object is
+ * {@link XMLGregorianCalendar }
+ *
+ */
+ public void setCoordinationDecisionDate(XMLGregorianCalendar value) {
+ this.coordinationDecisionDate = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété contactPerson.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getContactPerson() {
+ return contactPerson;
+ }
+
+ /**
+ * Définit la valeur de la propriété contactPerson.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setContactPerson(String value) {
+ this.contactPerson = value;
+ }
+
+}
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/Information.java b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/Information.java
new file mode 100644
index 0000000000000000000000000000000000000000..51ce82b040291269eddc2b364bbadc0010cd4063
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/Information.java
@@ -0,0 +1,91 @@
+//
+// Ce fichier a été généré par l'implémentation de référence JavaTM Architecture for XML Binding (JAXB), v2.2.8-b130911.1802
+// Voir http://java.sun.com/xml/jaxb
+// Toute modification apportée à ce fichier sera perdue lors de la recompilation du schéma source.
+// Généré le : 2019.09.10 à 07:57:31 PM CEST
+//
+
+
+package org.josast.AmsatList.generated;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.JAXBElement;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElementRef;
+import javax.xml.bind.annotation.XmlElementRefs;
+import javax.xml.bind.annotation.XmlMixed;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * Classe Java pour anonymous complex type.
+ *
+ *
Le fragment de schéma suivant indique le contenu attendu figurant dans cette classe.
+ *
+ *
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{}Title"/>
+ * <element ref="{}Value"/>
+ * <element ref="{}Description"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ *
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "content"
+})
+@XmlRootElement(name = "Information")
+public class Information {
+
+ @XmlElementRefs({
+ @XmlElementRef(name = "Description", type = Description.class),
+ @XmlElementRef(name = "Value", type = JAXBElement.class),
+ @XmlElementRef(name = "Title", type = JAXBElement.class)
+ })
+ @XmlMixed
+ protected List content;
+
+ /**
+ * Gets the value of the content property.
+ *
+ *
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a set
method for the content property.
+ *
+ *
+ * For example, to add a new item, do as follows:
+ *
+ * getContent().add(newItem);
+ *
+ *
+ *
+ *
+ * Objects of the following type(s) are allowed in the list
+ * {@link JAXBElement }{@code <}{@link String }{@code >}
+ * {@link Description }
+ * {@link String }
+ * {@link JAXBElement }{@code <}{@link String }{@code >}
+ *
+ *
+ */
+ public List getContent() {
+ if (content == null) {
+ content = new ArrayList();
+ }
+ return this.content;
+ }
+
+}
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/LaunchData.java b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/LaunchData.java
new file mode 100644
index 0000000000000000000000000000000000000000..80392890254c05243921cf0904df5c61252fe1d1
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/LaunchData.java
@@ -0,0 +1,187 @@
+//
+// Ce fichier a été généré par l'implémentation de référence JavaTM Architecture for XML Binding (JAXB), v2.2.8-b130911.1802
+// Voir http://java.sun.com/xml/jaxb
+// Toute modification apportée à ce fichier sera perdue lors de la recompilation du schéma source.
+// Généré le : 2019.09.10 à 07:57:31 PM CEST
+//
+
+
+package org.josast.AmsatList.generated;
+
+import java.math.BigInteger;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.datatype.XMLGregorianCalendar;
+
+
+/**
+ * Classe Java pour anonymous complex type.
+ *
+ *
Le fragment de schéma suivant indique le contenu attendu figurant dans cette classe.
+ *
+ *
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{}OperatorCountry"/>
+ * <element ref="{}OperatorName"/>
+ * <element ref="{}LaunchMass" minOccurs="0"/>
+ * <element ref="{}LaunchDate"/>
+ * <element ref="{}LaunchingSite"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ *
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "operatorCountry",
+ "operatorName",
+ "launchMass",
+ "launchDate",
+ "launchingSite"
+})
+@XmlRootElement(name = "LaunchData")
+public class LaunchData {
+
+ @XmlElement(name = "OperatorCountry", required = true)
+ protected String operatorCountry;
+ @XmlElement(name = "OperatorName", required = true)
+ protected String operatorName;
+ @XmlElement(name = "LaunchMass")
+ protected BigInteger launchMass;
+ @XmlElement(name = "LaunchDate", required = true)
+ @XmlSchemaType(name = "date")
+ protected XMLGregorianCalendar launchDate;
+ @XmlElement(name = "LaunchingSite", required = true)
+ protected String launchingSite;
+
+ /**
+ * Obtient la valeur de la propriété operatorCountry.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getOperatorCountry() {
+ return operatorCountry;
+ }
+
+ /**
+ * Définit la valeur de la propriété operatorCountry.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setOperatorCountry(String value) {
+ this.operatorCountry = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété operatorName.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getOperatorName() {
+ return operatorName;
+ }
+
+ /**
+ * Définit la valeur de la propriété operatorName.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setOperatorName(String value) {
+ this.operatorName = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété launchMass.
+ *
+ * @return
+ * possible object is
+ * {@link BigInteger }
+ *
+ */
+ public BigInteger getLaunchMass() {
+ return launchMass;
+ }
+
+ /**
+ * Définit la valeur de la propriété launchMass.
+ *
+ * @param value
+ * allowed object is
+ * {@link BigInteger }
+ *
+ */
+ public void setLaunchMass(BigInteger value) {
+ this.launchMass = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété launchDate.
+ *
+ * @return
+ * possible object is
+ * {@link XMLGregorianCalendar }
+ *
+ */
+ public XMLGregorianCalendar getLaunchDate() {
+ return launchDate;
+ }
+
+ /**
+ * Définit la valeur de la propriété launchDate.
+ *
+ * @param value
+ * allowed object is
+ * {@link XMLGregorianCalendar }
+ *
+ */
+ public void setLaunchDate(XMLGregorianCalendar value) {
+ this.launchDate = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété launchingSite.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getLaunchingSite() {
+ return launchingSite;
+ }
+
+ /**
+ * Définit la valeur de la propriété launchingSite.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setLaunchingSite(String value) {
+ this.launchingSite = value;
+ }
+
+}
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/Modes.java b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/Modes.java
new file mode 100644
index 0000000000000000000000000000000000000000..1fe97e1d86dc7cb83095f534904ea07d99b501b7
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/Modes.java
@@ -0,0 +1,127 @@
+//
+// Ce fichier a été généré par l'implémentation de référence JavaTM Architecture for XML Binding (JAXB), v2.2.8-b130911.1802
+// Voir http://java.sun.com/xml/jaxb
+// Toute modification apportée à ce fichier sera perdue lors de la recompilation du schéma source.
+// Généré le : 2019.09.10 à 07:57:31 PM CEST
+//
+
+
+package org.josast.AmsatList.generated;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * Classe Java pour anonymous complex type.
+ *
+ *
Le fragment de schéma suivant indique le contenu attendu figurant dans cette classe.
+ *
+ *
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{}Mode"/>
+ * <element ref="{}Speed" minOccurs="0"/>
+ * <element ref="{}Unit" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ *
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "mode",
+ "speed",
+ "unit"
+})
+@XmlRootElement(name = "Modes")
+public class Modes {
+
+ @XmlElement(name = "Mode", required = true)
+ protected String mode;
+ @XmlElement(name = "Speed")
+ protected String speed;
+ @XmlElement(name = "Unit")
+ protected String unit;
+
+ /**
+ * Obtient la valeur de la propriété mode.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getMode() {
+ return mode;
+ }
+
+ /**
+ * Définit la valeur de la propriété mode.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setMode(String value) {
+ this.mode = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété speed.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getSpeed() {
+ return speed;
+ }
+
+ /**
+ * Définit la valeur de la propriété speed.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setSpeed(String value) {
+ this.speed = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété unit.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getUnit() {
+ return unit;
+ }
+
+ /**
+ * Définit la valeur de la propriété unit.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setUnit(String value) {
+ this.unit = value;
+ }
+
+}
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/ObjectFactory.java b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/ObjectFactory.java
new file mode 100644
index 0000000000000000000000000000000000000000..b58547c97b8f97b2b7576fda9079770cb45c7af2
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/ObjectFactory.java
@@ -0,0 +1,496 @@
+//
+// Ce fichier a été généré par l'implémentation de référence JavaTM Architecture for XML Binding (JAXB), v2.2.8-b130911.1802
+// Voir http://java.sun.com/xml/jaxb
+// Toute modification apportée à ce fichier sera perdue lors de la recompilation du schéma source.
+// Généré le : 2019.09.10 à 07:57:31 PM CEST
+//
+
+
+package org.josast.AmsatList.generated;
+
+import java.math.BigDecimal;
+import java.math.BigInteger;
+import javax.xml.bind.JAXBElement;
+import javax.xml.bind.annotation.XmlElementDecl;
+import javax.xml.bind.annotation.XmlRegistry;
+import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+import javax.xml.datatype.XMLGregorianCalendar;
+import javax.xml.namespace.QName;
+
+
+/**
+ * This object contains factory methods for each
+ * Java content interface and Java element interface
+ * generated in the org.josast.AmsatList.generated package.
+ * An ObjectFactory allows you to programatically
+ * construct new instances of the Java representation
+ * for XML content. The Java representation of XML
+ * content can consist of schema derived interfaces
+ * and classes representing the binding of schema
+ * type definitions, element declarations and model
+ * groups. Factory methods for each of these are
+ * provided in this class.
+ *
+ */
+@XmlRegistry
+public class ObjectFactory {
+
+ private final static QName _LaunchMass_QNAME = new QName("", "LaunchMass");
+ private final static QName _FrequencyEnd_QNAME = new QName("", "FrequencyEnd");
+ private final static QName _InternationalID_QNAME = new QName("", "InternationalID");
+ private final static QName _OSCARNumber_QNAME = new QName("", "OSCARNumber");
+ private final static QName _Unit_QNAME = new QName("", "Unit");
+ private final static QName _ApplicationDate_QNAME = new QName("", "ApplicationDate");
+ private final static QName _CoordinationDecisionDate_QNAME = new QName("", "CoordinationDecisionDate");
+ private final static QName _OperatorCountry_QNAME = new QName("", "OperatorCountry");
+ private final static QName _URL_QNAME = new QName("", "URL");
+ private final static QName _ContactPerson_QNAME = new QName("", "ContactPerson");
+ private final static QName _OSCARName_QNAME = new QName("", "OSCARName");
+ private final static QName _Name_QNAME = new QName("", "Name");
+ private final static QName _UpdateDate_QNAME = new QName("", "UpdateDate");
+ private final static QName _CallSign_QNAME = new QName("", "CallSign");
+ private final static QName _Inverted_QNAME = new QName("", "Inverted");
+ private final static QName _NasaID_QNAME = new QName("", "NasaID");
+ private final static QName _Status_QNAME = new QName("", "Status");
+ private final static QName _FrequencyBegin_QNAME = new QName("", "FrequencyBegin");
+ private final static QName _Speed_QNAME = new QName("", "Speed");
+ private final static QName _OperatorName_QNAME = new QName("", "OperatorName");
+ private final static QName _LaunchingSite_QNAME = new QName("", "LaunchingSite");
+ private final static QName _Mode_QNAME = new QName("", "Mode");
+ private final static QName _Title_QNAME = new QName("", "Title");
+ private final static QName _ProcessusStatus_QNAME = new QName("", "ProcessusStatus");
+ private final static QName _ResponsibleOperator_QNAME = new QName("", "ResponsibleOperator");
+ private final static QName _ReportEmail_QNAME = new QName("", "ReportEmail");
+ private final static QName _Coordinated_QNAME = new QName("", "Coordinated");
+ private final static QName _SatelliteInformationStatus_QNAME = new QName("", "SatelliteInformationStatus");
+ private final static QName _Tone_QNAME = new QName("", "Tone");
+ private final static QName _Value_QNAME = new QName("", "Value");
+ private final static QName _Frequency_QNAME = new QName("", "Frequency");
+ private final static QName _LaunchDate_QNAME = new QName("", "LaunchDate");
+
+ /**
+ * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: org.josast.AmsatList.generated
+ *
+ */
+ public ObjectFactory() {
+ }
+
+ /**
+ * Create an instance of {@link LaunchData }
+ *
+ */
+ public LaunchData createLaunchData() {
+ return new LaunchData();
+ }
+
+ /**
+ * Create an instance of {@link DescriptionURL }
+ *
+ */
+ public DescriptionURL createDescriptionURL() {
+ return new DescriptionURL();
+ }
+
+ /**
+ * Create an instance of {@link Description }
+ *
+ */
+ public Description createDescription() {
+ return new Description();
+ }
+
+ /**
+ * Create an instance of {@link TelemetryData }
+ *
+ */
+ public TelemetryData createTelemetryData() {
+ return new TelemetryData();
+ }
+
+ /**
+ * Create an instance of {@link ReportURL }
+ *
+ */
+ public ReportURL createReportURL() {
+ return new ReportURL();
+ }
+
+ /**
+ * Create an instance of {@link SoftwareURL }
+ *
+ */
+ public SoftwareURL createSoftwareURL() {
+ return new SoftwareURL();
+ }
+
+ /**
+ * Create an instance of {@link Information }
+ *
+ */
+ public Information createInformation() {
+ return new Information();
+ }
+
+ /**
+ * Create an instance of {@link AmsatList }
+ *
+ */
+ public AmsatList createAmsatList() {
+ return new AmsatList();
+ }
+
+ /**
+ * Create an instance of {@link Satellites }
+ *
+ */
+ public Satellites createSatellites() {
+ return new Satellites();
+ }
+
+ /**
+ * Create an instance of {@link IARUCoordination }
+ *
+ */
+ public IARUCoordination createIARUCoordination() {
+ return new IARUCoordination();
+ }
+
+ /**
+ * Create an instance of {@link RadioData }
+ *
+ */
+ public RadioData createRadioData() {
+ return new RadioData();
+ }
+
+ /**
+ * Create an instance of {@link Beacons }
+ *
+ */
+ public Beacons createBeacons() {
+ return new Beacons();
+ }
+
+ /**
+ * Create an instance of {@link Modes }
+ *
+ */
+ public Modes createModes() {
+ return new Modes();
+ }
+
+ /**
+ * Create an instance of {@link Transponders }
+ *
+ */
+ public Transponders createTransponders() {
+ return new Transponders();
+ }
+
+ /**
+ * Create an instance of {@link FrequencyUplink }
+ *
+ */
+ public FrequencyUplink createFrequencyUplink() {
+ return new FrequencyUplink();
+ }
+
+ /**
+ * Create an instance of {@link FrequencyDownlink }
+ *
+ */
+ public FrequencyDownlink createFrequencyDownlink() {
+ return new FrequencyDownlink();
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "LaunchMass")
+ public JAXBElement createLaunchMass(BigInteger value) {
+ return new JAXBElement(_LaunchMass_QNAME, BigInteger.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "FrequencyEnd")
+ public JAXBElement createFrequencyEnd(BigInteger value) {
+ return new JAXBElement(_FrequencyEnd_QNAME, BigInteger.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "InternationalID")
+ public JAXBElement createInternationalID(String value) {
+ return new JAXBElement(_InternationalID_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "OSCARNumber")
+ public JAXBElement createOSCARNumber(String value) {
+ return new JAXBElement(_OSCARNumber_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "Unit")
+ public JAXBElement createUnit(String value) {
+ return new JAXBElement(_Unit_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link XMLGregorianCalendar }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "ApplicationDate")
+ public JAXBElement createApplicationDate(XMLGregorianCalendar value) {
+ return new JAXBElement(_ApplicationDate_QNAME, XMLGregorianCalendar.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link XMLGregorianCalendar }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "CoordinationDecisionDate")
+ public JAXBElement createCoordinationDecisionDate(XMLGregorianCalendar value) {
+ return new JAXBElement(_CoordinationDecisionDate_QNAME, XMLGregorianCalendar.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "OperatorCountry")
+ public JAXBElement createOperatorCountry(String value) {
+ return new JAXBElement(_OperatorCountry_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "URL")
+ public JAXBElement createURL(String value) {
+ return new JAXBElement(_URL_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "ContactPerson")
+ public JAXBElement createContactPerson(String value) {
+ return new JAXBElement(_ContactPerson_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "OSCARName")
+ public JAXBElement createOSCARName(String value) {
+ return new JAXBElement(_OSCARName_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "Name")
+ public JAXBElement createName(String value) {
+ return new JAXBElement(_Name_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link XMLGregorianCalendar }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "UpdateDate")
+ public JAXBElement createUpdateDate(XMLGregorianCalendar value) {
+ return new JAXBElement(_UpdateDate_QNAME, XMLGregorianCalendar.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "CallSign")
+ public JAXBElement createCallSign(String value) {
+ return new JAXBElement(_CallSign_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "Inverted")
+ public JAXBElement createInverted(String value) {
+ return new JAXBElement(_Inverted_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link Integer }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "NasaID")
+ public JAXBElement createNasaID(Integer value) {
+ return new JAXBElement(_NasaID_QNAME, Integer.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "Status")
+ public JAXBElement createStatus(String value) {
+ return new JAXBElement(_Status_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "FrequencyBegin")
+ public JAXBElement createFrequencyBegin(BigInteger value) {
+ return new JAXBElement(_FrequencyBegin_QNAME, BigInteger.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "Speed")
+ public JAXBElement createSpeed(String value) {
+ return new JAXBElement(_Speed_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "OperatorName")
+ public JAXBElement createOperatorName(String value) {
+ return new JAXBElement(_OperatorName_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "LaunchingSite")
+ public JAXBElement createLaunchingSite(String value) {
+ return new JAXBElement(_LaunchingSite_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "Mode")
+ public JAXBElement createMode(String value) {
+ return new JAXBElement(_Mode_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "Title")
+ public JAXBElement createTitle(String value) {
+ return new JAXBElement(_Title_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "ProcessusStatus", defaultValue = "Not submitted")
+ public JAXBElement createProcessusStatus(String value) {
+ return new JAXBElement(_ProcessusStatus_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "ResponsibleOperator")
+ public JAXBElement createResponsibleOperator(String value) {
+ return new JAXBElement(_ResponsibleOperator_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "ReportEmail")
+ public JAXBElement createReportEmail(String value) {
+ return new JAXBElement(_ReportEmail_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link Boolean }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "Coordinated", defaultValue = "false")
+ public JAXBElement createCoordinated(Boolean value) {
+ return new JAXBElement(_Coordinated_QNAME, Boolean.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "SatelliteInformationStatus")
+ @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
+ public JAXBElement createSatelliteInformationStatus(String value) {
+ return new JAXBElement(_SatelliteInformationStatus_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link BigDecimal }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "Tone")
+ public JAXBElement createTone(BigDecimal value) {
+ return new JAXBElement(_Tone_QNAME, BigDecimal.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "Value")
+ public JAXBElement createValue(String value) {
+ return new JAXBElement(_Value_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "Frequency")
+ public JAXBElement createFrequency(String value) {
+ return new JAXBElement(_Frequency_QNAME, String.class, null, value);
+ }
+
+ /**
+ * Create an instance of {@link JAXBElement }{@code <}{@link XMLGregorianCalendar }{@code >}}
+ *
+ */
+ @XmlElementDecl(namespace = "", name = "LaunchDate")
+ public JAXBElement createLaunchDate(XMLGregorianCalendar value) {
+ return new JAXBElement(_LaunchDate_QNAME, XMLGregorianCalendar.class, null, value);
+ }
+
+}
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/RadioData.java b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/RadioData.java
new file mode 100644
index 0000000000000000000000000000000000000000..13b550535c15a82503157be4c155f2dd0ddd0e77
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/RadioData.java
@@ -0,0 +1,111 @@
+//
+// Ce fichier a été généré par l'implémentation de référence JavaTM Architecture for XML Binding (JAXB), v2.2.8-b130911.1802
+// Voir http://java.sun.com/xml/jaxb
+// Toute modification apportée à ce fichier sera perdue lors de la recompilation du schéma source.
+// Généré le : 2019.09.10 à 07:57:31 PM CEST
+//
+
+
+package org.josast.AmsatList.generated;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * Classe Java pour anonymous complex type.
+ *
+ *
Le fragment de schéma suivant indique le contenu attendu figurant dans cette classe.
+ *
+ *
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{}Beacons" maxOccurs="unbounded" minOccurs="0"/>
+ * <element ref="{}Transponders" maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ *
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "beacons",
+ "transponders"
+})
+@XmlRootElement(name = "RadioData")
+public class RadioData {
+
+ @XmlElement(name = "Beacons")
+ protected List beacons;
+ @XmlElement(name = "Transponders")
+ protected List transponders;
+
+ /**
+ * Gets the value of the beacons property.
+ *
+ *
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a set
method for the beacons property.
+ *
+ *
+ * For example, to add a new item, do as follows:
+ *
+ * getBeacons().add(newItem);
+ *
+ *
+ *
+ *
+ * Objects of the following type(s) are allowed in the list
+ * {@link Beacons }
+ *
+ *
+ */
+ public List getBeacons() {
+ if (beacons == null) {
+ beacons = new ArrayList();
+ }
+ return this.beacons;
+ }
+
+ /**
+ * Gets the value of the transponders property.
+ *
+ *
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a set
method for the transponders property.
+ *
+ *
+ * For example, to add a new item, do as follows:
+ *
+ * getTransponders().add(newItem);
+ *
+ *
+ *
+ *
+ * Objects of the following type(s) are allowed in the list
+ * {@link Transponders }
+ *
+ *
+ */
+ public List getTransponders() {
+ if (transponders == null) {
+ transponders = new ArrayList();
+ }
+ return this.transponders;
+ }
+
+}
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/ReportURL.java b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/ReportURL.java
new file mode 100644
index 0000000000000000000000000000000000000000..bba902ba491aa7bffe882ac7c704923a1a061057
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/ReportURL.java
@@ -0,0 +1,101 @@
+//
+// Ce fichier a été généré par l'implémentation de référence JavaTM Architecture for XML Binding (JAXB), v2.2.8-b130911.1802
+// Voir http://java.sun.com/xml/jaxb
+// Toute modification apportée à ce fichier sera perdue lors de la recompilation du schéma source.
+// Généré le : 2019.09.10 à 07:57:31 PM CEST
+//
+
+
+package org.josast.AmsatList.generated;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * Classe Java pour anonymous complex type.
+ *
+ *
Le fragment de schéma suivant indique le contenu attendu figurant dans cette classe.
+ *
+ *
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{}Title"/>
+ * <element ref="{}Value"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ *
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "title",
+ "value"
+})
+@XmlRootElement(name = "ReportURL")
+public class ReportURL {
+
+ @XmlElement(name = "Title", required = true)
+ protected String title;
+ @XmlElement(name = "Value", required = true)
+ @XmlSchemaType(name = "anyURI")
+ protected String value;
+
+ /**
+ * Obtient la valeur de la propriété title.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getTitle() {
+ return title;
+ }
+
+ /**
+ * Définit la valeur de la propriété title.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setTitle(String value) {
+ this.title = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété value.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getValue() {
+ return value;
+ }
+
+ /**
+ * Définit la valeur de la propriété value.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setValue(String value) {
+ this.value = value;
+ }
+
+}
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/Satellites.java b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/Satellites.java
new file mode 100644
index 0000000000000000000000000000000000000000..d155748e829d8456ec8c5e35f813a1766d44c37e
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/Satellites.java
@@ -0,0 +1,413 @@
+//
+// Ce fichier a été généré par l'implémentation de référence JavaTM Architecture for XML Binding (JAXB), v2.2.8-b130911.1802
+// Voir http://java.sun.com/xml/jaxb
+// Toute modification apportée à ce fichier sera perdue lors de la recompilation du schéma source.
+// Généré le : 2019.09.10 à 07:57:31 PM CEST
+//
+
+
+package org.josast.AmsatList.generated;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlSchemaType;
+import javax.xml.bind.annotation.XmlType;
+import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
+import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+import javax.xml.datatype.XMLGregorianCalendar;
+
+
+/**
+ * Classe Java pour anonymous complex type.
+ *
+ *
Le fragment de schéma suivant indique le contenu attendu figurant dans cette classe.
+ *
+ *
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{}Name"/>
+ * <element ref="{}NasaID"/>
+ * <element ref="{}InternationalID"/>
+ * <element ref="{}Status"/>
+ * <element ref="{}IARUCoordination"/>
+ * <element ref="{}LaunchData"/>
+ * <element ref="{}OSCARName" minOccurs="0"/>
+ * <element ref="{}OSCARNumber" minOccurs="0"/>
+ * <element ref="{}SatelliteInformationStatus"/>
+ * <element ref="{}UpdateDate"/>
+ * <element ref="{}Information" maxOccurs="unbounded" minOccurs="0"/>
+ * <element ref="{}RadioData" minOccurs="0"/>
+ * <element ref="{}TelemetryData" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ *
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "name",
+ "nasaID",
+ "internationalID",
+ "status",
+ "iaruCoordination",
+ "launchData",
+ "oscarName",
+ "oscarNumber",
+ "satelliteInformationStatus",
+ "updateDate",
+ "information",
+ "radioData",
+ "telemetryData"
+})
+@XmlRootElement(name = "Satellites")
+public class Satellites {
+
+ @XmlElement(name = "Name", required = true)
+ protected String name;
+ @XmlElement(name = "NasaID")
+ protected int nasaID;
+ @XmlElement(name = "InternationalID", required = true)
+ protected String internationalID;
+ @XmlElement(name = "Status", required = true)
+ protected String status;
+ @XmlElement(name = "IARUCoordination", required = true)
+ protected IARUCoordination iaruCoordination;
+ @XmlElement(name = "LaunchData", required = true)
+ protected LaunchData launchData;
+ @XmlElement(name = "OSCARName")
+ protected String oscarName;
+ @XmlElement(name = "OSCARNumber")
+ protected String oscarNumber;
+ @XmlElement(name = "SatelliteInformationStatus", required = true)
+ @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
+ @XmlSchemaType(name = "NCName")
+ protected String satelliteInformationStatus;
+ @XmlElement(name = "UpdateDate", required = true)
+ @XmlSchemaType(name = "date")
+ protected XMLGregorianCalendar updateDate;
+ @XmlElement(name = "Information")
+ protected List information;
+ @XmlElement(name = "RadioData")
+ protected RadioData radioData;
+ @XmlElement(name = "TelemetryData")
+ protected TelemetryData telemetryData;
+
+ /**
+ * Obtient la valeur de la propriété name.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * Définit la valeur de la propriété name.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setName(String value) {
+ this.name = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété nasaID.
+ *
+ */
+ public int getNasaID() {
+ return nasaID;
+ }
+
+ /**
+ * Définit la valeur de la propriété nasaID.
+ *
+ */
+ public void setNasaID(int value) {
+ this.nasaID = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété internationalID.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getInternationalID() {
+ return internationalID;
+ }
+
+ /**
+ * Définit la valeur de la propriété internationalID.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setInternationalID(String value) {
+ this.internationalID = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété status.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getStatus() {
+ return status;
+ }
+
+ /**
+ * Définit la valeur de la propriété status.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setStatus(String value) {
+ this.status = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété iaruCoordination.
+ *
+ * @return
+ * possible object is
+ * {@link IARUCoordination }
+ *
+ */
+ public IARUCoordination getIARUCoordination() {
+ return iaruCoordination;
+ }
+
+ /**
+ * Définit la valeur de la propriété iaruCoordination.
+ *
+ * @param value
+ * allowed object is
+ * {@link IARUCoordination }
+ *
+ */
+ public void setIARUCoordination(IARUCoordination value) {
+ this.iaruCoordination = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété launchData.
+ *
+ * @return
+ * possible object is
+ * {@link LaunchData }
+ *
+ */
+ public LaunchData getLaunchData() {
+ return launchData;
+ }
+
+ /**
+ * Définit la valeur de la propriété launchData.
+ *
+ * @param value
+ * allowed object is
+ * {@link LaunchData }
+ *
+ */
+ public void setLaunchData(LaunchData value) {
+ this.launchData = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété oscarName.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getOSCARName() {
+ return oscarName;
+ }
+
+ /**
+ * Définit la valeur de la propriété oscarName.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setOSCARName(String value) {
+ this.oscarName = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété oscarNumber.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getOSCARNumber() {
+ return oscarNumber;
+ }
+
+ /**
+ * Définit la valeur de la propriété oscarNumber.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setOSCARNumber(String value) {
+ this.oscarNumber = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété satelliteInformationStatus.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getSatelliteInformationStatus() {
+ return satelliteInformationStatus;
+ }
+
+ /**
+ * Définit la valeur de la propriété satelliteInformationStatus.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setSatelliteInformationStatus(String value) {
+ this.satelliteInformationStatus = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété updateDate.
+ *
+ * @return
+ * possible object is
+ * {@link XMLGregorianCalendar }
+ *
+ */
+ public XMLGregorianCalendar getUpdateDate() {
+ return updateDate;
+ }
+
+ /**
+ * Définit la valeur de la propriété updateDate.
+ *
+ * @param value
+ * allowed object is
+ * {@link XMLGregorianCalendar }
+ *
+ */
+ public void setUpdateDate(XMLGregorianCalendar value) {
+ this.updateDate = value;
+ }
+
+ /**
+ * Gets the value of the information property.
+ *
+ *
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a set
method for the information property.
+ *
+ *
+ * For example, to add a new item, do as follows:
+ *
+ * getInformation().add(newItem);
+ *
+ *
+ *
+ *
+ * Objects of the following type(s) are allowed in the list
+ * {@link Information }
+ *
+ *
+ */
+ public List getInformation() {
+ if (information == null) {
+ information = new ArrayList();
+ }
+ return this.information;
+ }
+
+ /**
+ * Obtient la valeur de la propriété radioData.
+ *
+ * @return
+ * possible object is
+ * {@link RadioData }
+ *
+ */
+ public RadioData getRadioData() {
+ return radioData;
+ }
+
+ /**
+ * Définit la valeur de la propriété radioData.
+ *
+ * @param value
+ * allowed object is
+ * {@link RadioData }
+ *
+ */
+ public void setRadioData(RadioData value) {
+ this.radioData = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété telemetryData.
+ *
+ * @return
+ * possible object is
+ * {@link TelemetryData }
+ *
+ */
+ public TelemetryData getTelemetryData() {
+ return telemetryData;
+ }
+
+ /**
+ * Définit la valeur de la propriété telemetryData.
+ *
+ * @param value
+ * allowed object is
+ * {@link TelemetryData }
+ *
+ */
+ public void setTelemetryData(TelemetryData value) {
+ this.telemetryData = value;
+ }
+
+}
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/SoftwareURL.java b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/SoftwareURL.java
new file mode 100644
index 0000000000000000000000000000000000000000..d45f5b52343bbb65d669e14d565a893d0e1ab03e
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/SoftwareURL.java
@@ -0,0 +1,89 @@
+//
+// Ce fichier a été généré par l'implémentation de référence JavaTM Architecture for XML Binding (JAXB), v2.2.8-b130911.1802
+// Voir http://java.sun.com/xml/jaxb
+// Toute modification apportée à ce fichier sera perdue lors de la recompilation du schéma source.
+// Généré le : 2019.09.10 à 07:57:31 PM CEST
+//
+
+
+package org.josast.AmsatList.generated;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.JAXBElement;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElementRef;
+import javax.xml.bind.annotation.XmlElementRefs;
+import javax.xml.bind.annotation.XmlMixed;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * Classe Java pour anonymous complex type.
+ *
+ *
Le fragment de schéma suivant indique le contenu attendu figurant dans cette classe.
+ *
+ *
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <choice maxOccurs="unbounded" minOccurs="0">
+ * <element ref="{}Title"/>
+ * <element ref="{}Value"/>
+ * </choice>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ *
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "content"
+})
+@XmlRootElement(name = "SoftwareURL")
+public class SoftwareURL {
+
+ @XmlElementRefs({
+ @XmlElementRef(name = "Value", type = JAXBElement.class, required = false),
+ @XmlElementRef(name = "Title", type = JAXBElement.class, required = false)
+ })
+ @XmlMixed
+ protected List content;
+
+ /**
+ * Gets the value of the content property.
+ *
+ *
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a set
method for the content property.
+ *
+ *
+ * For example, to add a new item, do as follows:
+ *
+ * getContent().add(newItem);
+ *
+ *
+ *
+ *
+ * Objects of the following type(s) are allowed in the list
+ * {@link JAXBElement }{@code <}{@link String }{@code >}
+ * {@link JAXBElement }{@code <}{@link String }{@code >}
+ * {@link String }
+ *
+ *
+ */
+ public List getContent() {
+ if (content == null) {
+ content = new ArrayList();
+ }
+ return this.content;
+ }
+
+}
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/TelemetryData.java b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/TelemetryData.java
new file mode 100644
index 0000000000000000000000000000000000000000..5cd50953903230a051281f2820b86bf9f8fd6f22
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/TelemetryData.java
@@ -0,0 +1,162 @@
+//
+// Ce fichier a été généré par l'implémentation de référence JavaTM Architecture for XML Binding (JAXB), v2.2.8-b130911.1802
+// Voir http://java.sun.com/xml/jaxb
+// Toute modification apportée à ce fichier sera perdue lors de la recompilation du schéma source.
+// Généré le : 2019.09.10 à 07:57:31 PM CEST
+//
+
+
+package org.josast.AmsatList.generated;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * Classe Java pour anonymous complex type.
+ *
+ *
Le fragment de schéma suivant indique le contenu attendu figurant dans cette classe.
+ *
+ *
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{}DescriptionURL" maxOccurs="unbounded"/>
+ * <element ref="{}ReportURL" minOccurs="0"/>
+ * <element ref="{}ReportEmail" minOccurs="0"/>
+ * <element ref="{}SoftwareURL" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ *
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "descriptionURL",
+ "reportURL",
+ "reportEmail",
+ "softwareURL"
+})
+@XmlRootElement(name = "TelemetryData")
+public class TelemetryData {
+
+ @XmlElement(name = "DescriptionURL", required = true)
+ protected List descriptionURL;
+ @XmlElement(name = "ReportURL")
+ protected ReportURL reportURL;
+ @XmlElement(name = "ReportEmail")
+ protected String reportEmail;
+ @XmlElement(name = "SoftwareURL")
+ protected SoftwareURL softwareURL;
+
+ /**
+ * Gets the value of the descriptionURL property.
+ *
+ *
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a set
method for the descriptionURL property.
+ *
+ *
+ * For example, to add a new item, do as follows:
+ *
+ * getDescriptionURL().add(newItem);
+ *
+ *
+ *
+ *
+ * Objects of the following type(s) are allowed in the list
+ * {@link DescriptionURL }
+ *
+ *
+ */
+ public List getDescriptionURL() {
+ if (descriptionURL == null) {
+ descriptionURL = new ArrayList();
+ }
+ return this.descriptionURL;
+ }
+
+ /**
+ * Obtient la valeur de la propriété reportURL.
+ *
+ * @return
+ * possible object is
+ * {@link ReportURL }
+ *
+ */
+ public ReportURL getReportURL() {
+ return reportURL;
+ }
+
+ /**
+ * Définit la valeur de la propriété reportURL.
+ *
+ * @param value
+ * allowed object is
+ * {@link ReportURL }
+ *
+ */
+ public void setReportURL(ReportURL value) {
+ this.reportURL = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété reportEmail.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getReportEmail() {
+ return reportEmail;
+ }
+
+ /**
+ * Définit la valeur de la propriété reportEmail.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setReportEmail(String value) {
+ this.reportEmail = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété softwareURL.
+ *
+ * @return
+ * possible object is
+ * {@link SoftwareURL }
+ *
+ */
+ public SoftwareURL getSoftwareURL() {
+ return softwareURL;
+ }
+
+ /**
+ * Définit la valeur de la propriété softwareURL.
+ *
+ * @param value
+ * allowed object is
+ * {@link SoftwareURL }
+ *
+ */
+ public void setSoftwareURL(SoftwareURL value) {
+ this.softwareURL = value;
+ }
+
+}
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/Transponders.java b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/Transponders.java
new file mode 100644
index 0000000000000000000000000000000000000000..ece96d0ac19f5a0bd1bd63474c9d4fb3af84df49
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/AmsatList/generated/Transponders.java
@@ -0,0 +1,212 @@
+//
+// Ce fichier a été généré par l'implémentation de référence JavaTM Architecture for XML Binding (JAXB), v2.2.8-b130911.1802
+// Voir http://java.sun.com/xml/jaxb
+// Toute modification apportée à ce fichier sera perdue lors de la recompilation du schéma source.
+// Généré le : 2019.09.10 à 07:57:31 PM CEST
+//
+
+
+package org.josast.AmsatList.generated;
+
+import java.math.BigDecimal;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlRootElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * Classe Java pour anonymous complex type.
+ *
+ *
Le fragment de schéma suivant indique le contenu attendu figurant dans cette classe.
+ *
+ *
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element ref="{}Name"/>
+ * <element ref="{}FrequencyUplink"/>
+ * <element ref="{}FrequencyDownlink"/>
+ * <element ref="{}Mode" minOccurs="0"/>
+ * <element ref="{}Inverted"/>
+ * <element ref="{}Tone"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ *
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "", propOrder = {
+ "name",
+ "frequencyUplink",
+ "frequencyDownlink",
+ "mode",
+ "inverted",
+ "tone"
+})
+@XmlRootElement(name = "Transponders")
+public class Transponders {
+
+ @XmlElement(name = "Name", required = true)
+ protected String name;
+ @XmlElement(name = "FrequencyUplink", required = true)
+ protected FrequencyUplink frequencyUplink;
+ @XmlElement(name = "FrequencyDownlink", required = true)
+ protected FrequencyDownlink frequencyDownlink;
+ @XmlElement(name = "Mode")
+ protected String mode;
+ @XmlElement(name = "Inverted", required = true)
+ protected String inverted;
+ @XmlElement(name = "Tone", required = true)
+ protected BigDecimal tone;
+
+ /**
+ * Obtient la valeur de la propriété name.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * Définit la valeur de la propriété name.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setName(String value) {
+ this.name = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété frequencyUplink.
+ *
+ * @return
+ * possible object is
+ * {@link FrequencyUplink }
+ *
+ */
+ public FrequencyUplink getFrequencyUplink() {
+ return frequencyUplink;
+ }
+
+ /**
+ * Définit la valeur de la propriété frequencyUplink.
+ *
+ * @param value
+ * allowed object is
+ * {@link FrequencyUplink }
+ *
+ */
+ public void setFrequencyUplink(FrequencyUplink value) {
+ this.frequencyUplink = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété frequencyDownlink.
+ *
+ * @return
+ * possible object is
+ * {@link FrequencyDownlink }
+ *
+ */
+ public FrequencyDownlink getFrequencyDownlink() {
+ return frequencyDownlink;
+ }
+
+ /**
+ * Définit la valeur de la propriété frequencyDownlink.
+ *
+ * @param value
+ * allowed object is
+ * {@link FrequencyDownlink }
+ *
+ */
+ public void setFrequencyDownlink(FrequencyDownlink value) {
+ this.frequencyDownlink = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété mode.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getMode() {
+ return mode;
+ }
+
+ /**
+ * Définit la valeur de la propriété mode.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setMode(String value) {
+ this.mode = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété inverted.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getInverted() {
+ return inverted;
+ }
+
+ /**
+ * Définit la valeur de la propriété inverted.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setInverted(String value) {
+ this.inverted = value;
+ }
+
+ /**
+ * Obtient la valeur de la propriété tone.
+ *
+ * @return
+ * possible object is
+ * {@link BigDecimal }
+ *
+ */
+ public BigDecimal getTone() {
+ return tone;
+ }
+
+ /**
+ * Définit la valeur de la propriété tone.
+ *
+ * @param value
+ * allowed object is
+ * {@link BigDecimal }
+ *
+ */
+ public void setTone(BigDecimal value) {
+ this.tone = value;
+ }
+
+}
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/ModuleSatelliteDatabase/AppCli.java b/ModuleSatelliteDatabase/src/main/java/org/josast/ModuleSatelliteDatabase/AppCli.java
new file mode 100644
index 0000000000000000000000000000000000000000..f7718fe0d298ae71e9e28d48d8a4da7b5131c20b
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/ModuleSatelliteDatabase/AppCli.java
@@ -0,0 +1,162 @@
+package org.josast.ModuleSatelliteDatabase;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.util.List;
+import java.util.ListIterator;
+
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBException;
+import javax.xml.bind.Marshaller;
+import javax.xml.bind.PropertyException;
+import javax.xml.bind.Unmarshaller;
+
+import org.apache.commons.cli.CommandLine;
+import org.apache.commons.cli.CommandLineParser;
+import org.apache.commons.cli.DefaultParser;
+import org.apache.commons.cli.HelpFormatter;
+import org.apache.commons.cli.Option;
+import org.apache.commons.cli.Options;
+import org.apache.commons.cli.ParseException;
+import org.josast.AmsatList.generated.AmsatList;
+import org.josast.AmsatList.generated.ObjectFactory;
+import org.josast.AmsatList.generated.Satellites;
+
+/**
+ * Classe Java for mergin AMSAT-LIST Xml file
+ *
+ * Concept : read all files from a directory add this file data in memory save
+ * all data in one file
+ *
+ * @author chris
+ *
+ */
+
+public class AppCli {
+
+ private static String version = "0.7";
+ AmsatList amsatList = null;
+ List liste = null;
+
+
+
+ private static Options configParameters() {
+
+ final Option versionOption = Option.builder("V")
+
+ .longOpt("Version") //
+
+ .desc("Return application version")
+
+ .hasArg(false)
+
+ .required(false)
+
+ .build();
+
+ final Option directoryOption = Option.builder("D")
+
+ .longOpt("Directory") //
+
+ .desc("give directory with all files to merge")
+
+ .hasArg(true)
+
+ .argName("Repository")
+
+ .required(false)
+
+ .build();
+
+ final Option outputFileOption = Option.builder("O")
+
+ .longOpt("OutputFile") //
+
+ .desc("output file wherre all files are merged")
+
+ .hasArg(true)
+
+ .argName("OutputFile")
+
+ .required(false)
+
+ .build();
+
+ final Option helpFileOption = Option.builder("h")
+
+ .longOpt("help")
+
+ .desc("display help message")
+
+ .build();
+
+ final Options options = new Options();
+
+ options.addOption(versionOption);
+
+ options.addOption(directoryOption);
+ options.addOption(outputFileOption);
+ options.addOption(helpFileOption);
+
+ return options;
+
+ }
+
+
+
+ public static void main(String[] args) throws ParseException {
+
+ final Options options = configParameters();
+
+ final CommandLineParser parser = new DefaultParser();
+
+ final CommandLine line = parser.parse(options, args);
+
+ // Si mode aide
+
+ boolean helpMode = line.hasOption("help");
+
+ if (helpMode) {
+
+ final HelpFormatter formatter = new HelpFormatter();
+
+ formatter.printHelp(args[0], options, true);
+
+ System.exit(0);
+
+ }
+ boolean versionpMode = line.hasOption("Version");
+
+ if (versionpMode) {
+
+ System.out.println(args[0] + version);
+
+ System.exit(0);
+
+ }
+
+ boolean configMode = line.hasOption("Directory");
+
+ if (configMode) {
+
+ String OutputFile = line.getOptionValue("OutputFile", "");
+ String Repository = line.getOptionValue("Directory", "");
+ System.out.println("Repository " + Repository + " Output File" + OutputFile);
+
+
+// AppCli merge = new AppCli();
+// merge.createAmsatList();
+// merge.merge(Repository, OutputFile);
+
+
+ MergeAmsatListFile merge = new MergeAmsatListFile();
+ merge.merge(Repository, OutputFile);
+ merge.save(OutputFile);
+
+ }
+
+
+ }
+
+}
diff --git a/ModuleSatelliteDatabase/src/main/java/org/josast/ModuleSatelliteDatabase/MergeAmsatListFile.java b/ModuleSatelliteDatabase/src/main/java/org/josast/ModuleSatelliteDatabase/MergeAmsatListFile.java
new file mode 100644
index 0000000000000000000000000000000000000000..d2da2a6bc783c4069b240a5740f219286a259088
--- /dev/null
+++ b/ModuleSatelliteDatabase/src/main/java/org/josast/ModuleSatelliteDatabase/MergeAmsatListFile.java
@@ -0,0 +1,171 @@
+package org.josast.ModuleSatelliteDatabase;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.util.List;
+import java.util.ListIterator;
+import java.util.logging.Logger;
+
+import javax.xml.bind.JAXBContext;
+import javax.xml.bind.JAXBException;
+import javax.xml.bind.Marshaller;
+import javax.xml.bind.PropertyException;
+import javax.xml.bind.Unmarshaller;
+
+import org.josast.AmsatList.generated.AmsatList;
+import org.josast.AmsatList.generated.ObjectFactory;
+import org.josast.AmsatList.generated.Satellites;
+
+public class MergeAmsatListFile {
+
+ private Logger log = Logger.getLogger(getClass().getName());
+ AmsatList amsatList = null;
+ List liste = null;
+
+ /**
+ * create a new Amsat List structure in memory
+ */
+ public MergeAmsatListFile() {
+ ObjectFactory of = new ObjectFactory();
+ amsatList = of.createAmsatList();
+ liste = amsatList.getSatellites();
+ }
+
+ /**
+ * Save file
+ *
+ * @param fichOutSring
+ */
+ public void save(String fichOutSring) {
+ File fichOut = new File(fichOutSring);
+ String path = "org.josast.AmsatList.generated";
+ JAXBContext jc = null;
+ try {
+ jc = JAXBContext.newInstance(path);
+ } catch (JAXBException e) {
+ log.severe("path not found : " + path);
+ // e.printStackTrace();
+ }
+ Marshaller mrs = null;
+ try {
+ mrs = jc.createMarshaller();
+ } catch (JAXBException e) {
+ log.severe("Marshaller creation faile");
+ // e.printStackTrace();
+ }
+ try {
+ mrs.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE);
+ } catch (PropertyException e) {
+ log.severe("Marshaller property exception");
+ // e.printStackTrace();
+ } // indenter
+
+// if (fichOut != null) {
+ try {
+ mrs.marshal(amsatList, new FileOutputStream(fichOut));
+ } catch (FileNotFoundException e) {
+ log.severe("File not found exeption");
+// e.printStackTrace();
+ } catch (JAXBException e) {
+ log.severe(e.toString());
+// e.printStackTrace();
+ }
+// }
+// else {
+// try {
+// mrs.marshal(amsatList, System.out);
+// } catch (JAXBException e) {
+// // TODO Auto-generated catch block
+// e.printStackTrace();
+// }
+// }
+ }
+
+
+ /**
+ * add data from file in memory (list)
+ *
+ * @param filein
+ */
+ public void appendSatellites(File filein) {
+ log.info("Add file : " + filein.getName());
+ JAXBContext jaxbContext = null;
+
+ try {
+ jaxbContext = JAXBContext.newInstance("org.josast.AmsatList.generated");
+
+ } catch (JAXBException e) {
+// e.printStackTrace();
+ log.severe("JAXBException "+e.toString());
+ }
+
+ Unmarshaller unmarshaller = null;
+ try {
+ unmarshaller = jaxbContext.createUnmarshaller();
+// unmarshaller.setValidating(true);
+ } catch (JAXBException e) {
+ log.severe("JAXBException "+e.toString());
+ //e.printStackTrace();
+ }
+
+ AmsatList amsatliste = null;
+ try {
+ amsatliste = (AmsatList) unmarshaller.unmarshal(filein);
+ } catch (JAXBException e) {
+ log.severe("JAXBException "+e.toString());
+ //e.printStackTrace();
+ }
+
+ // TODO revoir comment gérer l'append dans la liste
+
+ List listSatellite = amsatliste.getSatellites();
+
+ ListIterator it = listSatellite.listIterator();
+
+ while (it.hasNext()) {
+ Satellites sat = it.next();
+ liste.add(sat);
+ log.info("satellite ajouté :" + sat.getName());
+
+ }
+
+ }
+
+
+ /**
+ * @param repository
+ * @param Fileout
+ * @return
+ */
+
+ public int merge(String repository, String Fileout) {
+ File repertoire = new File(repository);
+ int i = 0;
+ if (repertoire.isDirectory() == false) {
+ log.severe(repository+"is not a repository");
+// System.err.println("not a repository");
+ return -1;
+ }
+ File[] inputsfiles = repertoire.listFiles();
+ if (inputsfiles == null) {
+ log.severe(repository+"Repository empty");
+// System.err.println("Repository empty");
+ return -1;
+ } else {
+ for (i = 0; i < inputsfiles.length; i++) {
+// System.out.println(inputsfiles[i]);
+ appendSatellites(inputsfiles[i]);
+ }
+ }
+
+// save(Fileout);
+ log.info("Nb Satellite" + i);
+// System.out.println("Nb Satellite" + i);
+
+ return i;
+
+ }
+
+
+}