Java 类org.springframework.web.servlet.SmartView 实例源码

项目:spring4-understanding    文件:ViewMethodReturnValueHandler.java   
@Override
public void handleReturnValue(Object returnValue, MethodParameter returnType,
        ModelAndViewContainer mavContainer, NativeWebRequest webRequest) throws Exception {

    if (returnValue == null) {
        return;
    }
    else if (returnValue instanceof View){
        View view = (View) returnValue;
        mavContainer.setView(view);
        if (view instanceof SmartView) {
            if (((SmartView) view).isRedirectView()) {
                mavContainer.setRedirectModelScenario(true);
            }
        }
    }
    else {
        // should not happen
        throw new UnsupportedOperationException("Unexpected return type: " +
                returnType.getParameterType().getName() + " in method: " + returnType.getMethod());
    }
}
项目:class-guard    文件:ViewMethodReturnValueHandler.java   
public void handleReturnValue(
        Object returnValue, MethodParameter returnType,
        ModelAndViewContainer mavContainer, NativeWebRequest webRequest)
        throws Exception {

    if (returnValue == null) {
        return;
    }
    else if (returnValue instanceof View){
        View view = (View) returnValue;
        mavContainer.setView(view);
        if (view instanceof SmartView) {
            if (((SmartView) view).isRedirectView()) {
                mavContainer.setRedirectModelScenario(true);
            }
        }
    }
    else {
        // should not happen
        throw new UnsupportedOperationException("Unexpected return type: " +
                returnType.getParameterType().getName() + " in method: " + returnType.getMethod());
    }
}
项目:spring4-understanding    文件:ModelAndViewMethodReturnValueHandler.java   
@Override
public void handleReturnValue(Object returnValue, MethodParameter returnType,
        ModelAndViewContainer mavContainer, NativeWebRequest webRequest) throws Exception {

    if (returnValue == null) {
        mavContainer.setRequestHandled(true);
        return;
    }

    ModelAndView mav = (ModelAndView) returnValue;
    if (mav.isReference()) {
        String viewName = mav.getViewName();
        mavContainer.setViewName(viewName);
        if (viewName != null && isRedirectViewName(viewName)) {
            mavContainer.setRedirectModelScenario(true);
        }
    }
    else {
        View view = mav.getView();
        mavContainer.setView(view);
        if (view instanceof SmartView) {
            if (((SmartView) view).isRedirectView()) {
                mavContainer.setRedirectModelScenario(true);
            }
        }
    }
    mavContainer.addAllAttributes(mav.getModel());
}
项目:class-guard    文件:ModelAndViewMethodReturnValueHandler.java   
public void handleReturnValue(
        Object returnValue, MethodParameter returnType,
        ModelAndViewContainer mavContainer, NativeWebRequest webRequest)
        throws Exception {

    if (returnValue == null) {
        mavContainer.setRequestHandled(true);
        return;
    }

    ModelAndView mav = (ModelAndView) returnValue;
    if (mav.isReference()) {
        String viewName = mav.getViewName();
        mavContainer.setViewName(viewName);
        if (viewName != null && viewName.startsWith("redirect:")) {
            mavContainer.setRedirectModelScenario(true);
        }
    }
    else {
        View view = mav.getView();
        mavContainer.setView(view);
        if (view instanceof SmartView) {
            if (((SmartView) view).isRedirectView()) {
                mavContainer.setRedirectModelScenario(true);
            }
        }
    }
    mavContainer.addAllAttributes(mav.getModel());
}