X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=c_sharp%2Fsrc%2Forg%2Fldk%2Fstructs%2FErrorAction.cs;h=993d3e34ddee07429f79452b7ab5d22978b8210e;hb=c6777737ea14e7814b0fa7d6fe16536f31d4a82b;hp=2107295013dac2c8a6cce5c325fdad4d7831c14e;hpb=810f7404202e04f70db946ced7363b64ddaf4ce4;p=ldk-java diff --git a/c_sharp/src/org/ldk/structs/ErrorAction.cs b/c_sharp/src/org/ldk/structs/ErrorAction.cs index 21072950..993d3e34 100644 --- a/c_sharp/src/org/ldk/structs/ErrorAction.cs +++ b/c_sharp/src/org/ldk/structs/ErrorAction.cs @@ -6,7 +6,7 @@ using System; namespace org { namespace ldk { namespace structs { /** - * Used to put an error message in a LightningError + * Used to put an error message in a [`LightningError`]. */ public class ErrorAction : CommonBase { protected ErrorAction(object _dummy, long ptr) : base(ptr) { } @@ -18,11 +18,12 @@ public class ErrorAction : CommonBase { long raw_ty = bindings.LDKErrorAction_ty_from_ptr(ptr); switch (raw_ty) { case 0: return new ErrorAction_DisconnectPeer(ptr); - case 1: return new ErrorAction_IgnoreError(ptr); - case 2: return new ErrorAction_IgnoreAndLog(ptr); - case 3: return new ErrorAction_IgnoreDuplicateGossip(ptr); - case 4: return new ErrorAction_SendErrorMessage(ptr); - case 5: return new ErrorAction_SendWarningMessage(ptr); + case 1: return new ErrorAction_DisconnectPeerWithWarning(ptr); + case 2: return new ErrorAction_IgnoreError(ptr); + case 3: return new ErrorAction_IgnoreAndLog(ptr); + case 4: return new ErrorAction_IgnoreDuplicateGossip(ptr); + case 5: return new ErrorAction_SendErrorMessage(ptr); + case 6: return new ErrorAction_SendWarningMessage(ptr); default: throw new ArgumentException("Impossible enum variant"); } @@ -43,6 +44,19 @@ public class ErrorAction : CommonBase { this.msg = msg_hu_conv; } } + /** A ErrorAction of type DisconnectPeerWithWarning */ + public class ErrorAction_DisconnectPeerWithWarning : ErrorAction { + /** + * A warning message which we should make an effort to send before we disconnect. + */ + public WarningMessage msg; + internal ErrorAction_DisconnectPeerWithWarning(long ptr) : base(null, ptr) { + long msg = bindings.LDKErrorAction_DisconnectPeerWithWarning_get_msg(ptr); + org.ldk.structs.WarningMessage msg_hu_conv = null; if (msg < 0 || msg > 4096) { msg_hu_conv = new org.ldk.structs.WarningMessage(null, msg); } + if (msg_hu_conv != null) { msg_hu_conv.ptrs_to.AddLast(this); }; + this.msg = msg_hu_conv; + } + } /** A ErrorAction of type IgnoreError */ public class ErrorAction_IgnoreError : ErrorAction { internal ErrorAction_IgnoreError(long ptr) : base(null, ptr) { @@ -124,6 +138,19 @@ public class ErrorAction : CommonBase { return ret_hu_conv; } + /** + * Utility method to constructs a new DisconnectPeerWithWarning-variant ErrorAction + */ + public static ErrorAction disconnect_peer_with_warning(org.ldk.structs.WarningMessage msg) { + long ret = bindings.ErrorAction_disconnect_peer_with_warning(msg == null ? 0 : msg.ptr); + GC.KeepAlive(msg); + if (ret >= 0 && ret <= 4096) { return null; } + org.ldk.structs.ErrorAction ret_hu_conv = org.ldk.structs.ErrorAction.constr_from_ptr(ret); + if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(ret_hu_conv); }; + if (ret_hu_conv != null) { ret_hu_conv.ptrs_to.AddLast(msg); }; + return ret_hu_conv; + } + /** * Utility method to constructs a new IgnoreError-variant ErrorAction */