1 /* 2 * hunt-proton: AMQP Protocol library for D programming language. 3 * 4 * Copyright (C) 2018-2019 HuntLabs 5 * 6 * Website: https://www.huntlabs.net/ 7 * 8 * Licensed under the Apache-2.0 License. 9 * 10 */ 11 12 13 module hunt.proton.amqp.transport.Close; 14 15 import hunt.proton.amqp.Binary; 16 import hunt.proton.amqp.transport.FrameBody; 17 import hunt.proton.amqp.transport.ErrorCondition; 18 19 class Close : FrameBody 20 { 21 private ErrorCondition _error; 22 23 this() {} 24 25 this(Close other) 26 { 27 if (other._error !is null) 28 { 29 this._error = new ErrorCondition(); 30 this._error.copyFrom(other.getError()); 31 } 32 } 33 34 public ErrorCondition getError() 35 { 36 return _error; 37 } 38 39 public void setError(ErrorCondition error) 40 { 41 _error = error; 42 } 43 44 //override 45 public void invoke(E)(FrameBodyHandler!E handler, Binary payload, E context) 46 { 47 handler.handleClose(this, payload, context); 48 } 49 50 51 public FrameBody copy() 52 { 53 return new Close(this); 54 } 55 }