Uses of Annotation Interface
com.easydesk.web.screen.Screen

Packages that use Screen
Package
Description
 
  • Uses of Screen in com.easydesk.web.controller

    Classes in com.easydesk.web.controller with annotations of type Screen
    Modifier and Type
    Class
    Description
    class 
    AdminController(Thymeleaf 화면)와 같은 기능(그룹별 role 조회 / grant / revokeAll)을 JSON으로 제공하는 API.
    class 
    EasyDesk SecurityService의 ModelManager(grant/revokeAll)를 웹에서 조작해보는 간단한 관리자 화면.
    class 
    로그인한 사용자 본인의 비밀번호 변경 화면.
    class 
    '비밀번호 찾기' 흐름 전체를 담당하는 컨트롤러. 1) GET/POST /forgot-password : 이메일 입력 -> 해당 User를 email로 찾아서(EMAIL 컬럼에 unique 제약은 없어서 여러 명이 겹치면 첫 번째만 사용 - 데모 한계) 1회성 토큰을 발급하고, 그 토큰이 담긴 링크를 메일로 발송한다. 2) GET /reset-password?
    class 
     
    class 
    Global ItemType 관리 화면(ItemTypeAdminController) 의 "AttributeGroup -> Attribute 목록" (admin-item-type-attributes.html) 에서 Attribute 이름을 클릭하면 들어오는 ItemTypeAttribute 상세/관리 화면.
    class 
    Module 관리 화면(ModuleAdminController) 의 "AttributeGroup -> Attribute 목록" (admin-module-attributes.html) 에서 Attribute 이름을 클릭하면 들어오는 ModuleAttribute 상세/관리 화면.
    class 
    Permission 목록 화면 (조회 전용).
    class 
    디버그용 SQL 실행 화면.
    Methods in com.easydesk.web.controller with annotations of type Screen
    Modifier and Type
    Method
    Description
    ItemTypeAdminController.add(String name, boolean isDefault, Integer parentId, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
    새 Global ItemType 을 추가한다 (core 의 ItemTypeFactory.getFactory().add(name, isDefault, parentId) 사용 - parentId 는 화면 dropdown 에서 고른 ItemTypeEnum(ALL/EducationContents/...)
    ModuleAdminController.add(RequestModule form, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
     
    UserAdminController.add(String username, String password, String email, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
     
    AttributeAdminController.addOption(Integer id, String optionName, Integer activeTab, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
    OptionAttribute 인 Attribute 에 이름만으로 새 AttributeOption 을 추가한다 (root 바로 아래에 하나 추가 - core 의 AttributeOptionFactory.getFactory(attribute).add(name) 사용).
    ItemTypeAdminController.attributeGroups(Integer typeId, String activeGroupName, HttpSession session, org.springframework.ui.Model model)
    선택한 ItemType 에 정의된 AttributeGroup 들을 AttributeGroupTypeEnum 기준으로 tab 화면에 보여준다. group 이 없으면(아직 정의되지 않은 AttributeGroupType) attributes 는 빈 목록.
    ModuleAdminController.attributeGroups(Long moduleId, Integer typeId, String activeGroupName, HttpSession session, org.springframework.ui.Model model)
    선택한 ItemType 에 정의된 AttributeGroup 들을 AttributeGroupTypeEnum(10개) 기준으로 tab 화면에 보여준다
    ItemTypeAdminController.attributesForGroup(Integer typeId, String groupName, Integer activeTab, HttpSession session, org.springframework.ui.Model model)
    선택한 AttributeGroup(name 으로 식별)에 등록할 수 있는 Attribute 목록을 Attribute/UserAttribute 두 tab 으로 보여준다.
    ModuleAdminController.attributesForGroup(Long moduleId, Integer typeId, String groupName, Integer activeTab, HttpSession session, org.springframework.ui.Model model)
    선택한 AttributeGroup(name 으로 식별)에 등록할 수 있는 Attribute 목록을 Attribute/UserAttribute 두 tab 으로 보여준다
    AttributeAdminController.create(String name, Integer typeId, Integer activeTab, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
    새 Attribute 를 생성한다 (core 테스트 코드와 동일한 방식: AttributeManager.getInstance() 로 빈 Attribute 를 만들고 name/typeId 만 채워서 저장).
    AttributeAdminController.detail(Integer id, Integer activeTab, HttpSession session, org.springframework.ui.Model model)
    Attribute 상세/관리 화면.
    AdminController.grant(String userName, String groupName, String roleName, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
     
    ItemTypeAdminController.initialize(Integer typeId, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
    선택한 ItemType 의 core ItemType#initialize() 를 실행한다.
    ModuleAdminController.initializeItemType(Long moduleId, Integer typeId, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
    선택한 ModuleItemType 의 core ModuleItemType#initialize() 를 실행한다 (내부적으로 itemType.initialize() 도 함께 호출되어 AttributeGroup/ItemTypeAttribute/ItemTypeOption 뿐 아니라 Module 관련 등록까지 함께 처리됨).
    ModuleSelectController.items(Long id, String pageParam, HttpSession session, org.springframework.ui.Model model)
    module-select 화면에서 active 한 Module 이름을 클릭했을 때 보여줄 Item 목록.
    ModuleAdminController.itemTypes(Long id, HttpSession session, org.springframework.ui.Model model)
     
    ModuleSelectController.itemView(Long moduleId, String uniqueId, HttpSession session, org.springframework.ui.Model model)
    module-items-list 화면에서 Unique-ID 를 클릭했을 때 보여줄 Item 상세 화면.
    AttributeAdminController.list(Integer activeTab, HttpSession session, org.springframework.ui.Model model)
     
    ItemTypeAdminController.list(HttpSession session, org.springframework.ui.Model model)
    Global ItemType 목록.
    ModuleAdminController.list(HttpSession session, org.springframework.ui.Model model)
     
    RoleAdminController.list(HttpSession session, org.springframework.ui.Model model)
     
    UserAdminController.list(HttpSession session, org.springframework.ui.Model model)
     
    LoginController.login(RequestUser form, org.springframework.validation.BindingResult bindingResult, HttpSession session, org.springframework.ui.Model model)
     
    LoginController.loginForm(HttpSession session)
     
    ModuleSelectController.moduleItemTypes(Long id, HttpSession session, org.springframework.ui.Model model)
    선택한 Module 에 실제로 등록된 ModuleItemType 목록을 보여준다 (ItemTypeEnum 전체가 아님).
    ModuleAdminController.moduleUsers(Long moduleId, HttpSession session, org.springframework.ui.Model model)
    이 Module(=Group) 에 등록된 사용자 목록을 보여준다.
    ItemTypeAdminController.moveAttributes(Integer typeId, String groupName, String targetGroupName, List<Integer> selectedAttributeIds, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
    AttributeGroup 화면에서 선택한 Attribute 들을 다른 AttributeGroup 으로 이동시키거나 (targetGroupName 이 MOVE_TARGET_REMOVE 이면) 현재 Group 에서 제거한다.
    ModuleAdminController.moveAttributes(Long moduleId, Integer typeId, String groupName, String targetGroupName, List<Integer> selectedAttributeIds, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
    AttributeGroup 화면에서 선택한 Attribute 들을 다른 AttributeGroup 으로 이동시키거나 (targetGroupName 이 MOVE_TARGET_REMOVE 이면) 현재 Group 에서 제거한다.
    AttributeAdminController.newForm(Integer activeTab, HttpSession session, org.springframework.ui.Model model)
    새 Attribute 추가 폼.
    RoleAdminController.permissions(Integer roleId, HttpSession session, org.springframework.ui.Model model)
    선택한 Role 에 부여되어 있는 Permission 목록 (전체 Permission 에 대해 grant 여부 checkbox 로 표시).
    ItemTypeAdminController.registerAttributes(Integer typeId, String groupName, List<Integer> selectedAttributeIds, Integer activeTab, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
    화면에서 선택한 Attribute 들을 이 AttributeGroup 에 등록한다 (core 의 AttributeFactory.getFactory(group).add(attribute) 사용 - group 이 ItemType 소유이므로 ItemTypeAttribute 테이블에 등록된다).
    ModuleAdminController.registerAttributes(Long moduleId, Integer typeId, String groupName, List<Integer> selectedAttributeIds, Integer activeTab, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
    화면에서 선택한 Attribute 들을 이 AttributeGroup 에 등록한다 (core 의 AttributeFactory.getFactory(group).add(attribute) 사용).
    ModuleAdminController.registerItemTypes(Long id, List<Integer> selectedTypeIds, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
    화면에서 선택한 ItemType 들을 현재 Module 에 등록한다 (EasyDeskModule#add(ItemType) 사용). 1. module.add(itemType) 의 실제 동작(내부적으로 ModuleItemType 등을 어떻게 구성하는지)은 아직 검증이 더 필요하다고 해서, 여기서는 일단 호출까지만 연결해 두었다. 2.
    ModuleAdminController.remove(Long id, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
     
    UserAdminController.remove(Long id, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
     
    AdminController.revokeAll(String userName, String groupName, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
     
    AdminController.roles(String userName, String groupName, HttpSession session, org.springframework.ui.Model model)
     
    ModuleSelectController.selectModule(HttpSession session, org.springframework.ui.Model model)
    전체 Module 목록을 보여준다.
    RoleAdminController.togglePermission(Integer roleId, Integer permissionId, Boolean grant, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
    Permission checkbox 를 클릭하는 즉시 grant/revoke 를 반영한다 (checkbox 는 상태를 저장하지 않고, checked="true" 이면 name="grant" 파라미터가 전송되고 unchecked 면 전송되지 않는 표준 HTML checkbox 동작을 그대로 이용한다).
    AttributeAdminController.update(Integer id, Boolean localized, Boolean global, Boolean common, Boolean removed, Integer activeTab, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
    화면에서 체크박스 상태를 넘겨받아 localized/global/common/removed 를 갱신한다.
    org.springframework.http.ResponseEntity<?>
    AdminApiController.updateItemTypeAttributeProperty(Integer typeId, Integer attributeId, AdminApiController.AttributePropertyRequest request, HttpSession session)
    admin-item-type-attribute-groups 화면(ItemTypeAttribute)에서 필수/기본텍스트/중복체크/빠른검색 checkbox 를 클릭했을 때 곧바로 서버에 반영하기 위한 endpoint.
    org.springframework.http.ResponseEntity<?>
    AdminApiController.updateModuleAttributeProperty(Long moduleId, Integer typeId, Integer attributeId, AdminApiController.AttributePropertyRequest request, HttpSession session)
    admin-module-attribute-groups 화면(ModuleAttribute)의 같은 기능.
    org.springframework.http.ResponseEntity<?>
    AdminApiController.updateModuleAttributeRegistration(Long moduleId, Integer typeId, Integer attributeId, AdminApiController.AttributeRegistrationRequest request, HttpSession session)
    admin-module-attribute-groups 화면에서, ModuleAttribute 로 아직 등록되지 않은 Attribute 의 '활성' checkbox 를 클릭했을 때 호출된다 (mit !
    org.springframework.http.ResponseEntity<?>
    admin-module-item-types 화면(기본 편집 모드)에서 ModuleItemType 의 active/display/dedupe/moderation checkbox 나 order/comments/maxVotes 숫자 dropdown 값이 바뀌면 곧바로 서버에 반영하기 위한 endpoint.
    ModuleAdminController.updateUserRoles(Long moduleId, Long userId, List<Integer> selectedRoleIds, HttpSession session, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes)
    화면에서 체크한 Role 목록과 실제 부여된 Role 목록을 비교해서, 새로 체크된 것은 moduleSecurityService.getModelManager().grant(user, group, role), 체크 해제된 것은 .revoke(user, group, role) 로 반영한다.
    ModuleAdminController.userRoles(Long moduleId, Long userId, HttpSession session, org.springframework.ui.Model model)
    특정 사용자가 이 Module(=Group) 에서 가지고 있는 Role 목록(check 표시)을 보여준다.
    ModuleAdminController.view(Long id, HttpSession session, org.springframework.ui.Model model)
    Module 하나를 Item(Artifactizable#getArtifact()) 으로 보여주는 상세 화면.
    UserAdminController.view(Long id, HttpSession session, org.springframework.ui.Model model)
    User 하나를 Item(Artifactizable#getArtifact()) 으로 보여주는 상세 화면.
    LoginController.welcome(HttpSession session, org.springframework.ui.Model model)
     
    ModuleSelectController.write(Long moduleId, Integer typeId, HttpSession session, org.springframework.ui.Model model)
    "글쓰기" 버튼의 목적지.