Client fonctionnel communiquant avec tous les MS

This commit is contained in:
TestAccountsUser 2018-03-18 23:53:07 +01:00
parent f272e9baa8
commit 228f765e52
21 changed files with 618 additions and 11 deletions

View file

@ -1,9 +1,12 @@
package com.mproduits;
import com.mproduits.configurations.ApplicationPropertiesConfiguration;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
@SpringBootApplication
@EnableConfigurationProperties
public class MproduitsApplication {
public static void main(String[] args) {

View file

@ -0,0 +1,21 @@
package com.mproduits.configurations;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.stereotype.Component;
@Component
@ConfigurationProperties("mes-configs")
public class ApplicationPropertiesConfiguration {
private int limitDeProduits;
public int getLimitDeProduits() {
return limitDeProduits;
}
public void setLimitDeProduits(int limitDeProduits) {
this.limitDeProduits = limitDeProduits;
}
}

View file

@ -1,9 +1,11 @@
package com.mproduits.web.controller;
import com.mproduits.configurations.ApplicationPropertiesConfiguration;
import com.mproduits.dao.ProductDao;
import com.mproduits.model.Product;
import com.mproduits.web.exceptions.ProductNotFoundException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;
@ -17,6 +19,9 @@ public class ProductController {
@Autowired
ProductDao productDao;
@Autowired
ApplicationPropertiesConfiguration appProperties;
// Affiche la liste de tous les produits disponibles
@GetMapping(value = "/Produits")
public List<Product> listeDesProduits(){
@ -25,7 +30,9 @@ public class ProductController {
if(products.isEmpty()) throw new ProductNotFoundException("Aucun produit n'est disponible à la vente");
return products;
List<Product> listeLimitee = products.subList(0, appProperties.getLimitDeProduits());
return listeLimitee;
}

View file

@ -1,10 +0,0 @@
spring.application.name=microservice-produits
server.port 9001
#Configurations H2
spring.jpa.show-sql=true
spring.h2.console.enabled=true
#défini l'encodage pour data.sql
spring.datasource.sql-script-encoding=UTF-8

View file

@ -0,0 +1,3 @@
spring.application.name=microservice-produits
spring.cloud.config.uri=http://localhost:9101