Search in sources :

Example 1 with SocialStrategy

use of com.fujieid.jap.social.SocialStrategy in project OneBlog by zhangyd-c.

the class OAuthController method renderAuth.

@RequestMapping("/social/{source}")
public ModelAndView renderAuth(@PathVariable("source") String source, HttpServletResponse response, HttpServletRequest request) {
    SocialConfig socialConfig = sysSocialConfigService.getByPlatform(source);
    if (null == socialConfig) {
        throw new ZhydException(source + " 平台的配置尚未完成,暂时不支持登录!");
    }
    SocialStrategy socialStrategy = new SocialStrategy(japUserService, new JapConfig());
    JapResponse japResponse = socialStrategy.authenticate(JapUtil.blogSocialConfig2JapSocialConfig(socialConfig, source), request, response);
    if (!japResponse.isSuccess()) {
        throw new ZhydException(japResponse.getMessage());
    }
    if (japResponse.isRedirectUrl()) {
        return ResultUtil.redirect((String) japResponse.getData());
    } else {
        JapUser japUser = (JapUser) japResponse.getData();
        User user = (User) japUser.getAdditional();
        SessionUtil.setUser(user);
        return ResultUtil.redirect("/");
    }
}
Also used : ZhydException(com.zyd.blog.framework.exception.ZhydException) JapUser(com.fujieid.jap.core.JapUser) JapConfig(com.fujieid.jap.core.config.JapConfig) User(com.zyd.blog.business.entity.User) JapUser(com.fujieid.jap.core.JapUser) SocialStrategy(com.fujieid.jap.social.SocialStrategy) JapResponse(com.fujieid.jap.core.result.JapResponse) SocialConfig(com.zyd.blog.business.entity.SocialConfig) RequestMapping(org.springframework.web.bind.annotation.RequestMapping)

Aggregations

JapUser (com.fujieid.jap.core.JapUser)1 JapConfig (com.fujieid.jap.core.config.JapConfig)1 JapResponse (com.fujieid.jap.core.result.JapResponse)1 SocialStrategy (com.fujieid.jap.social.SocialStrategy)1 SocialConfig (com.zyd.blog.business.entity.SocialConfig)1 User (com.zyd.blog.business.entity.User)1 ZhydException (com.zyd.blog.framework.exception.ZhydException)1 RequestMapping (org.springframework.web.bind.annotation.RequestMapping)1