Bus bus = new Bus();
bus.setId("busId");
Rectangle busFrame = new Rectangle();
busFrame.setWidth(100);
bus.setFrame(busFrame);
Cat cat = new Cat();
cat.setId("catId");
Circle catFace = new Circle();
catFace.setRadius(30);
cat.setFace(catFace);
House house = new House();
house.setId("houseId");
Rectangle houseBase = new Rectangle();
houseBase.setWidth(76);
house.setBase(houseBase);
canvas.setFigures(Arrays.asList(bus, cat, house));
Rectangle rectangle = new Rectangle();
rectangle.setHeight(50);
rectangle.setId("rectId");
Circle circle = new Circle();
circle.setRadius(10);
circle.setId("circleId");
Triangle triangle = new Triangle();
triangle.setBase(80);
triangle.setId("triId");
canvas.setShapes(Arrays.asList(rectangle, circle, triangle));
// byte[] swaRefBytes = "This is a bunch of random bytes that are to be used as an SWA ref attachment.".getBytes();
// byte[] explicitBase64Bytes = "This is some more random bytes that are to be used as a base 64 encoded attachment.".getBytes();
// byte[] attachment1Bytes = "This is some more random bytes that are to be used as the first MTOM attachment.".getBytes();
// byte[] attachment2Bytes = "This is some more random bytes that are to be used as the second MTOM attachment.".getBytes();
// byte[] attachment3Bytes = "This is some more random bytes that are to be used as the third MTOM attachment.".getBytes();
// CanvasAttachment attachment1 = new CanvasAttachment();
// attachment1.setValue(attachment1Bytes);
// CanvasAttachment attachment2 = new CanvasAttachment();
// attachment2.setValue(attachment2Bytes);
// CanvasAttachment attachment3 = new CanvasAttachment();
// attachment3.setValue(attachment3Bytes);
// ByteArrayDataSource dataSource = new ByteArrayDataSource(swaRefBytes, "application/octet-stream");
// dataSource.setName("somename");
// canvas.setBackgroundImage(new DataHandler(dataSource));
// canvas.setExplicitBase64Attachment(explicitBase64Bytes);
// canvas.setOtherAttachments(Arrays.asList(attachment1, attachment2, attachment3));
canvas = processThroughXml(canvas);
Collection shapes = canvas.getShapes();
assertEquals(3, shapes.size());
for (Object Shape : shapes) {
if (Shape instanceof Circle) {
assertEquals("circleId", ((Circle) Shape).getId());
assertEquals(10, ((Circle) Shape).getRadius());
}
else if (Shape instanceof Rectangle) {
assertEquals("rectId", ((Rectangle) Shape).getId());
assertEquals(50, ((Rectangle) Shape).getHeight());
}
else if (Shape instanceof Triangle) {
assertEquals("triId", ((Triangle) Shape).getId());
assertEquals(80, ((Triangle) Shape).getBase());
}
else {
fail("Unknown shape: " + Shape);
}
}
Collection figures = canvas.getFigures();
assertEquals(3, figures.size());
for (Object Figure : figures) {
if (Figure instanceof Bus) {
bus = (Bus) Figure;
assertEquals("busId", bus.getId());
Rectangle BusFrame = bus.getFrame();
assertNotNull(BusFrame);
assertEquals(100, busFrame.getWidth());
}
else if (Figure instanceof Cat) {
cat = (Cat) Figure;
assertEquals("catId", cat.getId());
Circle CatFace = cat.getFace();
assertNotNull(CatFace);
assertEquals(30, CatFace.getRadius());
}
else if (Figure instanceof House) {
house = (House) Figure;