// Path: try_java_ee7-web/src/main/java/enterprisegeeks/rest/dto/Message.java
// @XmlRootElement
// public class Message {
// 
//     private String key;
//     private String message;
// 
//     public Message(){}
//     
//     public static Message of(String key, String message) {
//         Message m = new Message();
//         m.key = key;
//         m.message = message;
//         return m;
//     }
//     
//     public String getKey() {
//         return key;
//     }
// 
//     public void setKey(String key) {
//         this.key = key;
//     }
// 
//     public String getMessage() {
//         return message;
//     }
// 
//     public void setMessage(String message) {
//         this.message = message;
//     }
// 
// }


import enterprisegeeks.rest.anotation.MessageResource;
import enterprisegeeks.rest.dto.Message;
import java.util.ArrayList;
import java.util.List;
import java.util.ResourceBundle;
import javax.enterprise.context.ApplicationScoped;
import javax.inject.Inject;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package enterprisegeeks.rest;


/**
 * 
 */
@ApplicationScoped
public class ResponseUtil{
    
    @Inject
    @MessageResource
    private ResourceBundle messages;
    
    /*
     * バリデーションエラー時に通知するレスポンスを作成する。
    */
    public Response buildValidErrorResponce(String key, String messageKey) {
        
        String message = messages.getString(messageKey);
        
        return Response.status(400).type(MediaType.APPLICATION_JSON)
// Path: try_java_ee7-web/src/main/java/enterprisegeeks/rest/dto/Message.java
// @XmlRootElement
// public class Message {
// 
//     private String key;
//     private String message;
// 
//     public Message(){}
//     
//     public static Message of(String key, String message) {
//         Message m = new Message();
//         m.key = key;
//         m.message = message;
//         return m;
//     }
//     
//     public String getKey() {
//         return key;
//     }
// 
//     public void setKey(String key) {
//         this.key = key;
//     }
// 
//     public String getMessage() {
//         return message;
//     }
// 
//     public void setMessage(String message) {
//         this.message = message;
//     }
// 
// }


// Path: try_java_ee7-web/src/main/java/enterprisegeeks/rest/ResponseUtil.java
import enterprisegeeks.rest.anotation.MessageResource;
import enterprisegeeks.rest.dto.Message;
import java.util.ArrayList;
import java.util.List;
import java.util.ResourceBundle;
import javax.enterprise.context.ApplicationScoped;
import javax.inject.Inject;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package enterprisegeeks.rest;


/**
 * 
 */
@ApplicationScoped
public class ResponseUtil{
    
    @Inject
    @MessageResource
    private ResourceBundle messages;
    
    /*
     * バリデーションエラー時に通知するレスポンスを作成する。
    */
    public Response buildValidErrorResponce(String key, String messageKey) {
        
        String message = messages.getString(messageKey);
        
        return Response.status(400).type(MediaType.APPLICATION_JSON)
                .entity(new Message[]{Message.of(key, message)}).build();