Skip to content

Instantly share code, notes, and snippets.

View mjjames's full-sized avatar

Michael James mjjames

View GitHub Profile
@mjjames
mjjames / mjjames.omp.json
Created April 5, 2024 16:52
My Latest Oh My Posh template
{
"$schema": "https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json",
"blocks": [
{
"alignment": "left",
"newline": true,
"segments": [
{
"background": "#d75f00",
"foreground": "#f2f3f8",
@mjjames
mjjames / Dockerfile
Last active November 24, 2021 09:34
Dockerfile for Playwright but with .NET SDK for running test via dotnet test
FROM mcr.microsoft.com/playwright:focal AS base
# install .NET LTS using install script
RUN apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
curl \
ca-certificates \
\
# .NET dependencies
libc6 \
libgcc1 \
@mjjames
mjjames / ChannelsExample.cs
Created November 18, 2021 23:15
Using Channels to Optimise Processing of Queues
// See https://aka.ms/new-console-template for more information
using ConsoleApp5;
using System.Threading.Channels;
Console.WriteLine("Channels Prototype");
var channelCapacity = 2;
var tenancyMessageChannel = Channel.CreateBounded<TestTenancyMessage>(new BoundedChannelOptions(channelCapacity)
{
FullMode = BoundedChannelFullMode.Wait,
SingleWriter = true,
@mjjames
mjjames / SocketBenchmark.cs
Created May 29, 2019 15:30
BenchmarkDotNet Test for TCP Sockets vs UnixDomainSockets
using BenchmarkDotNet.Attributes;
using System.Net;
using System.Net.Sockets;
using System.Threading.Tasks;
namespace SocketClientsBenchmarks
{
[CoreJob]
public class SendFileBenchmarks
{
@mjjames
mjjames / program.cs
Created May 29, 2019 15:25
A very basic Socket Host for Loopback TCP IP and Unix Domain Sockets
using System;
using System.IO;
using System.Net;
using System.Net.Sockets;
using System.Threading.Tasks;
namespace UnixDomainSocketServer
{
class Program
{
@mjjames
mjjames / WebViewRenderer.cs
Last active May 14, 2018 22:50
UWP WebView "Failed Load" Solution Attempt 1
using System.Threading.Tasks;
using Xamarin.Forms;
using Xamarin.Forms.Platform.UWP;
[assembly: ExportRenderer(typeof(WebView), typeof(MyApp.UWP.CustomRenderer.WebViewRenderer))]
namespace MyApp.UWP.CustomRenderer
{
internal class WebViewRenderer : Xamarin.Forms.Platform.UWP.WebViewRenderer, IWebViewDelegate
{
private bool _contentHasLoaded;
private string _html;
@mjjames
mjjames / HomePageRenderer.cs
Created May 5, 2018 21:17
Auto hide Master Pane with Xamarin.Forms targetting UWP
using System.ComponentModel;
using Xamarin.Forms;
using Xamarin.Forms.Platform.UWP;
[assembly: ExportRenderer(typeof(MyApp.HomePage), typeof(MyApp.UWP.CustomRenderer.HomePageRenderer))]
namespace MyApp.UWP.CustomRenderer
{
class HomePageRenderer : MasterDetailPageRenderer
{
protected override void OnElementChanged(ElementChangedEventArgs<MasterDetailPage> e)
{