/// <inheritdoc/> public void RadiusExtensionProcess(IExtensionControl control) { Logger.Info("RadiusExtensionProcess"); Logger.DebugFormat("RequestType: {0}", control.RequestType); Logger.DebugFormat("ResponseType: {0}", control.ResponseType); Logger.DebugFormat("ExtensionPoint: {0}", control.ExtensionPoint); foreach (var attrib in control.Request) { var attribName = Enum.IsDefined(typeof(RadiusAttributeType), attrib.AttributeId) ? ((RadiusAttributeType)attrib.AttributeId).ToString() : attrib.AttributeId.ToString(CultureInfo.InvariantCulture); var attribValue = attrib.Value is byte[] ? "byte[" + ((byte[])attrib.Value).Length + "] / " + Encoding.UTF8.GetString((byte[])attrib.Value) : attrib.Value; Logger.DebugFormat("{0}={1}", attribName, attribValue); } control.Response[RadiusCode.AccessAccept].Add( new RadiusAttribute(RadiusAttributeType.VendorSpecific, new VendorSpecificAttribute(312, 1, new byte[] { 1, 2, 3, 4 }))); control.Response[RadiusCode.AccessChallenge].Add( new RadiusAttribute(RadiusAttributeType.VendorSpecific, new VendorSpecificAttribute(313, 1, new byte[] { 4, 5, 6, 7 }))); control.Response[RadiusCode.AccessReject].Add( new RadiusAttribute(RadiusAttributeType.VendorSpecific, new VendorSpecificAttribute(314, 1, new byte[] { 9, 10, 11, 12 }))); foreach (var attrib in control.Response[RadiusCode.AccessAccept]) { var attribName = Enum.IsDefined(typeof(RadiusAttributeType), attrib.AttributeId) ? ((RadiusAttributeType)attrib.AttributeId).ToString() : attrib.AttributeId.ToString(CultureInfo.InvariantCulture); var attribValue = attrib.Value is byte[] ? "byte[" + ((byte[])attrib.Value).Length + "] / " + Encoding.UTF8.GetString((byte[])attrib.Value) : attrib.Value; Logger.DebugFormat("{0}={1}", attribName, attribValue); } }
/// <inheritdoc/> public void RadiusExtensionProcess(IExtensionControl control) { Logger.Info("RadiusExtensionProcess"); Logger.DebugFormat("RequestType: {0}", control.RequestType); Logger.DebugFormat("ResponseType: {0}", control.ResponseType); Logger.DebugFormat("ExtensionPoint: {0}", control.ExtensionPoint); foreach (var attrib in control.Request) { var attribName = Enum.IsDefined(typeof(RadiusAttributeType), attrib.AttributeId) ? ((RadiusAttributeType)attrib.AttributeId).ToString() : attrib.AttributeId.ToString(CultureInfo.InvariantCulture); var attribValue = attrib.Value is byte[] ? "byte[" + ((byte[])attrib.Value).Length + "] / " + Encoding.UTF8.GetString((byte[])attrib.Value) : attrib.Value; Logger.DebugFormat("{0}={1}", attribName, attribValue); } control.Response[RadiusCode.AccessAccept].Add( new RadiusAttribute(RadiusAttributeType.VendorSpecific, new VendorSpecificAttribute(312, 1, new byte[] { 1, 2, 3, 4 }))); control.Response[RadiusCode.AccessChallenge].Add( new RadiusAttribute(RadiusAttributeType.VendorSpecific, new VendorSpecificAttribute(313, 1, new byte[] { 4, 5, 6, 7 }))); control.Response[RadiusCode.AccessReject].Add( new RadiusAttribute(RadiusAttributeType.VendorSpecific, new VendorSpecificAttribute(314, 1, new byte[] { 9, 10, 11, 12 }))); foreach (var attrib in control.Response[RadiusCode.AccessAccept]) { var attribName = Enum.IsDefined(typeof(RadiusAttributeType), attrib.AttributeId) ? ((RadiusAttributeType)attrib.AttributeId).ToString() : attrib.AttributeId.ToString(CultureInfo.InvariantCulture); var attribValue = attrib.Value is byte[] ? "byte[" + ((byte[])attrib.Value).Length + "] / " + Encoding.UTF8.GetString((byte[])attrib.Value) : attrib.Value; Logger.DebugFormat("{0}={1}", attribName, attribValue); } }
void Wiimote_ExtensionAttached(object sender, WiimoteExtensionEventArgs e) { IWiimoteExtension wiimoteExtension = Wiimote.Extension; Invoke(new Action <IWiimoteExtension>(delegate(IWiimoteExtension extension) { Control extensionControl = null; if (extension is NunchukExtension) { NunchukUserControl nunchukUC = new NunchukUserControl(); nunchukUC.Nunchuk = (NunchukExtension)extension; extensionControl = nunchukUC; } else if (extension is ClassicControllerExtension) { ClassicControllerUserControl classicControllerUC = new ClassicControllerUserControl(); classicControllerUC.ClassicController = (ClassicControllerExtension)extension; extensionControl = classicControllerUC; } else if (extension is GuitarExtension) { GuitarUserControl guitarUC = new GuitarUserControl(); guitarUC.Guitar = (GuitarExtension)extension; extensionControl = guitarUC; } ExtensionControl = (IExtensionControl)extensionControl; if (extensionControl != null) { extensionBox.Height = extensionControl.Height + 50; extensionBox.Text = extension.GetType().Name; extensionBox.Controls.Add(extensionControl); extensionControl.Dock = DockStyle.Fill; this.Height = extensionBox.Top + extensionBox.Height; } reportingmodeBox.SelectedItem = Wiimote.ReportingMode; }), wiimoteExtension); }