Java Code Examples for java.time.Duration#parse()
The following examples show how to use
java.time.Duration#parse() .
These examples are extracted from open source projects.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source Project: styx File: TimeUtil.java License: Apache License 2.0 | 6 votes |
/** * Applies an ISO 8601 Duration to a {@link ZonedDateTime}. * * <p>Since the JDK defined different types for the different parts of a Duration * specification, this utility method is needed when a full Duration is to be applied to a * {@link ZonedDateTime}. See {@link Period} and {@link Duration}. * * <p>All date-based parts of a Duration specification (Year, Month, Day or Week) are parsed * using {@link Period#parse(CharSequence)} and added to the time. The remaining parts (Hour, * Minute, Second) are parsed using {@link Duration#parse(CharSequence)} and added to the time. * * @param time A zoned date time to apply the offset to * @param offset The offset in ISO 8601 Duration format * @return A zoned date time with the offset applied */ public static ZonedDateTime addOffset(ZonedDateTime time, String offset) { final Matcher matcher = OFFSET_PATTERN.matcher(offset); if (!matcher.matches()) { throw new DateTimeParseException("Unable to parse offset period", offset, 0); } final String sign = matcher.group(1); final String periodOffset = sign + "P" + Optional.ofNullable(matcher.group(2)).orElse("0D"); final String durationOffset = sign + "PT" + Optional.ofNullable(matcher.group(4)).orElse("0S"); final TemporalAmount dateAmount = Period.parse(periodOffset); final TemporalAmount timeAmount = Duration.parse(durationOffset); return time.plus(dateAmount).plus(timeAmount); }
Example 2
Source Project: vertexium File: DropWizardMetricRegistry.java License: Apache License 2.0 | 5 votes |
static Duration parseDuration(String period) { period = period.trim(); try { return Duration.parse(period.toUpperCase()); } catch (Exception ex) { return Duration.parse("PT" + period.toUpperCase()); } }
Example 3
Source Project: hottub File: TCKDuration.java License: GNU General Public License v2.0 | 5 votes |
@Test(dataProvider="parseSuccess") public void factory_parse_comma(String text, long expectedSeconds, int expectedNanoOfSecond) { text = text.replace('.', ','); Duration test = Duration.parse(text); assertEquals(test.getSeconds(), expectedSeconds); assertEquals(test.getNano(), expectedNanoOfSecond); }
Example 4
Source Project: jdk8u-dev-jdk File: TCKDuration.java License: GNU General Public License v2.0 | 5 votes |
@Test(dataProvider="parseSuccess") public void factory_parse_comma(String text, long expectedSeconds, int expectedNanoOfSecond) { text = text.replace('.', ','); Duration test = Duration.parse(text); assertEquals(test.getSeconds(), expectedSeconds); assertEquals(test.getNano(), expectedNanoOfSecond); }
Example 5
Source Project: cucumber-performance File: PerfCucumberRunnerTest.java License: MIT License | 5 votes |
@Test public void testPerfCucumberRunnerCucumberFeatureListOfStringSliceDuration() { PerfRuntimeOptionsFactory optf = new PerfRuntimeOptionsFactory(options1.class); PerfRuntimeOptions opt = optf.create(); PlanParser parser = new PlanParser(UUID::randomUUID); Supplier<ClassLoader> classLoader = this.getClass()::getClassLoader; List<PerfPlan> res = new PathPlanSupplier(classLoader, opt.getPlanPaths(), parser).get(); List <PerfGroup> pg =buildGroups(res.get(0).getSaladPlan().getPlan().getChildren().get(0)); RunnerOptions ro = new RunnerOptions(pg.get(1)); ro.setFeatures(FeatureBuilder.getFeatures(FeatureBuilder.createRuntimeOptions(options1.class))); CucumberRunner runner = new CucumberRunner(ro,opt.getCucumberOptions(),Duration.parse("PT5.1S"),false); assertEquals("test",runner.getFeatures().get(2).getName()); }
Example 6
Source Project: metasfresh-webui-api-legacy File: KPIRepository.java License: GNU General Public License v3.0 | 5 votes |
private KPI createKPI(final I_WEBUI_KPI kpiDef) { final IModelTranslationMap trls = InterfaceWrapperHelper.getModelTranslationMap(kpiDef); Duration compareOffset = null; if (kpiDef.isGenerateComparation()) { final String compareOffetStr = kpiDef.getCompareOffset(); compareOffset = Duration.parse(compareOffetStr); } return KPI.builder() .setId(kpiDef.getWEBUI_KPI_ID()) .setCaption(trls.getColumnTrl(I_WEBUI_KPI.COLUMNNAME_Name, kpiDef.getName())) .setDescription(trls.getColumnTrl(I_WEBUI_KPI.COLUMNNAME_Description, kpiDef.getDescription())) .setChartType(KPIChartType.forCode(kpiDef.getChartType())) .setFields(retrieveKPIFields(kpiDef.getWEBUI_KPI_ID(), kpiDef.isGenerateComparation())) // .setCompareOffset(compareOffset) // .setTimeRangeDefaults(KPITimeRangeDefaults.builder() .defaultTimeRangeFromString(kpiDef.getES_TimeRange()) .defaultTimeRangeEndOffsetFromString(kpiDef.getES_TimeRange_End()) .build()) // .setPollIntervalSec(kpiDef.getPollIntervalSec()) // .setESSearchIndex(kpiDef.getES_Index()) .setESSearchTypes(kpiDef.getES_Type()) .setESQuery(kpiDef.getES_Query()) // .build(); }
Example 7
Source Project: hottub File: TCKDuration.java License: GNU General Public License v2.0 | 5 votes |
@Test(dataProvider="parseSuccess") public void factory_parse_minus(String text, long expectedSeconds, int expectedNanoOfSecond) { Duration test; try { test = Duration.parse("-" + text); } catch (DateTimeParseException ex) { assertEquals(expectedSeconds == Long.MIN_VALUE, true); return; } // not inside try/catch or it breaks test assertEquals(test, Duration.ofSeconds(expectedSeconds, expectedNanoOfSecond).negated()); }
Example 8
Source Project: openjdk-jdk9 File: TCKDuration.java License: GNU General Public License v2.0 | 4 votes |
@Test(expectedExceptions=DateTimeParseException.class) public void factory_parse_tooSmall() { Duration.parse("PT" + Long.MIN_VALUE + "1S"); }
Example 9
Source Project: jdk8u_jdk File: TCKDuration.java License: GNU General Public License v2.0 | 4 votes |
@Test(expectedExceptions=NullPointerException.class) public void factory_parse_nullText() { Duration.parse(null); }
Example 10
Source Project: TencentKona-8 File: TCKDuration.java License: GNU General Public License v2.0 | 4 votes |
@Test(expectedExceptions=DateTimeParseException.class) public void factory_parse_tooBig() { Duration.parse("PT" + Long.MAX_VALUE + "1S"); }
Example 11
Source Project: vividus File: DateExpression.java License: Apache License 2.0 | 4 votes |
public ZonedDateTime processDuration(ZonedDateTime zonedDateTime) { Duration duration = Duration.parse(DURATION_DESIGNATOR + getDurationString()); return !hasMinusSign() ? zonedDateTime.plus(duration) : zonedDateTime.minus(duration); }
Example 12
Source Project: jdk8u-jdk File: TCKDuration.java License: GNU General Public License v2.0 | 4 votes |
@Test(expectedExceptions=DateTimeParseException.class) public void factory_parse_tooBig() { Duration.parse("PT" + Long.MAX_VALUE + "1S"); }
Example 13
Source Project: spring-analysis-note File: DurationFormatter.java License: MIT License | 4 votes |
@Override public Duration parse(String text, Locale locale) throws ParseException { return Duration.parse(text); }
Example 14
Source Project: openjdk-jdk9 File: TCKDuration.java License: GNU General Public License v2.0 | 4 votes |
@Test(expectedExceptions=NullPointerException.class) public void factory_parse_nullText() { Duration.parse(null); }
Example 15
Source Project: jdk8u-jdk File: TCKDuration.java License: GNU General Public License v2.0 | 4 votes |
@Test(dataProvider="parseSuccess") public void factory_parse_lowerCase(String text, long expectedSeconds, int expectedNanoOfSecond) { Duration test = Duration.parse(text.toLowerCase(Locale.ENGLISH)); assertEquals(test.getSeconds(), expectedSeconds); assertEquals(test.getNano(), expectedNanoOfSecond); }
Example 16
Source Project: openjdk-jdk8u File: TCKDuration.java License: GNU General Public License v2.0 | 4 votes |
@Test(expectedExceptions=NullPointerException.class) public void factory_parse_nullText() { Duration.parse(null); }
Example 17
Source Project: jdk8u-jdk File: TCKDuration.java License: GNU General Public License v2.0 | 4 votes |
@Test(dataProvider="parseSuccess") public void factory_parse(String text, long expectedSeconds, int expectedNanoOfSecond) { Duration test = Duration.parse(text); assertEquals(test.getSeconds(), expectedSeconds); assertEquals(test.getNano(), expectedNanoOfSecond); }
Example 18
Source Project: skara File: MailingListBridgeBotFactory.java License: GNU General Public License v2.0 | 4 votes |
@Override public List<Bot> create(BotConfiguration configuration) { var ret = new ArrayList<Bot>(); var specific = configuration.specific(); var from = EmailAddress.from(specific.get("name").asString(), specific.get("mail").asString()); var ignoredUsers = specific.get("ignored").get("users").stream() .map(JSONValue::asString) .collect(Collectors.toSet()); var ignoredComments = specific.get("ignored").get("comments").stream() .map(JSONValue::asString) .map(pattern -> Pattern.compile(pattern, Pattern.MULTILINE | Pattern.DOTALL)) .collect(Collectors.toSet()); var listArchive = URIBuilder.base(specific.get("server").get("archive").asString()).build(); var listSmtp = specific.get("server").get("smtp").asString(); var interval = specific.get("server").contains("interval") ? Duration.parse(specific.get("server").get("interval").asString()) : Duration.ofSeconds(1); var webrevRepo = configuration.repository(specific.get("webrevs").get("repository").asString()); var webrevRef = configuration.repositoryRef(specific.get("webrevs").get("repository").asString()); var webrevWeb = specific.get("webrevs").get("web").asString(); var archiveRepo = configuration.repository(specific.get("archive").asString()); var archiveRef = configuration.repositoryRef(specific.get("archive").asString()); var issueTracker = URIBuilder.base(specific.get("issues").asString()).build(); var listNamesForReading = new HashSet<EmailAddress>(); var allRepositories = new HashSet<HostedRepository>(); var readyLabels = specific.get("ready").get("labels").stream() .map(JSONValue::asString) .collect(Collectors.toSet()); var readyComments = specific.get("ready").get("comments").stream() .map(JSONValue::asObject) .collect(Collectors.toMap(obj -> obj.get("user").asString(), obj -> Pattern.compile(obj.get("pattern").asString()))); var cooldown = specific.contains("cooldown") ? Duration.parse(specific.get("cooldown").asString()) : Duration.ofMinutes(1); for (var repoConfig : specific.get("repositories").asArray()) { var repo = repoConfig.get("repository").asString(); var censusRepo = configuration.repository(repoConfig.get("census").asString()); var censusRef = configuration.repositoryRef(repoConfig.get("census").asString()); Map<String, String> headers = repoConfig.contains("headers") ? repoConfig.get("headers").fields().stream() .collect(Collectors.toMap(JSONObject.Field::name, field -> field.value().asString())) : Map.of(); var lists = parseLists(repoConfig.get("lists")); var folder = repoConfig.contains("folder") ? repoConfig.get("folder").asString() : configuration.repositoryName(repo); var botBuilder = MailingListBridgeBot.newBuilder().from(from) .repo(configuration.repository(repo)) .archive(archiveRepo) .archiveRef(archiveRef) .censusRepo(censusRepo) .censusRef(censusRef) .lists(lists) .ignoredUsers(ignoredUsers) .ignoredComments(ignoredComments) .listArchive(listArchive) .smtpServer(listSmtp) .webrevStorageRepository(webrevRepo) .webrevStorageRef(webrevRef) .webrevStorageBase(Path.of(folder)) .webrevStorageBaseUri(URIBuilder.base(webrevWeb).build()) .readyLabels(readyLabels) .readyComments(readyComments) .issueTracker(issueTracker) .headers(headers) .sendInterval(interval) .cooldown(cooldown) .seedStorage(configuration.storageFolder().resolve("seeds")); if (repoConfig.contains("reponame")) { botBuilder.repoInSubject(repoConfig.get("reponame").asBoolean()); } if (repoConfig.contains("branchname")) { botBuilder.branchInSubject(Pattern.compile(repoConfig.get("branchname").asString())); } ret.add(botBuilder.build()); if (!repoConfig.contains("bidirectional") || repoConfig.get("bidirectional").asBoolean()) { for (var list : lists) { listNamesForReading.add(list.list()); } } allRepositories.add(configuration.repository(repo)); } var mailmanServer = MailingListServerFactory.createMailmanServer(listArchive, listSmtp, Duration.ZERO); var listsForReading = listNamesForReading.stream() .map(name -> mailmanServer.getList(name.toString())) .collect(Collectors.toSet()); var bot = new MailingListArchiveReaderBot(from, listsForReading, allRepositories); ret.add(bot); return ret; }
Example 19
Source Project: hottub File: TCKDuration.java License: GNU General Public License v2.0 | 4 votes |
@Test(expectedExceptions=DateTimeParseException.class) public void factory_parse_tooBig_decimal() { Duration.parse("PT" + Long.MAX_VALUE + "1.1S"); }
Example 20
Source Project: TencentKona-8 File: TCKDuration.java License: GNU General Public License v2.0 | 4 votes |
@Test(expectedExceptions=DateTimeParseException.class) public void factory_parse_tooBig_decimal() { Duration.parse("PT" + Long.MAX_VALUE + "1.1S"); }