Skip to content

Instantly share code, notes, and snippets.

@cazala
cazala / api.raml
Created April 14, 2015 20:01
API Template: RAML Endpoint
# replace {{resource}} by the name of the resource
# replace {{secured}} by the appropiate authorization trait name, i.e. 'secured', 'auth', etc...
traits:
- {{secured}}:
queryParameters:
# authorization query params
headers:
# authorization headers
@cazala
cazala / businesslogic.xml
Created April 14, 2015 20:11
API Template: BusinessLogic
# replace {{resource}} with the camelCase name of the resoure
# replace {{Resource}} with the PascalCase name of the resource
<!-- {{Resource}}s DB -->
<sub-flow name="get{{Resource}}sFlow">
<flow-ref name="retrieve{{Resource}}sFlow" doc:name="retrieve{{Resource}}sFlow" />
<set-variable variableName="{{resource}}s" value="#[ [] ]" doc:name="{{resource}}s" />
<foreach doc:name="For Each">
<custom-transformer class="org.mule.sdg.transformers.{{Resource}}MapToJson" doc:name="{{Resource}}MapToJson" />
@cazala
cazala / database.xml
Last active August 29, 2015 14:19
API Template: Database Resource
# replace {{resource}} with the camelCase name of the resoure
# replace {{Resource}} with the PascalCase name of the resource
# replace {{table}} with the DB table
<sub-flow name="retrieve{{Resource}}sFlow" >
<logger level="INFO" message="Fetching {{resource}}s from DB..." doc:name="Logger"/>
<db:select config-ref="MySQL_Conf" doc:name="Select">
<db:parameterized-query><![CDATA[SELECT * FROM {{table}}]]></db:parameterized-query>
</db:select>
<choice doc:name="Choice">
@cazala
cazala / validation.java
Created April 14, 2015 20:30
API Template: Java Resource Validation
// replace {{projectPkg}}
// replace {{resource}}
// replace {{Resource}}
package org.mule.{{projectPkg}}.validation;
import java.util.Map;
import org.mule.api.MuleEventContext;
import org.mule.api.MuleMessage;
@cazala
cazala / DbToMap.java
Created April 14, 2015 20:32
API Template: Resource DB to Map
// replace {{projectPkg}}
// replace {{resource}}
// replace {{Resource}}
package org.mule.{{projectPkg}}.transformers;
import java.util.Map;
import org.mule.api.MuleMessage;
import org.mule.api.transformer.TransformerException;
@cazala
cazala / MapToJson.java
Created April 14, 2015 20:34
API Template: Resource Map to JSON
// replace {{projectPkg}}
// replace {{resource}}
// replace {{Resource}}
package org.mule.{{projectPkg}}.transformers;
import java.util.HashMap;
import java.util.Map;
import org.json.JSONObject;
@cazala
cazala / api.xml
Last active August 29, 2015 14:19
API Template: ApiKit Flows
# replace {{resource}}
# replace {{Resource}}
# replace {{projectPkg}}
<flow name="get:/{{resource}}s:api-config">
<flow-ref name="authUserFlow" doc:name="Authenticate User" />
<flow-ref name="authUserAgentFlow" doc:name="Authorize User Against Agent" />
<flow-ref name="get{{Resource}}sFlow" doc:name="get{{Resource}}sFlow" />
<custom-transformer class="org.mule.{{projectPkg}}.transformers.StandardJsonWrapper" doc:name="StandardJsonWrapper" />
</flow>
@cazala
cazala / StandardJsonWrapper.java
Last active August 29, 2015 14:19
API Template: Standard JSON Wrapper
// replace {{projectPkg}}
package org.mule.{{projectPkg}}.transformers;
import org.json.JSONObject;
import org.mule.api.transformer.TransformerException;
import org.mule.sdg.utils.JsonWrapper;
import org.mule.transformer.AbstractTransformer;
public class StandardJsonWrapper extends AbstractTransformer {
@cazala
cazala / JsonWrapper.java
Created April 14, 2015 21:00
API Template: JSON Wrapper
// replace {{projectPkg}}
package org.mule.{{projectPkg}}.utils;
import org.json.JSONObject;
public class JsonWrapper {
public static JSONObject wrapMessage(String data, boolean isSuccessful, String errorMsg) {
StringBuilder jsonString = new StringBuilder("{");
@cazala
cazala / powerhour.js
Last active August 29, 2015 14:21
Power Hour
function horn() {
var snd = new Audio("data:audio/wav;base64,UklGRiS6AwBXQVZFZm10IBAAAAABAAEARKwAAIhYAQACABAAZGF0YQC6AwAAAP//AQAAAAAAAAABAAAAAAD//wEAAAAAAAAA//8AAAEAAAAAAAIA/////wAAAAABAAAAAAAAAAAA//8BAAAAAAD//wEAAAAAAP//AAABAAAAAAAAAP////8BAAAAAQD//wEAAAAAAAAA//8AAAAAAAABAP7/AQD//wEA//8AAAIA//8AAAEAAAAAAAAAAAD//wEA//8AAAEAAAD//wEAAAABAAAAAAAAAAAAAAAAAAEA//8BAAAA//8AAAEAAAD//wEAAAD//wIA/v8CAAAA//8AAP//AgD/////AQAAAAAA//8AAAEA/////wEAAAD//wAAAQAAAAAAAAAAAP//AAABAP7/AQAAAAAA//8CAAAA//8AAAAAAAABAP//AAAAAAEA//8BAAAA//8BAAAA//8AAAEA/v8CAP////8BAP//AQAAAAAA//8BAP//AAABAP//AQD//wAAAAABAAAAAAAAAAAA//8AAAAAAAABAAAA//8AAAEA//8AAAEAAQAAAAAA//8BAAAAAQD//wAAAAABAAAAAAD//wEAAQD//wAA//8AAAAAAgD//wEA/v8BAP//AQABAP7/AgD//wAAAQD//wAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQD//wAAAQAAAAAAAAAAAP//AQAAAAAAAAAAAP//AQABAAAA//8AAP//AQABAP//AQD//wAAAAACAAAAAAD//wAAAAAAAAEAAAD//wAAAAAAAAAAAAD//wAAAQD//wEAAAAAAAAA//8BAP7/AAABAP//AAABAP7/AgAAAP//AAABAP//AAABAP//AAD//wEAAAAAAAEA//8AAAEAAAAAAAAA//8BAP//AQAAAP//AQD//wAAAQAAAAAAAQD////