Projekt

Obecné

Profil

« Předchozí | Další » 

Revize 17a3223e

Přidáno uživatelem Jiri Trefil před více než 1 rok

opraveny status codes - neni chtene hodit 500, kdyz server zpracuje spravne request.
upraveny selecty pro podporu default konfigurace

Zobrazit rozdíly:

src/main/java/cz/zcu/fav/kiv/antipatterndetectionapp/v2/controller/ConfigurationController.java
74 74
        Map<String, AntiPattern> antiPatterns = this.configurationService.getAntiPatterns();
75 75

  
76 76
        if (config == null) {
77
            json.put("message", "internal sever error");
78
            return new ResponseEntity<>(JSONBuilder.buildJSON(json), HttpStatus.INTERNAL_SERVER_ERROR);
77
            json.put("message", "no configurations found");
78
            return new ResponseEntity<>(JSONBuilder.buildJSON(json), HttpStatus.BAD_REQUEST);
79 79
        }
80 80

  
81 81
        if (antiPatterns == null) {
82
            json.put("message", "internal sever error");
83
            return new ResponseEntity<>(JSONBuilder.buildJSON(json), HttpStatus.INTERNAL_SERVER_ERROR);
82
            json.put("message", "no anti patterns found");
83
            return new ResponseEntity<>(JSONBuilder.buildJSON(json), HttpStatus.NOT_FOUND);
84 84
        }
85 85

  
86 86
        json.put("configuration", config.getConfig());
src/main/java/cz/zcu/fav/kiv/antipatterndetectionapp/v2/model/UserConfigKey.java
6 6
/**
7 7
 * @Author Jiri Trefil
8 8
 * primary key of table user_configuration is compound (userId,configurationId) pair is unique
9
 * @Deprecated not being used (29.04.2023)
10 9
 * the business logic involving this table is in ConfigurationRepository interface
11 10
 */
12 11
@Embeddable
......
37 36
    }
38 37

  
39 38
    public UserConfigKey() {
40

  
39
        this.userId = -1;
40
        this.configId = -1;
41 41
    }
42 42
}
src/main/java/cz/zcu/fav/kiv/antipatterndetectionapp/v2/repository/ConfigRepository.java
8 8
import org.springframework.data.jpa.repository.JpaRepository;
9 9
import org.springframework.data.jpa.repository.Modifying;
10 10
import org.springframework.data.jpa.repository.Query;
11
import org.springframework.data.repository.query.Param;
11 12
import org.springframework.stereotype.Repository;
12 13
import org.springframework.transaction.annotation.Transactional;
13 14

  
......
22 23
    List<Configuration> getPublicConfigurations();
23 24
    //retrieve all public configurations and configurations available to the user
24 25
    //assumption - default configurations are not assigned to any user explicitly
25
    @Query("select config, userconfig from Configuration config inner join UserConfigurationJoin userconfig on config.id = userconfig.id.configId where userconfig.id.userId = ?1 or config.isDefault = 'Y'")
26
    @Query("select config, userconfig from Configuration config left join UserConfigurationJoin userconfig on config.id = userconfig.id.configId where userconfig.id.userId = ?1 or config.isDefault = 'Y'")
26 27
    List<Object[]> getAllUserConfigurations(int userId);
27 28

  
28 29
    @Modifying
......
38 39
    @Query("select userconfig.configurationName from UserConfigurationJoin userconfig where userconfig.id = ?1")
39 40
    String findConfigurationByCompoundKey(UserConfigKey key);
40 41

  
41
    @Query("SELECT \n" +
42
            "cfg \n" +
43
            "FROM \n" +
44
            "UserConfigurationJoin userconfig INNER JOIN Configuration cfg \n" +
45
            "ON userconfig.id.configId = cfg.id\n" +
46
            "WHERE\n" +
47
            "userconfig.id = ?1")
48
    Configuration findConfigurationByUserNameAndID(UserConfigKey key);
42
    @Query("SELECT cfg FROM UserConfigurationJoin userconfig RIGHT JOIN Configuration cfg " +
43
            "ON userconfig.id.configId = cfg.id " +
44
            "WHERE userconfig.id = ?1 or (cfg.isDefault = 'Y' and cfg.id = ?2)")
45
    Configuration findConfigurationByUserNameAndID(UserConfigKey key,int configId);
46

  
47

  
48

  
49 49
}
src/main/java/cz/zcu/fav/kiv/antipatterndetectionapp/v2/service/configuration/ConfigurationServiceImplementation.java
247 247
            return null;
248 248
        }
249 249
        UserConfigKey key = new UserConfigKey(user.getId(), id);
250
        Configuration configuration = this.configurationRepository.findConfigurationByUserNameAndID(key);
250
        Configuration configuration = this.configurationRepository.findConfigurationByUserNameAndID(key,key.getConfigId());
251 251
        return configuration;
252 252
    }
253 253

  

Také k dispozici: Unified diff