use of com.pratilipi.api.annotation.Get in project pratilipi by Pratilipi.
the class PratilipiListV2Api method get.
@Get
public Response get(GetRequest request) throws InsufficientAccessException, UnexpectedServerException {
PratilipiFilter pratilipiFilter = new PratilipiFilter();
pratilipiFilter.setAuthorId(request.authorId);
pratilipiFilter.setLanguage(request.language);
pratilipiFilter.setType(request.type);
pratilipiFilter.setListName(request.listName);
pratilipiFilter.setState(request.state);
pratilipiFilter.setOrderByLastUpdate(request.orderByLastUpdated);
DataListCursorTuple<PratilipiData> pratilipiListCursorTuple = PratilipiDataUtil.getPratilipiDataList(request.searchQuery, request.eventId, pratilipiFilter, request.cursor, request.offset, request.resultCount == null ? 20 : request.resultCount);
// Preparing & returning response object.
Response response = new Response(pratilipiListCursorTuple.getDataList(), pratilipiListCursorTuple.getCursor(), pratilipiListCursorTuple.getNumberFound());
if (UxModeFilter.isAndroidApp() && request.eventId != null && request.cursor == null) {
Event event = DataAccessorFactory.getDataAccessor().getEvent(request.eventId);
response.setBannerUrl(EventDataUtil.createEventBannerUrl(event));
response.setDescription(event.getDescription());
}
return response;
}
use of com.pratilipi.api.annotation.Get in project pratilipi by Pratilipi.
the class AuthorApi method get.
@Get
public Response get(GetRequest request) {
DataAccessor dataAccessor = DataAccessorFactory.getDataAccessor();
Author author = dataAccessor.getAuthor(request.authorId);
UserAuthor userAuthor = dataAccessor.getUserAuthor(AccessTokenFilter.getAccessToken().getUserId(), request.authorId);
AuthorData authorData = AuthorDataUtil.createAuthorData(author, null, null);
Response response = new Response(authorData);
response.setFollowing(userAuthor != null && userAuthor.getFollowState() == UserFollowState.FOLLOWING);
return response;
}
use of com.pratilipi.api.annotation.Get in project pratilipi by Pratilipi.
the class EventApi method get.
@Get
public Response get(GetRequest request) {
DataAccessor dataAccessor = DataAccessorFactory.getDataAccessor();
Event event = dataAccessor.getEvent(request.eventId);
EventData eventData = EventDataUtil.createEventData(event, true);
return new Response(eventData);
}
use of com.pratilipi.api.annotation.Get in project pratilipi by Pratilipi.
the class PratilipiProcessApi method getPratilipiProcess.
@Get
public GenericResponse getPratilipiProcess(GenericRequest request) throws UnexpectedServerException {
DataAccessor dataAccessor = DataAccessorFactory.getDataAccessor();
// START: Creating ValidateData Tasks
// Fetching AppProperty
String appPropertyId = "Api.PratilipiProcess.ValidateData";
AppProperty appProperty = dataAccessor.getAppProperty(appPropertyId);
if (appProperty == null) {
appProperty = dataAccessor.newAppProperty(appPropertyId);
appProperty.setValue(new Date(0));
}
// Fetching list of Pratilipi ids.
PratilipiFilter pratilipiFilter = new PratilipiFilter();
pratilipiFilter.setMinLastUpdate((Date) appProperty.getValue(), false);
List<Long> pratilipiIdList = dataAccessor.getPratilipiIdList(pratilipiFilter, null, 0, 10000).getDataList();
// Creating one task per Pratilipi id.
List<Task> taskList = new ArrayList<>(pratilipiIdList.size());
for (Long pratilipiId : pratilipiIdList) {
Task task = TaskQueueFactory.newTask().setUrl("/pratilipi/process").addParam("pratilipiId", pratilipiId.toString()).addParam("validateData", "true");
taskList.add(task);
}
TaskQueueFactory.getPratilipiOfflineTaskQueue().addAll(taskList);
logger.log(Level.INFO, "Added " + taskList.size() + " ValidateData tasks.");
// Updating AppProperty.
if (pratilipiIdList.size() > 0) {
Pratilipi pratilipi = dataAccessor.getPratilipi(pratilipiIdList.get(pratilipiIdList.size() - 1));
Date lastUpdatedDate = pratilipi.getLastUpdated();
logger.log(Level.INFO, "Processing all contents updated from " + (Date) appProperty.getValue() + " to " + lastUpdatedDate + ".");
logger.log(Level.INFO, "Last Updated PratilipiID : " + pratilipi.getId());
appProperty.setValue(lastUpdatedDate);
appProperty = dataAccessor.createOrUpdateAppProperty(appProperty);
}
return new GenericResponse();
}
use of com.pratilipi.api.annotation.Get in project pratilipi by Pratilipi.
the class PratilipiV1Api method get.
@Get
public Response get(GetRequest request) throws UnexpectedServerException {
DataAccessor dataAccessor = DataAccessorFactory.getDataAccessor();
Pratilipi pratilipi = dataAccessor.getPratilipi(request.pratilipiId);
Author author = pratilipi.getAuthorId() == null ? null : dataAccessor.getAuthor(pratilipi.getAuthorId());
PratilipiData pratilipiData = PratilipiDataUtil.createPratilipiData(pratilipi, author);
if (UxModeFilter.isAndroidApp()) {
DocAccessor docAccessor = DataAccessorFactory.getDocAccessor();
PratilipiContentDoc pcDoc = docAccessor.getPratilipiContentDoc(request.pratilipiId);
pratilipiData.setIndex(pcDoc == null ? null : pcDoc.getIndex());
}
return new Response(pratilipiData);
}
Aggregations