public UpdateProtocolCodeResponse UpdateProtocolCode(UpdateProtocolCodeRequest request)
        {
            var code      = this.PersistenceContext.Load <ProtocolCode>(request.ProtocolCode.ProtocolCodeRef);
            var assembler = new ProtocolGroupAssembler();

            assembler.UpdateProtocolCode(code, request.ProtocolCode);

            this.PersistenceContext.SynchState();

            return(new UpdateProtocolCodeResponse(assembler.GetProtocolCodeSummary(code)));
        }
        public AddProtocolCodeResponse AddProtocolCode(AddProtocolCodeRequest request)
        {
            var assembler    = new ProtocolGroupAssembler();
            var protocolCode = new ProtocolCode();

            assembler.UpdateProtocolCode(protocolCode, request.ProtocolCode);
            this.PersistenceContext.Lock(protocolCode, DirtyState.New);

            this.PersistenceContext.SynchState();

            return(new AddProtocolCodeResponse(assembler.GetProtocolCodeSummary(protocolCode)));
        }