Skip to content

Instantly share code, notes, and snippets.

View DinoChiesa's full-sized avatar

Dino Chiesa DinoChiesa

View GitHub Profile
(load-file "~/elisp/emacs.el")
(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(git-commit-summary-max-length 80)
'(ls-lisp-format-time-list (quote ("%Y-%m-%d %H:%M" "%Y-%m-%d %H:%M")))
'(ls-lisp-use-localized-time-format t)
'(safe-local-variable-values (quote ((js-indent-level . 2))))
@DinoChiesa
DinoChiesa / dateFormat.js
Created March 20, 2017 20:57
A simple dateFormat function for JavaScript to simulate PHP's date function
// dateFormat.js
// ------------------------------------------------------------------
//
// Provide a dateFormat function for JavaScript that simulates or
// replicates PHP's date function.
//
// example usage:
// var d = new Date();
// var s1 = dateFormat(d,"Y-M-d\\TH:i:s.u"); // 2017-Mar-20T12:38:29.972
// var s2 = dateFormat(d,"Y-M-d\\TH:i:s"); // 2017-Mar-20T12:38:29
@DinoChiesa
DinoChiesa / log-to-Splunk.js
Created May 1, 2017 22:53
JS Callout code to log to Splunk using a HEC token
// log-To-Splunk.js
// ------------------------------------------------------------------
//
// Fill a message template, then POST to splunk without waiting for a response.
//
// created: Wed Feb 15 16:28:55 2017
// last saved: <2017-March-08 18:28:03>
var variableNameRe = "[^ \t\n\"',/\\\\]+?"; // non-greedy capture
var varPrefixRe = '{';
@DinoChiesa
DinoChiesa / JS-Log-To-Splunk.xml
Created May 1, 2017 22:55
JS policy config for fire-and-forget logging to Splunk
<Javascript name='JS-Log-To-Splunk' timeLimit='2200'>
<!--
timeLimit = 2200 to allow for waiting for Splunk to respond.
This is necessary only during diagnostic efforts.
See the KVM entry "splunk_await_response". In normal
cases, the JS logic does not wait for a response.
-->
<Properties>
<Property name='authz_header'>Splunk {splunk_hec_token}</Property>
<!--
# Create-App-With-Imported-App-Credentials.ps1
function Create-App-With-Imported-App-Credentials {
<#
.SYNOPSIS
Imports a key+secret (a credential) into Apigee Edge.
.DESCRIPTION
Imports a key+secret (a credential) into Apigee Edge. This will be stored in
a newly-created developer app, which will be associated to an existing developer.
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
version="1.0">
<xsl:output method="xml"
omit-xml-declaration="yes"
indent="yes"/>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
@DinoChiesa
DinoChiesa / Example-output.txt
Created August 31, 2017 23:50
Produce a zip for an API Proxy bundle
$ ./ProduceApiProxyZip.sh ~/dev/community-examples/crypto-test
Creating the zip at apiproxy-crypto-test-20170831-164831.zip
zipping the node modules...
Archive: apiproxy-crypto-test-20170831-164831.zip
Length Date Time Name
--------- ---------- ----- ----
0 04-26-2017 11:11 apiproxy/
437 04-26-2017 11:11 apiproxy/crypto-test.xml
0 04-26-2017 11:24 apiproxy/policies/
$ diff URI.js URI-orig.js
15,16c15,25
< // Node
< module.exports = factory(null, null, null, root);
---
> // https://github.com/umdjs/umd/blob/master/returnExports.js
> if (typeof module === 'object' && module.exports) {
> // Node
> module.exports = factory(require('./punycode'), require('./IPv6'), require('./SecondLevelDomains'));
> } else if (typeof define === 'function' && define.amd) {
@DinoChiesa
DinoChiesa / Deserialize-XML.java
Created December 7, 2017 00:52
Deserialize XML (Java fragment)
String canonicalPath = "/users/foo/bar/something.xml";
String xml = new String(Files.readAllBytes(Paths.get(canonicalPath)), StandardCharsets.UTF_8);
XMLStreamReader sr = XMLInputFactory.newFactory().createXMLStreamReader(new FileInputStream(cpath));
XmlMapper mapper = new XmlMapper();
Map m = (Map) mapper.readValue(sr, Object.class);
// extractJsonToContextVars.js
// ------------------------------------------------------------------
//
// For a JSON payload, set context vars for all fields.
//
// Use a policy config like this:
//
// <Javascript name='JS-RipJiraResponse' timeLimit='200' >
// <Properties>
// <Property name='prefix'>json</Property>