Package org.cedj.geekseek.web.rest.conference

Source Code of org.cedj.geekseek.web.rest.conference.SessionResource

package org.cedj.geekseek.web.rest.conference;

import javax.ws.rs.Path;

import org.cedj.geekseek.domain.conference.model.Session;
import org.cedj.geekseek.web.rest.conference.model.SessionRepresentation;
import org.cedj.geekseek.web.rest.core.MetadataResource;
import org.cedj.geekseek.web.rest.core.RepositoryResource;
import org.cedj.geekseek.web.rest.core.ResourceMetadata;
import org.cedj.geekseek.web.rest.core.ResourceMetadata.NamedRelation;
import org.cedj.geekseek.web.rest.core.ResourceMetadata.Relation;
import org.cedj.geekseek.web.rest.core.annotation.ResourceModel;

@ResourceModel
@Path("/session")
public class SessionResource extends RepositoryResource<Session, SessionRepresentation> implements MetadataResource {

    public static final String SESSION_XML_MEDIA_TYPE = BASE_XML_MEDIA_TYPE + "; type=session";
    public static final String SESSION_JSON_MEDIA_TYPE = BASE_JSON_MEDIA_TYPE + "; type=session";


    public SessionResource() {
        super(SessionResource.class, Session.class, SessionRepresentation.class);
    }

    @Override
    public String getResourceMediaType() {
        return SESSION_XML_MEDIA_TYPE;
    }

    @Override
    protected String[] getMediaTypes() {
        return new String[] {SESSION_XML_MEDIA_TYPE, SESSION_JSON_MEDIA_TYPE};
    }

    @Override
    public ResourceMetadata getResourceMetadata() {
        return new ResourceMetadata(Session.class)
            .incoming(new Relation("presented_by"))
            .outgoing(new NamedRelation("attachments", "attached_to"))
            .outgoing(new NamedRelation("speakers", "presented_by"))
            .outgoing(new NamedRelation("attendees", "attended_by"))
            .outgoing(new NamedRelation("locations", "located_in"));
    }
}
TOP

Related Classes of org.cedj.geekseek.web.rest.conference.SessionResource

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.