View difference between Paste ID: f79rd0na and 6kcZwA9L
SHOW: | | - or go back to the newest paste.
1-
ArrayList data = new ArrayList();
1+
import java.util.ArrayList;
2-
		data.add("Kinga Dobolyi 555-555-5555");
2+
import java.util.regex.Matcher;
3-
		data.add("nothing");
3+
import java.util.regex.Pattern;
4-
		data.add("#socks,2.34,2");
4+
5-
		data.add("nothing");		
5+
public class Driver
6-
		data.add("!David Dobolyi 555-555-5555");
6+
{
7-
		data.add("nothing");		
7+
	ArrayList dataList = new ArrayList(0);
8-
		data.add("stuff,#3");
8+
9-
		data.add("nothing");		
9+
	public Driver()
10-
		data.add("John Dobolyi 555-555-5555");
10+
	{
11-
		data.add("nothing");		
11+
	}
12-
		data.add("#pants,5.34,3");		
12+
	public Driver(ArrayList l)
13-
		data.add("nothing");		
13+
	{
14-
		Driver driver = new Driver();
14+
		dataList = l;
15-
		data = driver.run(data);
15+
	}
16-
		assertEquals(6,data.size());
16+
	public ArrayList getData()
17-
		OrderForm form = (OrderForm)driver.getData().get(0);
17+
	{
18-
		assertEquals("Kinga",form.getFirstName());	
18+
		return dataList;
19-
		Item item = (Item)form.getItems().get(0);
19+
	}
20-
		ReviewForm formR = (ReviewForm)driver.getData().get(1);
20+
	public void setData(ArrayList l)
21-
		assertEquals("stuff,",formR.getReview());
21+
	{
22-
		assertEquals("David",formR.getFirstName());	
22+
		if(dataList != null)
23-
		String review = formR.getReview();
23+
		{
24-
		assertEquals("stuff,",review);
24+
		dataList = l;
25-
		form = (OrderForm)driver.getData().get(2);		
25+
		}
26-
		assertEquals("John",form.getFirstName());	
26+
	}
27-
		item = (Item)form.getItems().get(0);
27+
	public ArrayList run(ArrayList<String> data)
28-
		assertEquals("pants",item.getName());
28+
	{	
29
		OrderForm ordersample = new OrderForm();
30
		OrderForm last = new OrderForm();
31
		ReviewForm reviewsample = new ReviewForm();
32
		ArrayList<String> unproc = new ArrayList<String>(0);
33
		
34
	for(int x = 0; x < data.size(); x++)
35
	{
36
		String rfreg = "(.*),?#([0-9]*)";
37
		Pattern p2 = Pattern.compile(rfreg);
38
		Matcher m2 = p2.matcher(data.get(x).toString());
39
		ordersample = new OrderForm();
40
		
41
		if(ordersample.process(data.get(x)))
42
		{
43
			last = new OrderForm();
44
			last.process(data.get(x));
45
			dataList.add(last);
46
		}
47
		else if(data.get(x).startsWith("#"))
48
		{
49
			String ireg = "#(\\w*.*),(\\d*\\.\\d*),(\\d*)";
50
			Pattern p = Pattern.compile(ireg);
51
			Matcher m = p.matcher(data.get(x));
52
			if(m.matches())
53
			{
54
				String itemname = m.group(1);
55
				String price = m.group(2);
56
				String quantity = m.group(3);
57
				Item thing = new Item(itemname, Double.parseDouble(price), Integer.parseInt(quantity));
58
				last.addItem(thing);
59
				dataList.remove(dataList.size()-1);
60
				dataList.add(last);
61
			}
62
		}
63
		if(m2.matches())
64
		{
65
			String rev = m2.group(1);
66
			String stars = m2.group(2);
67
			reviewsample.setStars(Integer.parseInt(stars));
68
			reviewsample.setReview(rev);
69
		}
70
		else
71
		{
72
		unproc.add(data.get(x).toString());
73
		}
74
	}
75
		//returns unprocessable elements in the list back to the user
76
	return unproc;
77
}
78
}