Skip to content

Instantly share code, notes, and snippets.

View juliano's full-sized avatar

Juliano Alves juliano

View GitHub Profile
@juliano
juliano / Exercise.scala
Created April 26, 2020 09:51
Matching invoices
object Exercise {
sealed trait InvoiceType
case object Approved extends InvoiceType
case object UnApproved extends InvoiceType
type Money = Double
type FundingFacilityId = String
case class Invoice(`type`: InvoiceType, amount: Money)
package io.getquill.sources.finagle.mysql
import com.twitter.util.Future
import io.getquill.FinagleMysqlSourceConfig
import io.getquill.naming.NamingStrategy
class ConfigFinagleMysqlSource[N <: NamingStrategy](config: FinagleMysqlSourceConfig[N])
extends FinagleMysqlSource[N](config) {
def transaction[T](f: FinagleMysqlSource[N] => Future[T]) =
package io.getquill.sources.jdbc
import java.sql.{ Connection, PreparedStatement, ResultSet }
import com.typesafe.scalalogging.Logger
import io.getquill.JdbcSourceConfig
import io.getquill.naming.NamingStrategy
import io.getquill.sources.BindedStatementBuilder
import io.getquill.sources.sql.SqlSource
import io.getquill.sources.sql.idiom.SqlIdiom
object GoogleService {
sealed trait Mensagem
case class Buscar(url: String) extends Mensagem
case class Resultado(conteudo: String) extends Mensagem
implicit val timeout = Timeout(2 seconds)
class Buscador extends Actor {
def buscar(url: String) = // crawleia a internet
@juliano
juliano / ParametersValidatorInterceptor.java
Last active December 16, 2015 23:21
Interceptor que verifica se os parâmetros informados estão de acordo com a anotação @whitelist
import static br.com.caelum.vraptor.util.collections.Filters.hasAnnotation;
import static com.google.common.collect.Iterables.any;
import static java.util.Arrays.asList;
import java.lang.annotation.Annotation;
import java.util.ArrayList;
import java.util.List;
import br.com.caelum.vraptor.InterceptionException;
import br.com.caelum.vraptor.Intercepts;
@juliano
juliano / CarroDao.java
Last active December 11, 2015 06:08
SimpleDev - Integrando Spring e Hibernate
package br.com.simpledev.springhibernate.dao;
import java.util.List;
import br.com.simpledev.springhibernate.model.Carro;
public interface CarroDao {
List<Carro> lista();
@juliano
juliano / CarroActionTest.java
Created October 8, 2012 14:24
SimpleDev - Testes para Action do Struts 2
package br.com.simpledev.struts2;
import static org.junit.Assert.assertFalse;
import static org.mockito.Mockito.when;
import java.util.Collections;
import java.util.List;
import org.junit.Before;
import org.junit.Test;
@juliano
juliano / RandomService.java
Created September 16, 2012 21:03
Concurrent Services
package br.com.concurrent5.service;
import java.util.Random;
public class RandomService {
private final String name;
public RandomService(final String name) {
this.name = name;
@juliano
juliano / faces-config.xml
Created August 10, 2012 01:54
SimpleDev - Integrando JSF 2 e Spring
<application>
<el-resolver>org.springframework.web.jsf.el.SpringBeanFacesELResolver</el-resolver>
</application>
@juliano
juliano / CarroController.java
Created August 1, 2012 18:14
Simplificando - Spring MVC
package br.com.simpledev.spring.controller;
import static org.springframework.web.bind.annotation.RequestMethod.GET;
import static org.springframework.web.bind.annotation.RequestMethod.POST;
import static org.springframework.web.bind.annotation.RequestMethod.PUT;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;