List of usage examples for org.joda.time LocalDate toLocalDateTime
public LocalDateTime toLocalDateTime(LocalTime time)
From source file:divconq.scheduler.Scheduler.java
License:Open Source License
public ISchedule runAt(Task work, LocalDate date, Period period) { LocalDateTime ldt = date.toLocalDateTime(new LocalTime(0, 0).plus(period)); return this.runAt(work, ldt.toDateTime()); }
From source file:energy.usef.core.util.DateTimeUtil.java
License:Apache License
/** * Creates a LocalDateTime set to the start of the given date (date at 00:00:00.000) * * @param date - the date for which to determine the start of day. * @return LocalDateTime set to the start of the given date. *///from w ww . j av a2 s . com public static LocalDateTime getStartOfDay(LocalDate date) { return date.toLocalDateTime(new LocalTime()).withTime(0, 0, 0, 0); }
From source file:energy.usef.core.util.PtuUtil.java
License:Apache License
/** * Return the number of PTU's between two {@link LocalDate}'s based on the ptuDuration and ptuIndex of the end date. * * @param startDate Start date for the difference (starting with ptu index 1) * @param endDate End date for the difference (ending at parameter ptuIndex) * @param ptuStartIndex The ptu index of the start date * @param ptuEndIndex The ptu index of the end date * @param ptuDuration Number of minutes per PTU * @return/* ww w .j av a 2 s .c o m*/ */ public static Integer numberOfPtusBetween(LocalDate startDate, LocalDate endDate, int ptuStartIndex, int ptuEndIndex, int ptuDuration) { Double ptusPassed = Math .floor(Minutes.minutesBetween(startDate.toLocalDateTime(LocalTime.MIDNIGHT), endDate.toLocalDateTime(LocalTime.MIDNIGHT)).getMinutes() / ptuDuration) - ptuStartIndex + ptuEndIndex; return ptusPassed.intValue(); }
From source file:org.openhat.androPDI.ports.editors.DialPortDateTimeEditor.java
License:Open Source License
@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.date_time_editor, container); tvDate = (TextView) view.findViewById(R.id.date_time_editor_date); tvDate.setText(DateTimeFormat.mediumDate().print(currentDate)); tvTime = (TextView) view.findViewById(R.id.date_time_editor_time); tvTime.setText(DateTimeFormat.mediumTime().print(currentDate)); btnDate = (Button) view.findViewById(R.id.date_time_editor_select_date_button); btnTime = (Button) view.findViewById(R.id.date_time_editor_select_time_button); spSelect = (Spinner) view.findViewById(R.id.date_time_editor_spinner); btnOk = (Button) view.findViewById(R.id.date_time_editor_ok_button); btnCancel = (Button) view.findViewById(R.id.date_time_editor_cancel_button); getDialog().setTitle("Select date and time"); btnTime.setOnClickListener(new View.OnClickListener() { @Override// ww w .j a v a2 s.c o m public void onClick(View v) { timePicker = new TimePickerDialogFragment(currentDate, tvTime); timePicker.show(getFragmentManager(), "timePicker"); } }); btnDate.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { datePicker = new DatePickerDialogFragment(currentDate, tvDate); datePicker.show(getFragmentManager(), "datePicker"); } }); spSelect.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { setEventTime(position); } @Override public void onNothingSelected(AdapterView<?> parent) { } }); btnOk.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // parse date LocalDate date = null; LocalTime time = null; date = DateTimeFormat.mediumDate().parseLocalDate(tvDate.getText().toString()); String t = tvTime.getText().toString(); /* // add seconds to time if they're missing if (t.split(":").length <= 2) t += ":00"; */ time = DateTimeFormat.mediumTime().parseLocalTime(t); LocalDateTime result = date.toLocalDateTime(time); dismiss(); dismissedListener.dismissed(result); } }); btnCancel.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { dismiss(); } }); return view; }
From source file:org.smartdeveloperhub.harvesters.it.testing.generator.ProjectActivityGenerator.java
License:Apache License
private void createNewIssues(final LocalDate today) { final int inProgressIssues = findIssuesByStatus(Status.IN_PROGRESS).size(); final int openIssues = findIssuesByStatus(Status.OPEN).size(); final int base = this.participants.size() > 3 ? this.participants.size() : 3; int newIssues = 0; if (openIssues < inProgressIssues) { newIssues = this.random.nextInt(base) + this.random.nextInt(base * 3) / 4; } else if (openIssues * 2 < inProgressIssues) { newIssues = this.random.nextInt(base * 3) / 4; } else if (openIssues * 3 < inProgressIssues) { newIssues = this.random.nextInt(base * 2) / 3; } else {/* ww w . j a va 2 s. co m*/ newIssues = this.random.nextBoolean() ? 1 : 0; } final Iterator<LocalTime> time = this.workDay.workingTimes(); int start = this.issues.size(); for (int i = 0; i < newIssues; i++) { createIssue(Integer.toString(++start), today.toLocalDateTime(time.next())); } }
From source file:org.smartdeveloperhub.harvesters.it.testing.generator.ProjectActivityGenerator.java
License:Apache License
private void evaluate(final Issue issue, final LocalDate today) { final Set<Item> changes = Sets.newLinkedHashSet(); final LocalDateTime now = today.toLocalDateTime(this.workDay.workingTime()); LOGGER.trace(" * Evaluated issue {} at {}", issue.getId(), now); if (issue.getAssignee() == null) { final Contributor assignee = selectContributor(); issue.setAssignee(assignee.getId()); final AssigneeChangeItem item = new AssigneeChangeItem(); item.setOldValue(null);/*from w w w . j a v a2 s . co m*/ item.setNewValue(issue.getAssignee()); changes.add(item); LOGGER.trace(" + Assigned to {}", assignee.getName()); } if (issue.getType() == null) { issue.setType(selectType()); final TypeChangeItem item = new TypeChangeItem(); item.setOldValue(null); item.setNewValue(issue.getType()); changes.add(item); LOGGER.trace(" + Type: {}", issue.getType()); } if (this.random.nextInt(100) < 10) { issue.setStatus(Status.CLOSED); issue.setClosed(now.toDateTime()); final ClosedChangeItem item = new ClosedChangeItem(); item.setOldValue(null); item.setNewValue(issue.getClosed()); changes.add(item); LOGGER.trace(" + Action: close"); } else { issue.setStatus(Status.IN_PROGRESS); LOGGER.trace(" + Action: start work"); } final StatusChangeItem item = new StatusChangeItem(); item.setOldValue(Status.OPEN); item.setNewValue(issue.getStatus()); changes.add(item); final Entry entry = new Entry(); entry.setTimeStamp(now.toDateTime()); entry.setAuthor(issue.getAssignee()); entry.getItems().addAll(changes); final ChangeLog changeLog = new ChangeLog(); changeLog.getEntries().add(entry); issue.setChanges(changeLog); }
From source file:org.smartdeveloperhub.harvesters.it.testing.generator.ProjectActivityGenerator.java
License:Apache License
private void workOn(final Issue issue, final LocalDate today) { final Set<Item> changes = Sets.newLinkedHashSet(); final LocalDateTime now = today.toLocalDateTime(this.workDay.workingTime()); LOGGER.trace(" * Worked on issue {} at {}", issue.getId(), now); // Bounce assignment if (this.random.nextBoolean()) { final Contributor oldValue = findContributor(issue.getAssignee()); final Contributor newValue = selectAlternativeContributor(issue.getAssignee()); if (newValue != null) { issue.setAssignee(newValue.getId()); final AssigneeChangeItem item = new AssigneeChangeItem(); item.setOldValue(oldValue.getId()); item.setNewValue(issue.getAssignee()); changes.add(item);/*from w w w . java2 s .c om*/ LOGGER.trace(" + Changed assignment from {} to {}", oldValue.getName(), newValue.getName()); } } // Change type if (this.random.nextBoolean()) { final Type oldValue = issue.getType(); final Type newValue = selectAlternativeType(oldValue); issue.setType(newValue); final TypeChangeItem item = new TypeChangeItem(); item.setOldValue(oldValue); item.setNewValue(newValue); changes.add(item); LOGGER.trace(" + Changed type from {} to {}", oldValue, newValue); } // Change title if (this.random.nextBoolean()) { final String oldValue = issue.getName(); final String newValue = StateUtil.generateSentence(); issue.setName(newValue); final TitleChangeItem item = new TitleChangeItem(); item.setOldValue(oldValue); item.setNewValue(newValue); changes.add(item); LOGGER.trace(" + Changed title from '{}' to '{}'", oldValue, newValue); } // Change description if (this.random.nextBoolean()) { final String oldValue = issue.getName(); final String newValue = StateUtil.generateSentences(1, 2 + this.random.nextInt(8)); issue.setDescription(newValue); final DescriptionChangeItem item = new DescriptionChangeItem(); item.setOldValue(oldValue); item.setNewValue(newValue); changes.add(item); LOGGER.trace(" + Changed description from '{}' to '{}'", oldValue, newValue); } // Change severity if (this.random.nextBoolean()) { final Severity oldValue = issue.getSeverity(); final Severity newValue = selectAlternativeSeverity(oldValue); issue.setSeverity(newValue); final SeverityChangeItem item = new SeverityChangeItem(); item.setOldValue(oldValue); item.setNewValue(newValue); changes.add(item); LOGGER.trace(" + Changed severity from {} to {}", oldValue, newValue); } // Change priority if (this.random.nextBoolean()) { final Priority oldValue = issue.getPriority(); final Priority newValue = selectAlternativePriority(oldValue); issue.setPriority(newValue); final PriorityChangeItem item = new PriorityChangeItem(); item.setOldValue(oldValue); item.setNewValue(newValue); changes.add(item); LOGGER.trace(" + Changed priority from {} to {}", oldValue, newValue); } // Change due to boolean reescheduled = false; boolean isCloseable = true; if (this.random.nextBoolean()) { isCloseable = false; reescheduled = scheduleIssue(issue, changes, now); } // Change effort, if required or decided to. if (reescheduled || issue.getDueTo() != null && this.random.nextBoolean()) { isCloseable = false; estimateIssue(issue, changes, now); } final ChangeDecissionPoint cdp = new ChangeDecissionPoint(this.random); // Add/remove components final ChangeInformationPoint ccip = new ComponentChangeInformationPoint(issue); if (ccip.canModify() && this.random.nextBoolean()) { final ComponentManager pep = new ComponentManager(issue, changes); final int affectedComponents = 1 + this.random.nextInt(Math.max(2, issue.getComponents().size() - 1)); for (int i = 0; i < affectedComponents; i++) { cdp.decide(ccip).apply(pep); } pep.logActivity(); } // Add/remove versions final ChangeInformationPoint vcip = new VersionsChangeInformationPoint(issue); if (vcip.canModify() && this.random.nextBoolean()) { final VersionManager pep = new VersionManager(issue, changes); final int affectedVersions = 1 + this.random.nextInt(Math.max(2, issue.getVersions().size() - 1)); for (int i = 0; i < affectedVersions; i++) { cdp.decide(vcip).apply(pep); } pep.logActivity(); } /** * TODO: Add logic for adding commits */ /** * TODO: Add logic for adding sub-issues */ /** * TODO: Add logic for adding blocked-issues */ // Add/remove tags final ChangeInformationPoint tcip = new TagsChangeInformationPoint(issue); if (tcip.canModify() && this.random.nextBoolean()) { final TagManager pep = new TagManager(issue, changes); final int affectedTags = 1 + this.random.nextInt(Math.max(2, issue.getTags().size() - 1)); for (int i = 0; i < affectedTags; i++) { cdp.decide(tcip).apply(pep); } pep.logActivity(); } if (isCloseable && mustCloseIssue(issue, now)) { issue.setStatus(Status.CLOSED); issue.setClosed(now.toDateTime()); final StatusChangeItem sChange = new StatusChangeItem(); sChange.setOldValue(Status.IN_PROGRESS); sChange.setNewValue(Status.CLOSED); changes.add(sChange); final ClosedChangeItem cdChange = new ClosedChangeItem(); cdChange.setOldValue(null); cdChange.setNewValue(issue.getClosed()); changes.add(cdChange); LOGGER.trace(" + Action: close"); } final Entry entry = new Entry(); entry.setTimeStamp(now.toDateTime()); entry.setAuthor(issue.getAssignee()); entry.getItems().addAll(changes); final ChangeLog changeLog = issue.getChanges(); changeLog.getEntries().add(entry); }
From source file:org.smartdeveloperhub.harvesters.it.testing.generator.ProjectActivityGenerator.java
License:Apache License
private void reopen(final Issue issue, final LocalDate today) { final Set<Item> changes = Sets.newLinkedHashSet(); final LocalDateTime now = today.toLocalDateTime(this.workDay.workingTime()); LOGGER.trace(" * Reopened issue {} at {}", issue.getId(), now); // Bounce assignment if (this.random.nextBoolean()) { final Contributor oldValue = findContributor(issue.getAssignee()); final Contributor newValue = selectContributor(); issue.setAssignee(newValue.getId()); final AssigneeChangeItem item = new AssigneeChangeItem(); item.setOldValue(oldValue.getId()); item.setNewValue(issue.getAssignee()); changes.add(item);/*from w ww.jav a2s . c om*/ LOGGER.trace(" + Changed assignment from {} to {}", oldValue.getName(), newValue.getName()); } { issue.setStatus(Status.OPEN); final StatusChangeItem item = new StatusChangeItem(); item.setOldValue(Status.CLOSED); item.setNewValue(Status.OPEN); changes.add(item); } { final DateTime oldValue = issue.getOpened(); issue.setOpened(now.toDateTime()); final OpenedChangeItem item = new OpenedChangeItem(); item.setOldValue(oldValue); item.setNewValue(issue.getOpened()); changes.add(item); } { final DateTime oldValue = issue.getClosed(); issue.setClosed(null); final ClosedChangeItem item = new ClosedChangeItem(); item.setOldValue(oldValue); item.setNewValue(issue.getClosed()); changes.add(item); } { boolean scheduled = false; if (this.random.nextBoolean()) { scheduled = true; scheduleIssue(issue, changes, now); } else { final DateTime oldValue = issue.getDueTo(); if (oldValue != null) { final DueToDateChangeItem item = new DueToDateChangeItem(); item.setOldValue(oldValue); item.setNewValue(null); changes.add(item); } } if (scheduled && this.random.nextBoolean()) { estimateIssue(issue, changes, now); } else { final Duration oldValue = issue.getEstimatedTime(); if (oldValue != null) { final EstimatedTimeChangeItem item = new EstimatedTimeChangeItem(); item.setOldValue(oldValue); item.setNewValue(null); changes.add(item); } } } final Entry entry = new Entry(); entry.setTimeStamp(now.toDateTime()); entry.setAuthor(issue.getAssignee()); entry.getItems().addAll(changes); final ChangeLog changeLog = issue.getChanges(); changeLog.getEntries().add(entry); }
From source file:org.smartdeveloperhub.harvesters.it.testing.generator.ProjectActivityGenerator.java
License:Apache License
private LocalDateTime createDueTo(final LocalDateTime dateTime) { LocalDate localDate = dateTime.toLocalDate().plusDays(1 + this.random.nextInt(15)); while (Utils.isWorkingDay(localDate)) { localDate = localDate.plusDays(1); }// w w w . j a v a 2 s .c o m return localDate.toLocalDateTime(this.workDay.workingHour()); }
From source file:propel.core.validation.propertyMetadata.LocalDatePropertyMetadata.java
License:Open Source License
/** * Constructor/* w w w .j a v a2 s . co m*/ */ public LocalDatePropertyMetadata(String name, LocalDate minValue, LocalDate maxValue, boolean notNull) { super(name, minValue.toLocalDateTime(LocalTime.MIDNIGHT), maxValue.toLocalDateTime(LocalTime.MIDNIGHT), notNull); setMinValue(minValue.toLocalDateTime(LocalTime.MIDNIGHT)); setMaxValue(maxValue.toLocalDateTime(LocalTime.MIDNIGHT)); }