### Question:
OrderFinder extends Finder<Long,Order> { public List<Order> byStatus(Order.Status... values) { return where() .status.in(values) .orderBy() .orderDate.desc() .id.desc() .findList(); } OrderFinder();  OrderFinder(String serverName); List<Order> byStatus(Order.Status... values); PagedList<Order> newOrdersSince(Date since, int pageIndex);  }### Answer:
@Test public void test() { List<Order> orders = Order.find.byStatus(Order.Status.NEW, Order.Status.APPROVED, Order.Status.COMPLETE); for (Order order : orders) { order.getOrderDate(); order.getShipDate(); order.getStatus(); Customer customer = order.getCustomer(); customer.getName(); List<OrderDetail> details = order.getDetails(); for (OrderDetail detail : details) { detail.getUnitPrice(); detail.getShipQty(); Product product = detail.getProduct(); product.getId(); product.getName(); } } }
@Test public void testOther() { List<Order> orders = Order.find.byStatus(Order.Status.NEW, Order.Status.APPROVED); for (Order order : orders) { order.getOrderDate(); order.getShipDate(); Customer customer = order.getCustomer(); customer.getName(); List<Contact> contacts = customer.getContacts(); for (Contact contact : contacts) { contact.getFirstName(); contact.getLastName(); } } }