Search in sources :

Example 6 with Get

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;
}
Also used : PratilipiFilter(com.pratilipi.common.util.PratilipiFilter) PratilipiData(com.pratilipi.data.client.PratilipiData) Event(com.pratilipi.data.type.Event) Get(com.pratilipi.api.annotation.Get)

Example 7 with Get

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;
}
Also used : GenericResponse(com.pratilipi.api.shared.GenericResponse) DataAccessor(com.pratilipi.data.DataAccessor) AuthorData(com.pratilipi.data.client.AuthorData) UserAuthor(com.pratilipi.data.type.UserAuthor) Author(com.pratilipi.data.type.Author) UserAuthor(com.pratilipi.data.type.UserAuthor) Get(com.pratilipi.api.annotation.Get)

Example 8 with Get

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);
}
Also used : GenericResponse(com.pratilipi.api.shared.GenericResponse) DataAccessor(com.pratilipi.data.DataAccessor) Event(com.pratilipi.data.type.Event) EventData(com.pratilipi.data.client.EventData) Get(com.pratilipi.api.annotation.Get)

Example 9 with Get

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();
}
Also used : PratilipiFilter(com.pratilipi.common.util.PratilipiFilter) Task(com.pratilipi.taskqueue.Task) GenericResponse(com.pratilipi.api.shared.GenericResponse) DataAccessor(com.pratilipi.data.DataAccessor) ArrayList(java.util.ArrayList) Pratilipi(com.pratilipi.data.type.Pratilipi) AppProperty(com.pratilipi.data.type.AppProperty) Date(java.util.Date) Get(com.pratilipi.api.annotation.Get)

Example 10 with Get

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);
}
Also used : GenericResponse(com.pratilipi.api.shared.GenericResponse) DataAccessor(com.pratilipi.data.DataAccessor) PratilipiData(com.pratilipi.data.client.PratilipiData) DocAccessor(com.pratilipi.data.DocAccessor) Author(com.pratilipi.data.type.Author) Pratilipi(com.pratilipi.data.type.Pratilipi) PratilipiContentDoc(com.pratilipi.data.type.PratilipiContentDoc) Get(com.pratilipi.api.annotation.Get)

Aggregations

Get (com.pratilipi.api.annotation.Get)28 GenericResponse (com.pratilipi.api.shared.GenericResponse)25 DataAccessor (com.pratilipi.data.DataAccessor)20 Date (java.util.Date)9 ArrayList (java.util.ArrayList)7 PratilipiFilter (com.pratilipi.common.util.PratilipiFilter)6 Task (com.pratilipi.taskqueue.Task)6 PratilipiData (com.pratilipi.data.client.PratilipiData)5 AppProperty (com.pratilipi.data.type.AppProperty)5 Author (com.pratilipi.data.type.Author)5 Gson (com.google.gson.Gson)4 Pratilipi (com.pratilipi.data.type.Pratilipi)4 SimpleDateFormat (java.text.SimpleDateFormat)4 GsonBuilder (com.google.gson.GsonBuilder)3 AuthorFilter (com.pratilipi.common.util.AuthorFilter)3 BlobAccessor (com.pratilipi.data.BlobAccessor)3 DocAccessor (com.pratilipi.data.DocAccessor)3 AuthorData (com.pratilipi.data.client.AuthorData)3 BlobEntry (com.pratilipi.data.type.BlobEntry)3 Event (com.pratilipi.data.type.Event)3