Skip to content

Instantly share code, notes, and snippets.

Lucas Cavalcanti lucascs

  • Nubank
Block or report user

Report or block lucascs

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@lucascs
lucascs / invariants.clj
Last active Mar 29, 2016
Double entry modeling
View invariants.clj
(def billing-violations [negative-entries small-minimum-payment prepaid-mutual])
(def loss-violations [credit-loss pre-loss])
(def general-violations [minimum-payment-mutual])
(defn all-violations [balances]
(concat billing-violations loss-violations general-violations))
(s/defn fixing-invariants :- [Entry] [initial-balances :- Balances, new-entries :- [Entry]]
@lucascs
lucascs / Capitalize.java
Created Apr 30, 2015
Capitalize java 8
View Capitalize.java
import java.util.Arrays;
public class Capitalize {
public static String capitalize (String x) {
return x.substring(0,1).toUpperCase() + x.substring(1).toLowerCase();
}
public static void main(String[] args) {
String text = "gabinete do deputado fulando de tal e de dona maria";
View 1_basics.rb
p "Hello World"
#!/usr/bin/ruby
irb
View CidLogicResult.java
@Specializes
@RequestScoped
public class CidLogicResult extends DefaultLogicResult {
private MutableRequest request;
public CidLogicResult(...., MutableRequest request) {
super(....);
this.request = request;
}
@Override
@lucascs
lucascs / boleto.clj
Created Feb 26, 2014
Caelum Stella em Clojure
View boleto.clj
(ns accounts.adapters.boleto
(:import (br.com.caelum.stella.boleto
Datas Sacado Emissor Boleto
bancos.Santander transformer.GeradorDeBoleto)))
(defn generate []
(let [datas (-> (Datas/novasDatas)
(.comDocumento 15 2 2014)
(.comProcessamento 15 2 2014)
(.comVencimento 17 2 2014))
@lucascs
lucascs / mapper.rb
Last active Dec 24, 2015
Tire configuration for pt-BR
View mapper.rb
class Mapper
def self.map!(options = {})
drop_index! if options[:delete]
Tire.index :index_name do
create :analysis => {
:filter => {
:pt_br_filter => {
:type => :stemmer,
:language => :minimal_portuguese
View LazyJSONSerialization.java
@Component
public class LazyJSONSerialization extends XStreamJSONSerialization {
private SerializerHolder holder;
public LazyJSONSerialization(SerializerHolder holder, HttpServletResponse response, TypeNameExtractor extractor, ProxyInitializer initializer, XStreamBuilder builder) {
super(response, extractor, initializer, builder);
this.holder = holder;
}
@Override
protected SerializerBuilder getSerializer() {
try {
@lucascs
lucascs / PackageResourceHandler.java
Created Mar 21, 2013
Resource handler para poder fazer: `${linkTo[controllers.MeuController].metodo}` ou `${linkTo[gerenciador.MeuController]}`
View PackageResourceHandler.java
@Component // do vraptor
@ApplicationScoped
@org.springframework.stereotype.Component("stereotypeHandler") // só se for spring
public class PackageResourceHandler implements StereotypeHandler {
private final Map<String, Class> controllers;
private final Map<String, Class> gerenciador;
public PackageResourceHandler(ServletContext context) {
context.setAttribute("controllers", controllers);
context.setAttribute("gerenciador", gerenciador);
@lucascs
lucascs / PackageRoutesParser.java
Created Jan 10, 2013
A Routes parser that uses the last package name as the first level of uri: /package/controller/method
View PackageRoutesParser.java
@Component
@ApplicationScoped
public class PackageRoutesParser extends PathAnnotationRoutesParser {
//delegate constructor
public PackageRoutesParser(Router router) {
super(router);
}
@Override
@lucascs
lucascs / Redirect.java
Created Oct 31, 2012
Redirecting to a ResourceMethod
View Redirect.java
Result result = //...
ResourceMethod method = //...
Object[] args = //...
Object redirecting = result.redirectTo(method.getResource().getType());
new Mirror().on(redirect).invoke().method(method.getMethod()).withArgs(args);
You can’t perform that action at this time.