Projekt

Obecné

Profil

« Předchozí | Další » 

Revize c1e7e376

Přidáno uživatelem Jakub Šmíd před asi 3 roky(ů)

Added title page (and its modification)

Zobrazit rozdíly:

backend/src/main/java/cz/zcu/kiv/backendapi/BackendApiApplication.java
1 1
package cz.zcu.kiv.backendapi;
2 2

  
3
import java.util.logging.Logger;
4 3
import org.springframework.boot.SpringApplication;
5 4
import org.springframework.boot.autoconfigure.SpringBootApplication;
6 5

  
6
import java.util.logging.Logger;
7

  
7 8
@SpringBootApplication
8 9
public class BackendApiApplication {
9 10

  
backend/src/main/java/cz/zcu/kiv/backendapi/StubController.java
1 1
package cz.zcu.kiv.backendapi;
2 2

  
3
import java.util.logging.Logger;
4
import org.springframework.web.bind.annotation.GetMapping;
5 3
import org.springframework.web.bind.annotation.RestController;
6 4

  
5
import java.util.logging.Logger;
6

  
7 7
@RestController()
8 8
public class StubController {
9 9

  
backend/src/main/java/cz/zcu/kiv/backendapi/alternativename/AlternativeNameRepository.java
2 2

  
3 3
import org.springframework.data.jpa.repository.JpaRepository;
4 4
import org.springframework.stereotype.Repository;
5
import org.springframework.transaction.annotation.Transactional;
6 5

  
7 6
/**
8 7
 * Alternative name repository
9 8
 */
10 9
@Repository
11
@Transactional(readOnly = true)
12 10
public interface AlternativeNameRepository extends JpaRepository<AlternativeName, AlternativeName> {
13 11
}
backend/src/main/java/cz/zcu/kiv/backendapi/bibliography/BibliographyRepository.java
2 2

  
3 3
import org.springframework.data.jpa.repository.JpaRepository;
4 4
import org.springframework.stereotype.Repository;
5
import org.springframework.transaction.annotation.Transactional;
6 5

  
7 6
/**
8 7
 * Bibliography repository
9 8
 */
10 9
@Repository
11
@Transactional(readOnly = true)
12 10
public interface BibliographyRepository extends JpaRepository<Bibliography, Bibliography> {
13 11
}
backend/src/main/java/cz/zcu/kiv/backendapi/catalog/CatalogEntryRepository.java
3 3
import org.springframework.data.jpa.repository.JpaRepository;
4 4
import org.springframework.data.jpa.repository.Query;
5 5
import org.springframework.stereotype.Repository;
6
import org.springframework.transaction.annotation.Transactional;
7 6

  
8 7
import java.util.Set;
9 8
import java.util.UUID;
......
12 11
 * Catalog repository
13 12
 */
14 13
@Repository
15
@Transactional(readOnly = true)
16 14
public interface CatalogEntryRepository extends JpaRepository<CatalogEntry, UUID> {
17 15

  
18 16
    /**
backend/src/main/java/cz/zcu/kiv/backendapi/catalog/CatalogEntryServiceImpl.java
4 4
import cz.zcu.kiv.backendapi.bibliography.Bibliography;
5 5
import cz.zcu.kiv.backendapi.country.Country;
6 6
import cz.zcu.kiv.backendapi.exception.ApiRequestException;
7
import cz.zcu.kiv.backendapi.type.Type;
8 7
import cz.zcu.kiv.backendapi.type.ITypeService;
8
import cz.zcu.kiv.backendapi.type.Type;
9 9
import cz.zcu.kiv.backendapi.writtenform.WrittenForm;
10 10
import lombok.RequiredArgsConstructor;
11 11
import lombok.extern.slf4j.Slf4j;
backend/src/main/java/cz/zcu/kiv/backendapi/config/DataInitiator.java
1 1
package cz.zcu.kiv.backendapi.config;
2 2

  
3 3
import cz.zcu.kiv.backendapi.catalog.CatalogEntry;
4
import cz.zcu.kiv.backendapi.type.Type;
5 4
import cz.zcu.kiv.backendapi.catalog.CatalogEntryRepository;
6 5
import cz.zcu.kiv.backendapi.catalog.ICatalogEntryService;
7 6
import cz.zcu.kiv.backendapi.type.ITypeService;
7
import cz.zcu.kiv.backendapi.type.Type;
8 8
import cz.zcu.kiv.backendapi.user.UserEntity;
9 9
import cz.zcu.kiv.backendapi.user.UserRepository;
10 10
import lombok.RequiredArgsConstructor;
backend/src/main/java/cz/zcu/kiv/backendapi/country/CountryRepository.java
2 2

  
3 3
import org.springframework.data.jpa.repository.JpaRepository;
4 4
import org.springframework.stereotype.Repository;
5
import org.springframework.transaction.annotation.Transactional;
6 5

  
7 6
/**
8 7
 * Country repository
9 8
 */
10 9
@Repository
11
@Transactional(readOnly = true)
12 10
public interface CountryRepository extends JpaRepository<Country, Country> {
13 11
}
backend/src/main/java/cz/zcu/kiv/backendapi/security/SecurityConfig.java
1 1
package cz.zcu.kiv.backendapi.security;
2 2

  
3
import cz.zcu.kiv.backendapi.security.jwt.JwtUtils;
4 3
import cz.zcu.kiv.backendapi.security.jwt.JwtTokenVerifier;
5 4
import cz.zcu.kiv.backendapi.security.jwt.JwtUsernameAndPasswordAuthenticationFilter;
5
import cz.zcu.kiv.backendapi.security.jwt.JwtUtils;
6 6
import cz.zcu.kiv.backendapi.user.Permission;
7 7
import cz.zcu.kiv.backendapi.user.Role;
8 8
import lombok.RequiredArgsConstructor;
......
12 12
import org.springframework.security.authentication.dao.DaoAuthenticationProvider;
13 13
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
14 14
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
15
import org.springframework.security.config.annotation.web.builders.WebSecurity;
16 15
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
17 16
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
18 17
import org.springframework.security.config.http.SessionCreationPolicy;
19 18
import org.springframework.security.core.userdetails.UserDetailsService;
20 19
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
21
import org.springframework.security.web.authentication.www.BasicAuthenticationEntryPoint;
22 20

  
23 21
/**
24 22
 * Security config class
backend/src/main/java/cz/zcu/kiv/backendapi/security/jwt/JwtTokenVerifier.java
19 19
import javax.servlet.http.HttpServletRequest;
20 20
import javax.servlet.http.HttpServletResponse;
21 21
import java.io.IOException;
22
import java.util.*;
22
import java.util.Arrays;
23
import java.util.Collection;
24
import java.util.List;
23 25
import java.util.stream.Collectors;
24 26

  
25 27

  
backend/src/main/java/cz/zcu/kiv/backendapi/titlepage/ITitlePageService.java
1
package cz.zcu.kiv.backendapi.titlepage;
2

  
3
import java.util.List;
4

  
5
/**
6
 * Title page service interface
7
 */
8
public interface ITitlePageService {
9
    /**
10
     * Returns all title pages
11
     *
12
     * @return list of title pages
13
     */
14
    List<TitlePage> getTitlePages();
15

  
16
    void addNewTitlePage(TitlePage titlePage);
17
}
backend/src/main/java/cz/zcu/kiv/backendapi/titlepage/TitlePage.java
1
package cz.zcu.kiv.backendapi.titlepage;
2

  
3
import lombok.AllArgsConstructor;
4
import lombok.Data;
5
import lombok.NoArgsConstructor;
6

  
7
import javax.persistence.Column;
8
import javax.persistence.Entity;
9
import javax.persistence.Id;
10
import javax.persistence.Table;
11

  
12
/**
13
 * Class representing title page
14
 */
15
@Data
16
@NoArgsConstructor
17
@AllArgsConstructor
18
@Entity
19
@Table(name = "title_page")
20
public class TitlePage {
21

  
22
    /**
23
     * Title – serves as ID
24
     */
25
    @Id
26
    private String title;
27

  
28
    /**
29
     * Content of the title page
30
     */
31
    @Column(length = 100000)
32
    private String content;
33
}
backend/src/main/java/cz/zcu/kiv/backendapi/titlepage/TitlePageController.java
1
package cz.zcu.kiv.backendapi.titlepage;
2

  
3
import lombok.RequiredArgsConstructor;
4
import org.springframework.http.HttpStatus;
5
import org.springframework.http.ResponseEntity;
6
import org.springframework.web.bind.annotation.*;
7

  
8
import java.util.List;
9

  
10
/**
11
 * Controller for title page
12
 */
13
@RequiredArgsConstructor
14
@RestController
15
@RequestMapping("title-page")
16
public class TitlePageController {
17
    /**
18
     * Title page service
19
     */
20
    private final ITitlePageService titlePageService;
21

  
22
    /**
23
     * Returns list of all title pages
24
     *
25
     * @return list of all title pages
26
     */
27
    @GetMapping("")
28
    public ResponseEntity<List<TitlePage>> getAllTitlePages() {
29
        return new ResponseEntity<>(titlePageService.getTitlePages(), HttpStatus.OK);
30
    }
31

  
32
    /**
33
     * Adds new title page
34
     *
35
     * @param titlePage title page
36
     */
37
    @PostMapping("")
38
    public void addNewTitlePage(@RequestBody TitlePage titlePage) {
39
        titlePageService.addNewTitlePage(titlePage);
40
    }
41

  
42
}
backend/src/main/java/cz/zcu/kiv/backendapi/titlepage/TitlePageRepository.java
1
package cz.zcu.kiv.backendapi.titlepage;
2

  
3
import org.springframework.data.jpa.repository.JpaRepository;
4
import org.springframework.stereotype.Repository;
5

  
6
/**
7
 * Title page repository
8
 */
9
@Repository
10
public interface TitlePageRepository extends JpaRepository<TitlePage, String> {
11
}
backend/src/main/java/cz/zcu/kiv/backendapi/titlepage/TitlePageServiceImplementation.java
1
package cz.zcu.kiv.backendapi.titlepage;
2

  
3
import lombok.RequiredArgsConstructor;
4
import org.springframework.stereotype.Service;
5
import org.springframework.transaction.annotation.Transactional;
6

  
7
import java.util.List;
8

  
9
/**
10
 * Title page service implementation
11
 */
12
@Service
13
@Transactional
14
@RequiredArgsConstructor
15
public class TitlePageServiceImplementation implements ITitlePageService {
16
    /**
17
     * Title page repository
18
     */
19
    private final TitlePageRepository titlePageRepository;
20

  
21
    @Override
22
    public List<TitlePage> getTitlePages() {
23
        return titlePageRepository.findAll();
24
    }
25

  
26
    @Override
27
    public void addNewTitlePage(TitlePage titlePage) {
28
        titlePageRepository.save(titlePage);
29
    }
30
}
backend/src/main/java/cz/zcu/kiv/backendapi/type/TypeRepository.java
2 2

  
3 3
import org.springframework.data.jpa.repository.JpaRepository;
4 4
import org.springframework.stereotype.Repository;
5
import org.springframework.transaction.annotation.Transactional;
6 5

  
7 6

  
8 7
/**
9 8
 * Type repository
10 9
 */
11 10
@Repository
12
@Transactional(readOnly = true)
13 11
public interface TypeRepository extends JpaRepository<Type, String> {
14 12
}
backend/src/main/java/cz/zcu/kiv/backendapi/user/UserController.java
5 5
import com.auth0.jwt.algorithms.Algorithm;
6 6
import com.auth0.jwt.interfaces.DecodedJWT;
7 7
import com.google.common.base.Strings;
8
import cz.zcu.kiv.backendapi.exception.ApiRequestException;
8 9
import cz.zcu.kiv.backendapi.password.PasswordDto;
9 10
import cz.zcu.kiv.backendapi.security.jwt.JwtUtils;
10
import cz.zcu.kiv.backendapi.exception.ApiRequestException;
11 11
import lombok.RequiredArgsConstructor;
12 12
import lombok.extern.slf4j.Slf4j;
13 13
import org.springframework.http.HttpHeaders;
14 14
import org.springframework.http.HttpStatus;
15
import org.springframework.http.MediaType;
16 15
import org.springframework.http.ResponseEntity;
17
import org.springframework.security.access.prepost.PreAuthorize;
18 16
import org.springframework.security.core.GrantedAuthority;
19 17
import org.springframework.web.bind.annotation.*;
20 18
import premission.PermissionDto;
......
54 52
     *
55 53
     * @param userDto user DTO
56 54
     */
57
    @PostMapping("/user/register")
55
    @PostMapping("/register")
58 56
    public void registerNewUser(@RequestBody @Valid UserDto userDto) {
59 57
        userService.registerNewUser(userDto);
60 58
    }
backend/src/main/java/cz/zcu/kiv/backendapi/user/UserEntity.java
7 7
import org.springframework.security.core.authority.SimpleGrantedAuthority;
8 8
import org.springframework.security.core.userdetails.UserDetails;
9 9

  
10
import javax.persistence.*;
10
import javax.persistence.Column;
11
import javax.persistence.Entity;
12
import javax.persistence.Id;
13
import javax.persistence.Table;
11 14
import java.util.ArrayList;
12 15
import java.util.Collection;
13 16
import java.util.List;
backend/src/main/java/cz/zcu/kiv/backendapi/user/UserRepository.java
2 2

  
3 3
import org.springframework.data.jpa.repository.JpaRepository;
4 4
import org.springframework.stereotype.Repository;
5
import org.springframework.transaction.annotation.Transactional;
6 5

  
7 6
import java.util.Optional;
8 7

  
......
11 10
 * User repository
12 11
 */
13 12
@Repository
14
@Transactional(readOnly = true)
15 13
public interface UserRepository extends JpaRepository<UserEntity, String> {
16 14
    /**
17 15
     * Returns user by email (username)
backend/src/main/java/cz/zcu/kiv/backendapi/writtenform/WrittenFormRepository.java
2 2

  
3 3
import org.springframework.data.jpa.repository.JpaRepository;
4 4
import org.springframework.stereotype.Repository;
5
import org.springframework.transaction.annotation.Transactional;
6 5

  
7 6
/**
8 7
 * Written form repository
9 8
 */
10 9
@Repository
11
@Transactional(readOnly = true)
12 10
public interface WrittenFormRepository extends JpaRepository<WrittenForm, WrittenForm> {
13 11
}

Také k dispozici: Unified diff