private static int DoSoftwareUpdate(IntPtr aPtr, IntPtr aInvocation) { GCHandle gch = GCHandle.FromIntPtr(aPtr); DvProviderLinnCoUkVolkano1 self = (DvProviderLinnCoUkVolkano1)gch.Target; DvInvocation invocation = new DvInvocation(aInvocation); bool aAvailable; string aSoftwareVersion; try { invocation.ReadStart(); invocation.ReadEnd(); self.SoftwareUpdate(invocation, out aAvailable, out aSoftwareVersion); } catch (ActionError e) { invocation.ReportActionError(e, "SoftwareUpdate"); return(-1); } catch (PropertyUpdateError) { invocation.ReportError(501, String.Format("Invalid value for property {0}", new object[] { "SoftwareUpdate" })); return(-1); } catch (Exception e) { System.Diagnostics.Debug.WriteLine("WARNING: unexpected exception {0} thrown by {1}", new object[] { e, "SoftwareUpdate" }); System.Diagnostics.Debug.WriteLine(" Only ActionError or PropertyUpdateError should be thrown by actions"); return(-1); } try { invocation.WriteStart(); invocation.WriteBool("aAvailable", aAvailable); invocation.WriteString("aSoftwareVersion", aSoftwareVersion); invocation.WriteEnd(); } catch (ActionError) { return(-1); } catch (System.Exception e) { System.Diagnostics.Debug.WriteLine("WARNING: unexpected exception {0} thrown by {1}", new object[] { e, "SoftwareUpdate" }); System.Diagnostics.Debug.WriteLine(" Only ActionError can be thrown by action response writer"); } return(0); }
private static int DoBoardType(IntPtr aPtr, IntPtr aInvocation) { GCHandle gch = GCHandle.FromIntPtr(aPtr); DvProviderLinnCoUkVolkano1 self = (DvProviderLinnCoUkVolkano1)gch.Target; DvInvocation invocation = new DvInvocation(aInvocation); uint aIndex; string aBoardNumber; try { invocation.ReadStart(); aIndex = invocation.ReadUint("aIndex"); invocation.ReadEnd(); self.BoardType(invocation, aIndex, out aBoardNumber); } catch (ActionError e) { invocation.ReportActionError(e, "BoardType"); return(-1); } catch (PropertyUpdateError) { invocation.ReportError(501, String.Format("Invalid value for property {0}", new object[] { "BoardType" })); return(-1); } catch (Exception e) { System.Diagnostics.Debug.WriteLine("WARNING: unexpected exception {0} thrown by {1}", new object[] { e, "BoardType" }); System.Diagnostics.Debug.WriteLine(" Only ActionError or PropertyUpdateError should be thrown by actions"); return(-1); } try { invocation.WriteStart(); invocation.WriteString("aBoardNumber", aBoardNumber); invocation.WriteEnd(); } catch (ActionError) { return(-1); } catch (System.Exception e) { System.Diagnostics.Debug.WriteLine("WARNING: unexpected exception {0} thrown by {1}", new object[] { e, "BoardType" }); System.Diagnostics.Debug.WriteLine(" Only ActionError can be thrown by action response writer"); } return(0); }