fixed SearchPerson

This commit is contained in:
Stuart Boston
2015-03-02 20:24:43 +00:00
parent e118f56f99
commit e850ba1589
4 changed files with 9 additions and 8 deletions
@@ -29,6 +29,7 @@ import com.omertron.themoviedbapi.model2.collection.Collection;
import com.omertron.themoviedbapi.model2.company.Company;
import com.omertron.themoviedbapi.model2.list.UserList;
import com.omertron.themoviedbapi.model2.movie.MovieBasic;
import com.omertron.themoviedbapi.model2.person.PersonFind;
import com.omertron.themoviedbapi.model2.tv.TVBasic;
import com.omertron.themoviedbapi.tools.HttpTools;
import com.omertron.themoviedbapi.wrapper.WrapperGenericList;
@@ -76,6 +77,8 @@ public class AbstractMethod {
});
TYPE_REFS.put(Person.class, new TypeReference<WrapperGenericList<Person>>() {
});
TYPE_REFS.put(PersonFind.class, new TypeReference<WrapperGenericList<PersonFind>>() {
});
}
protected static TypeReference getTypeReference(Class aClass) {
@@ -23,10 +23,10 @@ import com.omertron.themoviedbapi.MovieDbException;
import com.omertron.themoviedbapi.enumeration.SearchType;
import com.omertron.themoviedbapi.model.MovieDb;
import com.omertron.themoviedbapi.model2.keyword.Keyword;
import com.omertron.themoviedbapi.model2.person.Person;
import com.omertron.themoviedbapi.model2.collection.Collection;
import com.omertron.themoviedbapi.model2.company.Company;
import com.omertron.themoviedbapi.model2.list.UserList;
import com.omertron.themoviedbapi.model2.person.PersonFind;
import com.omertron.themoviedbapi.model2.tv.TVBasic;
import com.omertron.themoviedbapi.results.TmdbResultsList;
import com.omertron.themoviedbapi.tools.ApiUrl;
@@ -220,7 +220,7 @@ public class TmdbSearch extends AbstractMethod {
* @return
* @throws MovieDbException
*/
public TmdbResultsList<Person> searchPeople(String query, Integer page, Boolean includeAdult, SearchType searchType) throws MovieDbException {
public TmdbResultsList<PersonFind> searchPeople(String query, Integer page, Boolean includeAdult, SearchType searchType) throws MovieDbException {
TmdbParameters parameters = new TmdbParameters();
parameters.add(Param.QUERY, query);
parameters.add(Param.ADULT, includeAdult);
@@ -230,8 +230,8 @@ public class TmdbSearch extends AbstractMethod {
}
URL url = new ApiUrl(apiKey, MethodBase.SEARCH).setSubMethod(MethodSub.PERSON).buildUrl(parameters);
WrapperGenericList<Person> wrapper = processWrapper(getTypeReference(Person.class), url, "person");
TmdbResultsList<Person> results = new TmdbResultsList<Person>(wrapper.getResults());
WrapperGenericList<PersonFind> wrapper = processWrapper(getTypeReference(PersonFind.class), url, "person");
TmdbResultsList<PersonFind> results = new TmdbResultsList<PersonFind>(wrapper.getResults());
results.copyWrapper(wrapper);
return results;
}
@@ -41,7 +41,6 @@ public class PersonFind extends PersonBasic {
private Float popularity;
@JsonProperty("profile_path")
private String profilePath;
// @JsonProperty("known_for")
private List<? extends MediaBasic> knownFor;
public Boolean getAdult() {
@@ -74,7 +73,6 @@ public class PersonFind extends PersonBasic {
@JsonTypeInfo(
use = JsonTypeInfo.Id.NAME,
// include = JsonTypeInfo.As.EXTERNAL_PROPERTY,
include = JsonTypeInfo.As.PROPERTY,
property = "media_type",
defaultImpl = MediaBasic.class
@@ -24,10 +24,10 @@ import com.omertron.themoviedbapi.MovieDbException;
import com.omertron.themoviedbapi.enumeration.SearchType;
import com.omertron.themoviedbapi.model.MovieDb;
import com.omertron.themoviedbapi.model2.keyword.Keyword;
import com.omertron.themoviedbapi.model2.person.Person;
import com.omertron.themoviedbapi.model2.collection.Collection;
import com.omertron.themoviedbapi.model2.company.Company;
import com.omertron.themoviedbapi.model2.list.UserList;
import com.omertron.themoviedbapi.model2.person.PersonFind;
import com.omertron.themoviedbapi.model2.tv.TVBasic;
import com.omertron.themoviedbapi.results.TmdbResultsList;
import org.junit.After;
@@ -183,7 +183,7 @@ public class TmdbSearchTest extends AbstractTests {
public void testSearchPeople() throws MovieDbException {
LOG.info("searchPeople");
String personName = "Bruce Willis";
TmdbResultsList<Person> result = instance.searchPeople(personName, null, null, SearchType.PHRASE);
TmdbResultsList<PersonFind> result = instance.searchPeople(personName, null, null, SearchType.PHRASE);
assertNotNull("Null results", result);
assertNotNull("Null people", result.getResults());
assertFalse("Empty people", result.isEmpty());