I've two POJOs in Java: Movie
to use in my database and other Movie
to use like result from request to webservice.
package .service
public class Movie{
@Serialized("Title")
private String title;
@Serialized("Year")
private String year;
@Serialized("Poster")
private String poster
}
package .database
public class Movie{
@ColumnInfo(name = "title")
private String title;
@ColumnInfo(name = "year")
private String year;
@ColumnInfo(name = "poster")
private String poster;
}
I've solved this by creating a class that does the conversion:
public class MovieObjectAdapter {
public static List<service.Movie> castFrom(List<database.Movie>moviesDatabase){
List<service.Movie> moviesModel = new ArrayList<>();
for (database.Movie movie:
moviesDatabase) {
service.Movie movieModel = new service.Movie();
movieModel.setTitle(movie.getTitle());
movieModel.setPoster(movie.getPoster());
movieModel.setYear(movie.getYear());
moviesModel.add(movieModel);
}
return moviesModel;
}
}
But I'm not very happy with this. So which design pattern can you recommend for me to use?
Edit:
Oh I´m sorry i forgot a little detail, my service have another attributes names that my database, that is the reason of i´ve have two pojos. Sorry for omit this.