summaryrefslogtreecommitdiffstats
path: root/sandbox/kgoodson/SourceExplore/src/main/java/HashSPISource.java
blob: cfd9488a28effd5c1743da6674af25e33d6afad0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
import java.io.File;
import java.util.Iterator;
import java.util.List;

import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBElement;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Unmarshaller;

import org.apache.tuscany.SourceExplore.ObjectFactory;
import org.apache.tuscany.SourceExplore.Projects;
import org.apache.tuscany.SourceExplore.Projects2;
import org.apache.tuscany.SourceExplore.Projects2.Project;



public class HashSPISource {
	
	public static void main(String[] args) throws Throwable {
	
		ObjectFactory fac = new ObjectFactory();
		
		JAXBContext jaxbContext = JAXBContext
			.newInstance("org.apache.tuscany.SourceExplore");
			Unmarshaller m = jaxbContext.createUnmarshaller();



				
				File inputFile = new File("src/main/resources/projects.xml").getAbsoluteFile();
				Projects p = (Projects)m.unmarshal(inputFile);
				List<JAXBElement<String>> data = p.getProjectOrPackage();
				System.out.println(p);
				
				
				Projects2 p2 = fac.createProjects2();


				
				for (int i = 0; i < data.size(); i++) {
					if(!"project".equals(data.get(i).getName().getLocalPart())) {
						throw new Exception("Expecting a project element " + i);
					} else {
						System.out.println("project: " + data.get(i).getValue());
						Project proj = fac.createProjects2Project();
						proj.setName(data.get(i).getValue());
						p2.getProject().add(proj);
					}
					for(i++;i<data.size() && "package".equals(data.get(i).getName().getLocalPart());i++) {
						if(!"package".equals(data.get(i).getName().getLocalPart())) {
							throw new Exception("Expecting a package element " + i);
						} else {
    						System.out.println("package: " + data.get(i).getValue());
						}
					}
					i--;
				}

				
				
	}


}