// Path: soap-server/src/main/java/com/cookbook/tutorial/internal/service/ObjectFactorySingleton.java
// public class ObjectFactorySingleton {
// 
//     private static ObjectFactory factory;
// 
//     public static ObjectFactory getInstance() {
//         if (factory == null)
//             factory = new ObjectFactory();
//         return factory;
//     }
// }


import com.cookbook.tutorial.internal.service.ObjectFactorySingleton;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.soap.SOAPBinding;
import java.util.*;
import java.util.logging.Logger;
package com.cookbook.tutorial.service;



/**
 * Created by Mulesoft.
 */
@javax.jws.WebService(
        serviceName = "IMuleCookBookServiceService",
        portName = "IMuleCookBookServicePort",
        targetNamespace = "http://service.tutorial.cookbook.com/",
        wsdlLocation = "wsdl/IMuleCookBookService.wsdl")
@SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
public class MuleCookBookServiceImpl implements IMuleCookBookService {

    private static final Logger logger = Logger.getLogger(MuleCookBookServiceImpl.class.getName());

    private Integer currentIndex = 0;
    private Integer exceptionRatio = 10;

    private IDAOCookBookService serviceDAL;

    public MuleCookBookServiceImpl(){
        serviceDAL = DAOCookBookServiceFactory.getInstance();
    }
    @Override
    public CreateResponse create(@WebParam(partName = "parameters", name = "create", targetNamespace = "http://service.tutorial.cookbook.com/") Create parameters,
            @WebParam(partName = "token", name = "token", targetNamespace = "http://service.tutorial.cookbook.com/", header = true) String token)
            throws InvalidTokenException, SessionExpiredException, InvalidEntityException {
        verifyToken(token);
        checkExpiredSessionCondition();
// Path: soap-server/src/main/java/com/cookbook/tutorial/internal/service/ObjectFactorySingleton.java
// public class ObjectFactorySingleton {
// 
//     private static ObjectFactory factory;
// 
//     public static ObjectFactory getInstance() {
//         if (factory == null)
//             factory = new ObjectFactory();
//         return factory;
//     }
// }


// Path: soap-server/src/main/java/com/cookbook/tutorial/service/MuleCookBookServiceImpl.java
import com.cookbook.tutorial.internal.service.ObjectFactorySingleton;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.soap.SOAPBinding;
import java.util.*;
import java.util.logging.Logger;

package com.cookbook.tutorial.service;



/**
 * Created by Mulesoft.
 */
@javax.jws.WebService(
        serviceName = "IMuleCookBookServiceService",
        portName = "IMuleCookBookServicePort",
        targetNamespace = "http://service.tutorial.cookbook.com/",
        wsdlLocation = "wsdl/IMuleCookBookService.wsdl")
@SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE)
public class MuleCookBookServiceImpl implements IMuleCookBookService {

    private static final Logger logger = Logger.getLogger(MuleCookBookServiceImpl.class.getName());

    private Integer currentIndex = 0;
    private Integer exceptionRatio = 10;

    private IDAOCookBookService serviceDAL;

    public MuleCookBookServiceImpl(){
        serviceDAL = DAOCookBookServiceFactory.getInstance();
    }
    @Override
    public CreateResponse create(@WebParam(partName = "parameters", name = "create", targetNamespace = "http://service.tutorial.cookbook.com/") Create parameters,
            @WebParam(partName = "token", name = "token", targetNamespace = "http://service.tutorial.cookbook.com/", header = true) String token)
            throws InvalidTokenException, SessionExpiredException, InvalidEntityException {
        verifyToken(token);
        checkExpiredSessionCondition();
        CreateResponse response = ObjectFactorySingleton.getInstance().createCreateResponse();