Skip to content

Instantly share code, notes, and snippets.

Agnaldo de Oliveira agnaldo4j

View GitHub Profile
@agnaldo4j
agnaldo4j / OpenClosedPrinciple.txt
Last active Aug 29, 2015
Controlando escopos de variáveis no javascript
View OpenClosedPrinciple.txt
Nesta classe, tento mostrar como criar variáveis que são visíveis na hierarquia de escopo do js.
Dassa forma, posso mesmo em um escopo de callback do jquery acessar minha referencia do controller e
continuar encapsulando a os dados.
Para vc que esta usando AngularJS ou qualquer outro framework de js, é possível usar técnicas OO e
de SOLID Principles para melhorar a manutenção de seu código js.
Para entender melhor, veja como fazer herança em js em: https://gist.github.com/agnaldo4j/5e6715906813c00d0d46,
com essa técnica é possível sobrescrever métodos e usar polimorfismo, ou seja fazer um design OO.
@agnaldo4j
agnaldo4j / job-processor.sh
Created Jun 6, 2014
Bash script with config file
View job-processor.sh
#!/bin/bash
set -e #stops the execution of a script if a command or pipeline has an error
CONFIG_FILE=/usr/share/cnc/jobprocessor.cfg
function trim() {
local LVAR=$1;
LVAR="${LVAR#"${LVAR%%[![:space:]]*}"}"; # remove leading whitespace characters
LVAR="${LVAR%"${LVAR##*[![:space:]]}"}"; # remove trailing whitespace characters
@agnaldo4j
agnaldo4j / UserMeasures.scala
Created Dec 18, 2014
Exemplo de objeto aplicando somente ações a estrutura de dados imutável.
View UserMeasures.scala
case class UserMeasures(state: Map[String,Any]) {
def gender : String = {
state.getOrElse("usr_genero", "").asInstanceOf[String]
}
def measures: List[Map[String,Any]] = {
state.getOrElse("measures", List[Map[String,Any]]()).asInstanceOf[List[Map[String,Any]]]
}
@agnaldo4j
agnaldo4j / SpringDataScalaTransactionControl.md
Last active Aug 29, 2015
Controle de transação com SpringData, SpringJPA e Scala
View SpringDataScalaTransactionControl.md

Exemplo de controle de transação com SpringData e Scala

Implementação JDBC

package com.codesimples.jdbc

import com.typesafe.scalalogging.Logger
import org.springframework.transaction.support.{TransactionCallbackWithoutResult, TransactionTemplate}
import org.springframework.transaction.{PlatformTransactionManager, TransactionStatus}
@agnaldo4j
agnaldo4j / gist:1191078
Created Sep 3, 2011 — forked from viniciusteles/gist:556029
Sete Atitudes para Hackear a Indústria de Software
View gist:1191078
Sete Atitudes para Hackear a Indústria de Software
By Klaus Wuestefeld
1) Torne-se excelente.
Seja realmente bom em alguma coisa. Não fique só choramingando ou
querendo progredir às custas dos outros. Não pense q pq vc sentou 4
anos numa faculdade ouvindo um professor falar sobre software q vc
sabe alguma coisa. Jogador de futebol não aprende a jogar bola tendo
@agnaldo4j
agnaldo4j / Prevayler.scala
Created Oct 5, 2011
PrevaylerJR on Scala
View Prevayler.scala
import java.io._
abstract class Command[IN, OUT] extends Serializable { def executeOn(system: IN): OUT }
class Prevayler[SYSTEM](private val storageFile:File) {
private var _system: SYSTEM = _
private var _journal: ObjectOutputStream = _
def restoreState(initialState: SYSTEM): SYSTEM = {
var tempFile: File = new File(storageFile.getAbsolutePath + ".tmp")
@agnaldo4j
agnaldo4j / HashWrapper.scala
Created Oct 14, 2011
Operações básicas com riak usando scala
View HashWrapper.scala
package com.softsimples.social.persistence
import scala.collection.JavaConverters._
import com.basho.riak.client.bucket.Bucket
import org.json.JSONObject
class HashWrapper(private var bucket:Bucket) {
def name():String = bucket.getName
def keys(): Iterator[String] = bucket.keys().iterator.asScala
def store(key:String, value:String): String = {
bucket.store[String](key, value).execute()
}
@agnaldo4j
agnaldo4j / DBWrapper.scala
Created Oct 14, 2011
Usando Riak com Scala
View DBWrapper.scala
package com.softsimples.social.persistence
import scala.collection.JavaConverters._
import com.basho.riak.client.{IRiakClient, RiakFactory}
import com.basho.riak.client.bucket.Bucket
class DBWrapper(private val riakClient:IRiakClient) {
def createHashWrapperFor( bucketName:String ): HashWrapper = {
HashWrapper.buildTableWrapper( buildBucket( bucketName ) )
@agnaldo4j
agnaldo4j / DBBWithScala.scala
Created Nov 28, 2011
Utilizando BDD tentando não aumentar a complexibilidade.
View DBBWithScala.scala
package com.softsimples.persistence
import mongodb.DataWrapperMongoDB
import org.specs2.mutable._
import org.junit.runner._
import org.specs2.runner._
@RunWith(classOf[JUnitRunner])
class DataWrapperMongoDBSpec extends Specification {
"Para executar persistencia com mongodb" should {
@agnaldo4j
agnaldo4j / mongodb.st
Created Feb 11, 2012
Smalltalk pharo and mongodb
View mongodb.st
| root database processes json template result|
root := Mongo default.
root open.
database := root databaseNamed: 'lean_namagement'.
processes := database addCollection: 'processes'.
json := Dictionary new.
json at: #name put: 'agnaldo'.
processes add: json.
You can’t perform that action at this time.