Files
Athou_commafeed/src/main/java/com/commafeed/frontend/servlet/CustomCssServlet.java

48 lines
1.4 KiB
Java
Raw Normal View History

2014-08-11 05:51:44 +02:00
package com.commafeed.frontend.servlet;
import java.io.IOException;
2014-12-12 10:18:59 +01:00
import java.util.Optional;
2014-08-11 05:51:44 +02:00
2014-08-17 14:16:30 +02:00
import javax.inject.Inject;
import javax.inject.Singleton;
2014-08-11 05:51:44 +02:00
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
import org.hibernate.SessionFactory;
import com.commafeed.backend.dao.UnitOfWork;
import com.commafeed.backend.dao.UserSettingsDAO;
import com.commafeed.backend.model.User;
import com.commafeed.backend.model.UserSettings;
import com.commafeed.frontend.session.SessionHelper;
2014-08-11 05:51:44 +02:00
@SuppressWarnings("serial")
2014-08-17 14:16:30 +02:00
@RequiredArgsConstructor(onConstructor = @__({ @Inject }))
@Singleton
2014-08-11 05:51:44 +02:00
public class CustomCssServlet extends HttpServlet {
private final SessionFactory sessionFactory;
private final UserSettingsDAO userSettingsDAO;
@Override
2014-08-15 15:20:21 +02:00
protected void doGet(final HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("text/css");
2015-02-18 12:30:34 +01:00
final Optional<User> user = new SessionHelper(req).getLoggedInUser();
if (!user.isPresent()) {
2014-08-11 05:51:44 +02:00
return;
}
2014-12-12 08:57:50 +01:00
UserSettings settings = UnitOfWork.run(sessionFactory, () -> userSettingsDAO.findByUser(user.get()));
2014-08-12 16:05:57 +02:00
if (settings == null || settings.getCustomCss() == null) {
return;
}
2014-08-11 05:51:44 +02:00
resp.getWriter().write(settings.getCustomCss());
}
}