Recipe Name:
Argument needs to be migrated from DateTimeParser to java.time.format.DateTimeFormatter
Description:
Argument needs to be migrated from DateTimeParser to java.time.format.DateTimeFormatter
Level:
warning
Language:
- java
Tags:
- java.time
- framework specific
- Joda-Time
- quality
Documentation
Migrate from org.joda.time.format.DateTimeFormatterBuilder to Java Time
Joda-Time DateTimeFormatterBuilder migrates to java.time DateTimeFormatterBuilder.
It's the same concept, a builder of the formatter.
Although, most of the methods have a different signature and some even have no equivalent in java.time
Those methods have no equivalent:
- canBuildFormatter
- canBuildPrinter
- canBuildParser
Find some examples below:
BeforeDateTimeFormatterBuilder dtfb = new DateTimeFormatterBuilder(); DateTimeFormatterBuilder appendSecondOfDay = dtfb.appendSecondOfDay(intArg);After
java.time.format.DateTimeFormatterBuilder dtfb = new java.time.format.DateTimeFormatterBuilder(); java.time.format.DateTimeFormatterBuilder appendSecondOfDay = dtfb.appendValue(ChronoField.SECOND_OF_DAY, intArg);References
Recipe
id: scw:java.time:Joda-Time:datetimeformatterbuilder-appendoptional version: 10 metadata: name: Argument needs to be migrated from DateTimeParser to java.time.format.DateTimeFormatter shortDescription: Argument needs to be migrated from DateTimeParser to java.time.format.DateTimeFormatter level: warning language: java enabled: true comment: "Searches for appendOptional method call from java.time.format.DateTimeFormatterBuilder with a wrong argument. \nThis recipe will warn user that argument is incorrect and advice them to change it to the correct type. \nThe correct type for this method is java.time.format.DateTimeFormatter." descriptionFile: descriptions/datetimeformatterbuilder.html tags: java.time;framework specific;Joda-Time;quality search: methodcall: args: 1: type: org.joda.time.format.DateTimeParser name: appendOptional type: java.time.format.DateTimeFormatterBuilder availableFixes: - name: Open javadoc for appendOptional method actions: - goto: type: URL value: https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatterBuilder.html#appendOptional-java.time.format.DateTimeFormatter-