List of usage examples for org.joda.time LocalDate parse
public static LocalDate parse(String str, DateTimeFormatter formatter)
From source file:hotelmgmt.UserView.java
/** * The Manager Menu/*from ww w . ja v a 2 s . c o m*/ */ private void managerMenu() { //Create the window. JFrame mainframe = new JFrame("Manager Menu"); //******employee options JPanel frame = new JPanel(); frame.setLayout(new BorderLayout()); JPanel empPanel = new JPanel(); list = new JList(listModel); list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); list.setPreferredSize(new Dimension(600, 550)); //empPanel.add(list); empPanel.add(new JScrollPane(list)); frame.add(empPanel, BorderLayout.CENTER); TextField customerName; customerName = new TextField("", 20); JLabel nameLabel = new JLabel(" Customer Name: "); nameLabel.setVisible(true); customerName.setVisible(true); TextField start, end; start = new TextField("", 15); end = new TextField("", 15); JButton leftButton = new JButton("Left"); leftButton.setVisible(false); JButton blankButton = new JButton("Blank"); blankButton.setVisible(false); JButton logoutButton = new JButton("Logout"); logoutButton.setVisible(true); JButton checkInButton = new JButton("Check In"); JButton checkOutButton = new JButton("Check Out"); JButton roomsButton = new JButton("Display Rooms"); checkInButton.setVisible(false); checkOutButton.setVisible(false); JButton displayCustomersButton = new JButton("Display All Customers"); JButton displayAllReservationsButton = new JButton("Display All Reservations"); JButton reserveButton = new JButton("Display Reservations"); reserveButton.setPreferredSize(new Dimension(150, 26)); JButton addCustomerButton = new JButton("Add Customer"); JButton editCustomerButton = new JButton("Edit Customer"); JButton deleteCustomerButton = new JButton("Delete Customer"); editCustomerButton.setVisible(false); deleteCustomerButton.setVisible(false); JPanel bottomPanel = new JPanel(); bottomPanel.add(displayCustomersButton); bottomPanel.add(displayAllReservationsButton); bottomPanel.add(addCustomerButton); bottomPanel.add(logoutButton); frame.add(bottomPanel, BorderLayout.SOUTH); JPanel buttonPanel = new JPanel(); buttonPanel.setLayout(new GridLayout(0, 6, 2, 10)); buttonPanel.add(roomsButton); buttonPanel.add(reserveButton); buttonPanel.add(leftButton); buttonPanel.add(blankButton); buttonPanel.add(checkInButton); buttonPanel.add(checkOutButton); JLabel startLabel = new JLabel(" Start Date:"); buttonPanel.add(startLabel); buttonPanel.add(start); JLabel endLabel = new JLabel(" End Date:"); buttonPanel.add(endLabel); buttonPanel.add(end); buttonPanel.add(nameLabel); buttonPanel.add(customerName); buttonPanel.add(editCustomerButton); buttonPanel.add(deleteCustomerButton); frame.add(buttonPanel, BorderLayout.NORTH); addCustomerButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { editCustomerButton.setVisible(false); deleteCustomerButton.setVisible(false); addEmployeeorCustomer(false, true); } }); logoutButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { logout(); listModel.clear(); mainframe.dispose(); } }); displayAllReservationsButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { listModel.clear(); editCustomerButton.setVisible(false); deleteCustomerButton.setVisible(false); hotel.displayReservations(); } }); displayCustomersButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { listModel.clear(); hotel.displayCusList(); deleteCustomerButton.setVisible(true); editCustomerButton.setVisible(true); } }); deleteCustomerButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { DeleteCustomer delCus = new DeleteCustomer(hotel); delCus.setVisible(true); } }); editCustomerButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { // editPerson(false, true); // moor? EditCustomer edCus = new EditCustomer(hotel); edCus.setVisible(true); } }); roomsButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { listModel.clear(); checkOutButton.setVisible(false); editCustomerButton.setVisible(false); deleteCustomerButton.setVisible(false); String startd = checkDate(start.getText()); String endd = checkDate(end.getText()); if (startd != "" && endd != "") { LocalDate startdate = LocalDate.parse(startd, DateTimeFormat.forPattern("MM/dd/yyyy")); LocalDate enddate = LocalDate.parse(endd, DateTimeFormat.forPattern("MM/dd/yyyy")); int numdays = Days.daysBetween(startdate, enddate).getDays(); if (numdays <= 0) speakError("Check out date must be after check in date"); else hotel.displayRoomsAvailable(startdate, enddate); checkInButton.setVisible(true); leftButton.setText("Reserve Room"); leftButton.setVisible(true); for (ActionListener al : leftButton.getActionListeners()) leftButton.removeActionListener(al); leftButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { try { int priceindex = list.getSelectedValue().indexOf("Price:"); int ID = -1; System.out.println(list.getSelectedIndex()); String username = customerName.getText(); if (hotel.findCustomer(username) > 0) { ID = hotel.findCustomer(username); hotel.bookRoom(true, ID, list.getSelectedValue().substring(11, priceindex - 2), startdate, enddate); listModel.clear(); hotel.displayRoomsAvailable(startdate, enddate); } else { hotel.displayCusList(); idFrame(false, true, false, false, false, priceindex, startdate, enddate, "noType"); } } catch (NullPointerException error) { speakError("Error"); } } }); for (ActionListener al : checkInButton.getActionListeners()) checkInButton.removeActionListener(al); checkInButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { try { int priceindex = list.getSelectedValue().indexOf("Price:"); int ID = -1; String username = customerName.getText(); if (hotel.findCustomer(username) > 0) { ID = hotel.findCustomer(username); hotel.bookRoom(true, ID, list.getSelectedValue().substring(11, priceindex - 2), startdate, enddate); hotel.bookRoom(false, ID, list.getSelectedValue().substring(11, priceindex - 2), startdate, enddate); listModel.clear(); hotel.displayRoomsAvailable(startdate, enddate); } else { hotel.displayCusList(); idFrame(false, false, false, true, false, priceindex, startdate, enddate, "noType"); } } catch (NullPointerException error) { speakError("Error"); } } }); } } }); reserveButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { listModel.clear(); nameLabel.setVisible(true); customerName.setVisible(true); checkInButton.setVisible(false); checkOutButton.setVisible(true); editCustomerButton.setVisible(false); deleteCustomerButton.setVisible(false); for (ActionListener al : checkInButton.getActionListeners()) checkInButton.removeActionListener(al); String username = customerName.getText(); if (username != " ") { if (hotel.findCustomer(username) > 0) { int ID = hotel.findCustomer(username); hotel.displayCustomerBalance(ID); } else { hotel.displayCusList(); String empty = "03/01/2015"; LocalDate emptydate = LocalDate.parse(empty, DateTimeFormat.forPattern("MM/dd/yyyy")); idFrame(true, false, false, false, false, 0, emptydate, emptydate, "noType"); } } else speakError("Enter a customer name"); leftButton.setText("Delete Reservation"); leftButton.setVisible(true); for (ActionListener al : leftButton.getActionListeners()) leftButton.removeActionListener(al); leftButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { System.out.println(list.getSelectedIndex()); String username = customerName.getText(); if (hotel.findCustomer(username) > 0) { int ID = hotel.findCustomer(username); hotel.removeBookRoom(ID, list.getSelectedIndex()); listModel.clear(); //hotel.displayCustomerBalance(ID); } else { hotel.removeBookRoom(customerID, list.getSelectedIndex()); listModel.clear(); } } }); checkOutButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { System.out.println(list.getSelectedIndex()); String username = customerName.getText(); if (hotel.findCustomer(username) > 0) { int ID = hotel.findCustomer(username); hotel.removeBookRoom(ID, list.getSelectedIndex()); listModel.clear(); //hotel.displayCustomerBalance(ID); } else { hotel.removeBookRoom(customerID, list.getSelectedIndex()); listModel.clear(); } } }); checkInButton.setVisible(true); for (ActionListener al : checkInButton.getActionListeners()) checkInButton.removeActionListener(al); checkInButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { try { String username = customerName.getText(); int startIndex = list.getSelectedValue().indexOf("Start:"); int endIndex = list.getSelectedValue().indexOf("End:"); int typeIndex = list.getSelectedValue().indexOf("Type:"); int balanceIndex = list.getSelectedValue().indexOf("Balance:"); String startString = list.getSelectedValue().substring(startIndex + 7, endIndex - 1); LocalDate startdate = LocalDate.parse(startString, DateTimeFormat.forPattern("yyyy-MM-dd")); String endString = list.getSelectedValue().substring(endIndex + 5, endIndex + 15); LocalDate enddate = LocalDate.parse(endString, DateTimeFormat.forPattern("yyyy-MM-dd")); String type = list.getSelectedValue().substring(typeIndex + 6, balanceIndex - 4); if (hotel.findCustomer(username) > 0) { int ID = hotel.findCustomer(username); hotel.bookRoom(false, ID, type, startdate, enddate); listModel.clear(); hotel.displayCustomerBalance(ID); } else { hotel.displayCusList(); idFrame(false, false, false, false, true, 0, startdate, enddate, type); } } catch (NullPointerException error) { speakError("Error"); } } }); } }); frame.setPreferredSize(new Dimension(950, 600)); frame.setVisible(true); //*****manager options JPanel managerframe = new JPanel(); managerframe.setLayout(new BorderLayout()); JPanel managerCenterPanel = new JPanel(); list2 = new JList(listModel); list2.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); list2.setPreferredSize(new Dimension(600, 550)); //managerCenterPanel.add(list2); managerCenterPanel.add(new JScrollPane(list2)); managerframe.add(managerCenterPanel, BorderLayout.CENTER); JButton managerLogoutButton = new JButton("Logout"); JButton listRoomsButton = new JButton("Display Rooms"); JButton displayEmployeesButton = new JButton("Display All Employees"); JButton displayTotalButton = new JButton("Display Total"); JButton addEmployee = new JButton("Add Employee"); JButton addRoomButton = new JButton("Add Room"); JButton editRoomButton = new JButton("Change Room Price"); JButton editEmployeeButton = new JButton("Edit Employee"); editEmployeeButton.setVisible(false); JButton deleteEmployeeButton = new JButton("Delete Employee"); deleteEmployeeButton.setVisible(false); JPanel managerBottomPanel = new JPanel(); managerBottomPanel.add(listRoomsButton); managerBottomPanel.add(displayEmployeesButton); managerBottomPanel.add(displayTotalButton); managerBottomPanel.add(managerLogoutButton); managerframe.add(managerBottomPanel, BorderLayout.SOUTH); JPanel managerTopPanel = new JPanel(); managerTopPanel.add(addEmployee); managerTopPanel.add(addRoomButton); managerTopPanel.add(editRoomButton); managerTopPanel.add(editEmployeeButton); managerTopPanel.add(deleteEmployeeButton); managerframe.add(managerTopPanel, BorderLayout.NORTH); addRoomButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { editEmployeeButton.setVisible(false); deleteEmployeeButton.setVisible(false); addOrEditRoom(true, false); } }); editRoomButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { editEmployeeButton.setVisible(false); deleteEmployeeButton.setVisible(false); addOrEditRoom(false, true); } }); addEmployee.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { addEmployeeorCustomer(true, false); } }); managerLogoutButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { logout(); listModel.clear(); mainframe.dispose(); } }); listRoomsButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { editEmployeeButton.setVisible(false); deleteEmployeeButton.setVisible(false); listModel.clear(); hotel.displayAllRooms(); } }); displayEmployeesButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { listModel.clear(); hotel.displayEmpList(); editEmployeeButton.setVisible(true); deleteEmployeeButton.setVisible(true); } }); editEmployeeButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { EditEmployee edEmp = new EditEmployee(hotel); edEmp.setVisible(true); } }); deleteEmployeeButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { DeleteEmployee delEmp = new DeleteEmployee(hotel); delEmp.setVisible(true); } }); displayTotalButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { editEmployeeButton.setVisible(false); deleteEmployeeButton.setVisible(false); listModel.clear(); hotel.displayTotalBalance(); } }); managerframe.setPreferredSize(new Dimension(950, 600)); managerframe.setVisible(true); //tabbed section JTabbedPane tabbedPane = new JTabbedPane(); tabbedPane.addTab("Manager Options", managerframe); tabbedPane.setMnemonicAt(0, KeyEvent.VK_1); tabbedPane.addTab("Employee Options", frame); tabbedPane.setMnemonicAt(1, KeyEvent.VK_2); ChangeListener changeListener = new ChangeListener() { public void stateChanged(ChangeEvent changeEvent) { listModel.clear(); customerName.setText(""); start.setText(""); end.setText(""); } }; tabbedPane.addChangeListener(changeListener); tabbedPane.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT); mainframe.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); mainframe.add(tabbedPane, BorderLayout.CENTER); mainframe.pack(); mainframe.setVisible(true); mainframe.addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent event) { logout(); listModel.clear(); mainframe.dispose(); } }); }
From source file:it.newfammulfin.api.EntryResource.java
@POST @Consumes("text/csv") @Produces(MediaType.TEXT_PLAIN)//w w w . ja v a 2 s. co m public Response importFromCsv(String csvData, @DefaultValue("false") @QueryParam("invertSign") final boolean invertSign) { final Group group = (Group) requestContext.getProperty(GroupRetrieverRequestFilter.GROUP); final Map<String, Key<Chapter>> chapterStringsMap = new HashMap<>(); final List<CSVRecord> records; try { records = CSVParser.parse(csvData, CSVFormat.DEFAULT.withHeader()).getRecords(); } catch (IOException e) { return Response.status(Response.Status.INTERNAL_SERVER_ERROR) .entity(String.format("Unexpected %s: %s.", e.getClass().getSimpleName(), e.getMessage())) .build(); } //check users final Set<String> userIds = new HashSet<>(); for (String columnName : records.get(0).toMap().keySet()) { if (columnName.startsWith("by:")) { String userId = columnName.replaceFirst("by:", ""); if (!group.getUsersMap().keySet().contains(Key.create(RegisteredUser.class, userId))) { return Response.status(Response.Status.INTERNAL_SERVER_ERROR) .entity(String.format("User %s not found in this group.", userId)).build(); } userIds.add(userId); } } //build chapters final Set<String> chapterStringsSet = new HashSet<>(); for (CSVRecord record : records) { chapterStringsSet.add(record.get("chapters")); } final List<Key<?>> createdKeys = new ArrayList<>(); try { OfyService.ofy().transact(new Work<List<Key<?>>>() { @Override public List<Key<?>> run() { for (String chapterStrings : chapterStringsSet) { List<String> pieces = Arrays.asList(chapterStrings.split(CSV_CHAPTERS_SEPARATOR)); Key<Chapter> parentChapterKey = null; for (int i = 0; i < pieces.size(); i++) { String partialChapterString = Joiner.on(CSV_CHAPTERS_SEPARATOR) .join(pieces.subList(0, i + 1)); Key<Chapter> chapterKey = chapterStringsMap.get(partialChapterString); if (chapterKey == null) { chapterKey = OfyService.ofy().load().type(Chapter.class).ancestor(group) .filter("name", pieces.get(i)).filter("parentChapterKey", parentChapterKey) .keys().first().now(); chapterStringsMap.put(partialChapterString, chapterKey); } if (chapterKey == null) { Chapter chapter = new Chapter(pieces.get(i), Key.create(group), parentChapterKey); OfyService.ofy().save().entity(chapter).now(); chapterKey = Key.create(chapter); createdKeys.add(chapterKey); LOG.info(String.format("%s created.", chapter)); } chapterStringsMap.put(partialChapterString, chapterKey); parentChapterKey = chapterKey; } } //build entries DateTimeFormatter formatter = DateTimeFormat.forPattern("dd/MM/YY"); Key<Group> groupKey = Key.create(group); for (CSVRecord record : records) { Entry entry = new Entry(); entry.setGroupKey(groupKey); entry.setDate(LocalDate.parse(record.get("date"), formatter)); entry.setAmount(Money.of(CurrencyUnit.of(record.get("currency").toUpperCase()), (invertSign ? -1 : 1) * Double.parseDouble(record.get("value")))); if (!record.get("chapters").isEmpty()) { entry.setChapterKey(chapterStringsMap.get(record.get("chapters"))); } entry.setPayee(record.get("payee")); for (String tag : record.get("tags").split(CSV_TAGS_SEPARATOR)) { if (!tag.trim().isEmpty()) { entry.getTags().add(tag); } } entry.setDescription(record.get("description")); entry.setNote(record.get("notes")); int scale = Math.max(DEFAULT_SHARE_SCALE, entry.getAmount().getScale()); //by shares for (String userId : userIds) { String share = record.get("by:" + userId); double value; if (share.contains("%")) { entry.setByPercentage(true); value = Double.parseDouble(share.replace("%", "")); value = entry.getAmount().getAmount().doubleValue() * value / 100d; } else { value = (invertSign ? -1 : 1) * Double.parseDouble(share); } entry.getByShares().put(Key.create(RegisteredUser.class, userId), BigDecimal.valueOf(value).setScale(scale, RoundingMode.DOWN)); } boolean equalByShares = checkAndBalanceZeroShares(entry.getByShares(), entry.getAmount().getAmount()); entry.setByPercentage(entry.isByPercentage() || equalByShares); //for shares for (String userId : userIds) { String share = record.get("for:" + userId); double value; if (share.contains("%")) { entry.setForPercentage(true); value = Double.parseDouble(share.replace("%", "")); value = entry.getAmount().getAmount().doubleValue() * value / 100d; } else { value = (invertSign ? -1 : 1) * Double.parseDouble(share); } entry.getForShares().put(Key.create(RegisteredUser.class, userId), BigDecimal.valueOf(value).setScale(scale, RoundingMode.DOWN)); } boolean equalForShares = checkAndBalanceZeroShares(entry.getForShares(), entry.getAmount().getAmount()); entry.setForPercentage(entry.isForPercentage() || equalForShares); OfyService.ofy().save().entity(entry).now(); createdKeys.add(Key.create(entry)); EntryOperation operation = new EntryOperation(Key.create(group), Key.create(entry), new Date(), Key.create(RegisteredUser.class, securityContext.getUserPrincipal().getName()), EntryOperation.Type.IMPORT); OfyService.ofy().save().entity(operation).now(); LOG.info(String.format("%s created.", entry)); } return createdKeys; } }); //count keys int numberOfCreatedChapters = 0; int numberOfCreatedEntries = 0; for (Key<?> key : createdKeys) { if (key.getKind().equals(Entry.class.getSimpleName())) { numberOfCreatedEntries = numberOfCreatedEntries + 1; } else if (key.getKind().equals(Chapter.class.getSimpleName())) { numberOfCreatedChapters = numberOfCreatedChapters + 1; } } return Response.ok(String.format("Done: %d chapters and %d entries created.", numberOfCreatedChapters, numberOfCreatedEntries)).build(); } catch (RuntimeException e) { LOG.warning(String.format("Unexpected %s: %s.", e.getClass().getSimpleName(), e.getMessage())); return Response.status(Response.Status.INTERNAL_SERVER_ERROR) .entity(String.format("Unexpected %s: %s.", e.getClass().getSimpleName(), e.getMessage())) .build(); } }
From source file:liteshiftwindow.LSForm.java
public String getTabName() { // When using the JCalendar widget, its "selected day" output is in MMM dd, yyyy format. // This funciton takes that information, finds the first day of the week that selected day is in // and names the tab after it. // e.g. if the user selected Feb 2, a Monday. The following steps are executed: // 1. Find that the first day of that week is Sunday, Feb 1. // 2. Find that the last day of that week is Saturday, Feb 7. // 3. Return the following string: "02/01 - 02/07" // This returned information is later used in the program to "name" the schedule. org.joda.time.format.DateTimeFormatter MdYFormat = DateTimeFormat.forPattern("MMM dd, yyyy"); Date selectedDay = jDateChooser1.getDate(); if (selectedDay == null) return null; String strDay = DateFormat.getDateInstance().format(selectedDay); LocalDate jodaDate = LocalDate.parse(strDay, MdYFormat); LocalDate Sunday = getSunday(jodaDate); org.joda.time.format.DateTimeFormatter MdFormat = DateTimeFormat.forPattern("MM/dd"); String tabName = Sunday.toString(MdFormat) + " - " + Sunday.plusDays(6).toString(MdFormat); return tabName; }
From source file:liteshiftwindow.LSForm.java
public String getNumberDate(String inputDay) { org.joda.time.format.DateTimeFormatter MdYFormat = DateTimeFormat.forPattern("MM/dd/yyyy"); org.joda.time.format.DateTimeFormatter MdFormat = DateTimeFormat.forPattern("MM/dd"); String tabName = jTabbedSchedulePane.getTitleAt(jTabbedSchedulePane.getSelectedIndex()); // TODO: year LocalDate jodaDate = LocalDate.parse(tabName.split(" ")[0] + "/2015", MdYFormat); LocalDate Sunday = getSunday(jodaDate); String[] days = { "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" }; for (int i = 0; i < 7; i++) { if (inputDay.compareTo(days[i]) == 0) return Sunday.plusDays(i).toString(MdFormat); }//w w w . j av a 2s. co m return "0/0"; }
From source file:nz.co.jsrsolutions.tideservice.scraper.provider.EasyTideTideDataProvider.java
License:Open Source License
@Override public List<TidePredictionDay> getTidePredictionDay(Port port) throws TideDataProviderException { HttpGet getRequest;//from w ww .j av a 2s. c om try { getRequest = new EasyTideHttpGet( mUriBuilder.buildGetPredictionUri(mGetTidePredictionUrlSuffix, port.getExternalId(), 3)); HttpResponse response = mHttpClient.execute(getRequest); Parser parser = getHtmlParser(response); // Parse the timezone information NodeList nodeList = new NodeList(); NodeFilter filter = new AndFilter(new TagNameFilter("SPAN"), new HasAttributeFilter("ID", "PredictionSummary1_lblZoneTimeOffset")); parser.reset(); for (NodeIterator e = parser.elements(); e.hasMoreNodes();) { e.nextNode().collectInto(nodeList, filter); } if (nodeList.size() != 1) { throw new TideDataProviderException("Couldn't retrieve the time zone information"); } String timeZoneString = ((TagNode) nodeList.elementAt(0)).getChildren().elementAt(0).getText(); Matcher timeZoneMatcher = mTimeZoneRegexPattern.matcher(timeZoneString); // attempt the common case first int hoursOffset; int minutesOffset; if (timeZoneMatcher.matches()) { hoursOffset = Integer.parseInt(timeZoneMatcher.group(1)); final String minutesString = timeZoneMatcher.group(3); minutesOffset = (minutesString == null) ? 0 : Integer.parseInt(minutesString); } else if (timeZoneString.compareTo("Port predictions (Standard Local Time) are equal to UTC") == 0) { // is already UTC hoursOffset = 0; minutesOffset = 0; } else { throw new TideDataProviderException( "Couldn't parse the time zone information from: ".concat(timeZoneString)); } final DateTimeZone timeZone = DateTimeZone.forOffsetHoursMinutes(hoursOffset, minutesOffset); // Parse the current day (today) information nodeList = new NodeList(); filter = new AndFilter(new TagNameFilter("SPAN"), new HasAttributeFilter("ID", "PredictionSummary1_lblPredictionStart")); parser.reset(); for (NodeIterator e = parser.elements(); e.hasMoreNodes();) { e.nextNode().collectInto(nodeList, filter); } if (nodeList.size() != 1) { throw new TideDataProviderException("Couldn't retrieve today's date"); } String todayString = ((TagNode) nodeList.elementAt(0)).getChildren().elementAt(0).getText(); Matcher todayMatcher = mTodayRegexPattern.matcher(todayString); LocalDate localDate; if (todayMatcher.matches()) { localDate = LocalDate.parse(todayMatcher.group(1).concat(todayMatcher.group(2)), mLocalDateFormatter); } else { throw new TideDataProviderException( "Couldn't parse the time zone information from: ".concat(timeZoneString)); } // Get each of the HW,LW tables nodeList = new NodeList(); filter = new AndFilter(new TagNameFilter("TABLE"), new OrFilter(new HasAttributeFilter("CLASS", "HWLWTable"), new OrFilter(new HasAttributeFilter("CLASS", "HWLWTable first"), new OrFilter(new HasAttributeFilter("CLASS", "HWLWTable last"), new HasAttributeFilter("CLASS", "HWLWTable first last"))))); parser.reset(); for (NodeIterator e = parser.elements(); e.hasMoreNodes();) { e.nextNode().collectInto(nodeList, filter); } int numDays = nodeList.size(); final List<TidePredictionDay> tidePredictionDays = new ArrayList<TidePredictionDay>(numDays); for (int nDay = 0; nDay < numDays; ++nDay) { final TagNode tagNode = (TagNode) nodeList.elementAt(nDay); final TidePredictionDay tidePredictionDay = new TidePredictionDay(); tidePredictionDay.setLocalDate(localDate); // LWHW NodeList lwHwNodeList = new NodeList(); filter = new AndFilter(new TagNameFilter("TH"), new HasAttributeFilter("CLASS", "HWLWTableHWLWCellPrintFriendly")); tagNode.collectInto(lwHwNodeList, filter); // Times and Heights NodeList timeHeightNodeList = new NodeList(); filter = new AndFilter(new TagNameFilter("TD"), new HasAttributeFilter("CLASS", "HWLWTableCellPrintFriendly")); tagNode.collectInto(timeHeightNodeList, filter); int numTides = lwHwNodeList.size(); for (int nTide = 0; nTide < numTides; ++nTide) { final TidePrediction tidePrediction = new TidePrediction(); tidePrediction.setTidePredictionType(TidePredictionType .fromString(lwHwNodeList.elementAt(nTide).getChildren().elementAt(0).getText())); // Set the time LocalTime localTime; String localTimeString = timeHeightNodeList.elementAt(nTide).getChildren().elementAt(0) .getText(); if (localTimeString != null && !localTimeString.isEmpty() && localTimeString.compareTo(" ") != 0) { if (localTimeString.contains("*")) { localTimeString = localTimeString.replace("*", ""); tidePrediction.setIsEstimate(true); } localTime = mLocalTimeFormatter.parseLocalTime(localTimeString); } else { // we can't really make out that this is a sensible prediction // so don't include this continue; } final DateTime dateTime = localDate.toDateTime(localTime, timeZone); tidePrediction.setUtcTime(dateTime); // Set the height where possible final String heightString = timeHeightNodeList.elementAt(nTide + numTides).getChildren() .elementAt(0).getText(); if (heightString != null && !heightString.isEmpty()) { Matcher tideHeightMatcher = mTideHeightRegexPattern.matcher(heightString); if (tideHeightMatcher.matches()) { tidePrediction.setHeight(Float.parseFloat(tideHeightMatcher.group(1))); } } // Tie both together tidePrediction.setTidePredictionDay(tidePredictionDay); tidePredictionDay.getTidePredictions().add(tidePrediction); } tidePredictionDays.add(tidePredictionDay); localDate = localDate.plusDays(1); } return tidePredictionDays; } catch (URISyntaxException e) { throw new TideDataProviderException(e); } catch (IOException e) { throw new TideDataProviderException(e); } catch (ParseException e) { throw new TideDataProviderException(e); } catch (ParserException e) { throw new TideDataProviderException(e); } }
From source file:org.apache.isis.applib.services.settings.SettingAbstract.java
License:Apache License
protected LocalDate parseValueAsLocalDate() { return LocalDate.parse(getValueRaw(), DATE_FORMATTER); }
From source file:org.apache.tajo.datum.DateDatum.java
License:Apache License
public DateDatum(String dateStr) { super(TajoDataTypes.Type.DATE); this.date = LocalDate.parse(dateStr, DEFAULT_FORMATTER); }
From source file:org.apigw.commons.logging.logback.ApigwStripSwedishSSNFromMessageConverter.java
License:Open Source License
private static LocalDate getBirthday(String ssn) { int firstDayNumber = Integer.parseInt(ssn.substring(6, 7)); String yearMonthDay;// ww w .j a va 2 s . c om if (firstDayNumber >= 6) { //Samordningsnummer, need to lessen the day of month by 60 firstDayNumber = firstDayNumber - 6; yearMonthDay = ssn.substring(0, 6) + firstDayNumber + ssn.substring(7, 8); } else { yearMonthDay = ssn.substring(0, 8); } return LocalDate.parse(yearMonthDay, yearMonthDayFormat); }
From source file:org.fenixedu.treasury.services.integration.erp.dto.InterestRequestValueInput.java
License:Open Source License
public LocalDate convertPaymentDateToLocalDate() { return LocalDate.parse(paymentDate, new DateTimeFormatterFactory("YYYY-MM-dd").createDateTimeFormatter()); }
From source file:org.fenixedu.ulisboa.specifications.ui.evaluation.manageevaluationseasonperiod.EvaluationSeasonPeriodController.java
License:Open Source License
@RequestMapping(value = _UPDATEINTERVALS_URI + "{oid}/remove/{start}/{end}", method = RequestMethod.POST) public String removeInterval(@PathVariable("oid") final EvaluationSeasonPeriod period, @PathVariable("start") String start, @PathVariable("end") String end, final Model model, final RedirectAttributes redirectAttributes) { setPeriod(period, model);/*from w ww. j a v a 2 s. c o m*/ try { final DateTimeFormatter pattern = DateTimeFormat.forPattern("yyyy-MM-dd"); period.removeInterval(LocalDate.parse(start, pattern), LocalDate.parse(end, pattern)); return redirect(UPDATEINTERVALS_URL + getPeriod(model).getExternalId(), model, redirectAttributes); } catch (Exception de) { addErrorMessage(de.getLocalizedMessage(), model); setPeriod(period, model); this.setBean(new EvaluationSeasonPeriodBean(period), model); return jspPage("updateintervals"); } }