Package edu.stanford.bmir.protege.web.server.dispatch.handlers

Source Code of edu.stanford.bmir.protege.web.server.dispatch.handlers.GetAvailableProjectsHandler

package edu.stanford.bmir.protege.web.server.dispatch.handlers;

import edu.stanford.bmir.protege.web.server.MetaProjectManager;
import edu.stanford.bmir.protege.web.server.dispatch.ActionHandler;
import edu.stanford.bmir.protege.web.server.dispatch.ExecutionContext;
import edu.stanford.bmir.protege.web.server.dispatch.RequestContext;
import edu.stanford.bmir.protege.web.server.dispatch.RequestValidator;
import edu.stanford.bmir.protege.web.server.dispatch.validators.NullValidator;
import edu.stanford.bmir.protege.web.shared.project.GetAvailableProjectsAction;
import edu.stanford.bmir.protege.web.shared.project.GetAvailableProjectsResult;
import edu.stanford.bmir.protege.web.shared.project.ProjectDetails;
import edu.stanford.bmir.protege.web.shared.user.UserId;

import java.util.Collections;
import java.util.List;

/**
* Author: Matthew Horridge<br>
* Stanford University<br>
* Bio-Medical Informatics Research Group<br>
* Date: 01/04/2013
*/
public class GetAvailableProjectsHandler implements ActionHandler<GetAvailableProjectsAction, GetAvailableProjectsResult> {

    @Override
    public Class<GetAvailableProjectsAction> getActionClass() {
        return GetAvailableProjectsAction.class;
    }

    @Override
    public RequestValidator<GetAvailableProjectsAction> getRequestValidator(GetAvailableProjectsAction action, RequestContext requestContext) {
        return NullValidator.get();
    }

    @Override
    public GetAvailableProjectsResult execute(GetAvailableProjectsAction action, ExecutionContext executionContext) {
        UserId userId = executionContext.getUserId();
        MetaProjectManager mpm = MetaProjectManager.getManager();
        List<ProjectDetails> details = mpm.getListableReadableProjects(userId);
        Collections.sort(details);
        return new GetAvailableProjectsResult(details);
    }
}
TOP

Related Classes of edu.stanford.bmir.protege.web.server.dispatch.handlers.GetAvailableProjectsHandler

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.