Recipe Name:
Argument needs to be migrated to java.time.format.DateTimeFormatter
Description:
Argument needs to be migrated 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:Java-Time:datetimeformatterbuilder-append version: 10 metadata: name: Argument needs to be migrated to java.time.format.DateTimeFormatter shortDescription: Argument needs to be migrated to java.time.format.DateTimeFormatter level: warning language: java enabled: true comment: "Searches for append 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: not: type: java.time.format.DateTimeFormatter name: append type: java.time.format.DateTimeFormatterBuilder availableFixes: - name: Open javadoc for append method actions: - goto: type: URL value: https://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatterBuilder.html#append-java.time.format.DateTimeFormatter-