Skip to content

Instantly share code, notes, and snippets.


Matthew J. Clemente mjclemente

View GitHub Profile
mjclemente / application.cfc
Created January 18, 2022 14:24
CFML Datasource from AWS Secrets Manager
View application.cfc
this.datasource = 'appdsn_exactoritos';
this.datasources["appdsn_exactoritos"] = getDatabaseConfig();
private struct function getDatabaseConfig() {
var sys = CreateObject("java", "java.lang.System");
var db_is_configured = sys.getProperty("");
if( isNull( db_is_configured ) ) {
var aws = new;
mjclemente / task.cfc
Created December 13, 2021 21:35 — forked from bdw429s/task.cfc
Scan a folder of jars recursively for CVE-2021-44228 vulnerability
View task.cfc
* Scan all jars in folder recursivley for log4j vuln
component {
property name="progressableDownloader" inject="ProgressableDownloader";
property name="progressBar" inject="ProgressBar";
* @scanPath absolute or relative path to folder to look for jars
mjclemente / hashify.cfm
Created September 28, 2021 21:26 — forked from homestar9/hashify.cfm
Hashify (UDF)
View hashify.cfm
private string function hashify(required any value) {
//return an empty string for null
if (IsNull(arguments.value)) {
mjclemente / server.js
Created September 28, 2021 19:42 — forked from eladnava/server.js
Get Facebook Ads Lead Notifications in Realtime with Node.js
View server.js
const axios = require('axios');
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
const port = 3000;
// Enter the Page Access Token from the previous step
const FACEBOOK_PAGE_ACCESS_TOKEN = '_______________________________';
mjclemente /
Created April 9, 2021 20:02 — forked from brokaw/
A BBEdit text filter to prettify JSON.
#!/usr/bin/env python3
# A text filter for BBEdit. If it encounters a JSON error, it writes an error
# message to stderr (appears in a new BBEdit window) and leaves the original
# text unaltered. c.f.
# c.f.
import json
import sys
mjclemente / RetryProxy.cfc
Created March 4, 2021 20:50 — forked from bennadel/RetryProxy.cfc
Creating A Generic Proxy For Retry Semantics In ColdFusion
View RetryProxy.cfc
output = false
hint = "I provide automatic retry functionality around the target component."
* I initialize the retry proxy with the given target component. Retries will
* only be applied to "transient" errors. And, since the proxy doesn't know which
* errors are transient / retriable, it must check with the isTransientError()
* function.
mjclemente / fork forced sync
Created February 5, 2021 18:38 — forked from glennblock/fork forced sync
Force your forked repo to be the same as upstream.
View fork forced sync
git remote add upstream
git fetch upstream
git checkout master
git reset --hard upstream/master
git push origin master --force
mjclemente / app.e2e-spec.ts
Created August 4, 2020 21:30 — forked from firxworx/app.e2e-spec.ts
NestJS Integration/E2E Testing Example with TypeORM, Postgres, JWT
View app.e2e-spec.ts
import { Test, TestingModule } from '@nestjs/testing'
import { INestApplication, LoggerService } from '@nestjs/common'
import * as request from 'supertest'
import { AppModule } from './../src/app.module'
class TestLogger implements LoggerService {
log(message: string) {}
error(message: string, trace: string) {}
warn(message: string) {}
debug(message: string) {}
mjclemente / 20190417131115_test-setup.ts
Created July 21, 2020 17:39 — forked from jukkatupamaki/20190417131115_test-setup.ts
Knex.js & TypeScript config example · How to setup Knex.js in a TypeScript project
View 20190417131115_test-setup.ts
import * as Knex from 'knex';
export async function up(knex: Knex): Promise<any> {
return knex.schema.createTable('test_setup', (table: Knex.TableBuilder) => {
export async function down(knex: Knex): Promise<any> {
return knex.schema.dropTable('test_setup');
View SalesforceApiWrapper.cfc
component hint="wrapper for Salesforce REST 2.0 API" {
pageEncoding "utf-8";
Copyright (C) 2012 Daniel Watt
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
documentation files (the "Software"), to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,