Package lv.odylab.evedb.servlet

Source Code of lv.odylab.evedb.servlet.LookupResourceTypeServlet

package lv.odylab.evedb.servlet;

import lv.odylab.evedb.domain.InvType;
import lv.odylab.evedb.domain.InvTypeDao;
import lv.odylab.evedb.rpc.dto.InvTypeBasicInfoDto;
import lv.odylab.evedb.rpc.dto.XmlRowsetDto;
import lv.odylab.evedb.service.DtoMapper;

import javax.servlet.ServletException;
import javax.xml.bind.JAXBException;
import java.io.Writer;
import java.util.ArrayList;
import java.util.List;

public class LookupResourceTypeServlet extends XmlJsonServlet {
    private InvTypeDao invTypeDao;
    private DtoMapper mapper;

    @Override
    public void init() throws ServletException {
        invTypeDao = getComponent(InvTypeDao.class);
        mapper = getComponent(DtoMapper.class);
    }

    @Override
    protected Object provideResponse(String query) {
        List<InvType> invTypes = invTypeDao.findResourceByPartialTypeName(query);
        List<InvTypeBasicInfoDto> result = new ArrayList<InvTypeBasicInfoDto>();
        for (InvType invType : invTypes) {
            result.add(mapper.map(invType));
        }
        return result;
    }

    @Override
    protected void writeXml(Object object, Writer writer) throws JAXBException {
        getMarshaller().marshal(new XmlRowsetDto((List) object), writer);
    }
}
TOP

Related Classes of lv.odylab.evedb.servlet.LookupResourceTypeServlet

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.