Skip to content

Instantly share code, notes, and snippets.

View marcguilera's full-sized avatar
👨‍💻

Marc Guilera marcguilera

👨‍💻
View GitHub Profile
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
/**********************************
This is the main class of a Java program to play a game based on hexagonal tiles.
The mechanism of handling hexes is in the file hexmech.java.
Written by: M.H.
Date: December 2012
@marcguilera
marcguilera / Injector
Created April 11, 2018 09:19
flutter lib
// The injector is what gets passed around. Only in the setup are "new" allowed. Flutter doesn't allow for reflection so we must specify
// how to create the objects.
class InjectorSetupImpl extends InjectorSetupBaseImpl {
@override
IInjector createProductionInjector() {
return _createCommon()
// Mobile auth
..register(IFirebaseAuth, (i) => new FirebaseAuthImpl())
@marcguilera
marcguilera / .docker-step.yml
Last active February 17, 2019 12:09
tools/build/docker/pipelines/.docker-step.yml
.docker:
image: docker
stage: publish_docker
services:
- docker:dind
variables:
DOCKERFILE_PATH: Dockerfile
DOCKER_REGISTRY: $CI_REGISTRY
DOCKER_REGISTRY_IMAGE: $CI_REGISTRY_IMAGE
DOCKER_PROJECT_NAME: $CI_PROJECT_NAME
@marcguilera
marcguilera / semantic-release-builder.Dockerfile
Created February 17, 2019 12:05
tools/build/semantic-release/builders/semantic-release-builder.Dockerfile
FROM node:9.4.0
RUN npm -g install \
semantic-release \
@semantic-release/changelog \
@semantic-release/commit-analyzer \
@semantic-release/exec \
@semantic-release/gitlab \
@semantic-release/release-notes-generator \
@semantic-release/git
@marcguilera
marcguilera / .release-step.yml
Created February 17, 2019 12:08
tools.build.semantic-release/pipelines/.release-step.yml
.semantic-release:
stage: semantic-release
image: registry.gitlab.com/you/tools.build.semantic-release/semantic-release-builder
variables:
SEMANTIC_RELEASE_VERIFY_CONDITIONS: >-
@semantic-release/changelog,
@semantic-release/git,
@semantic-release/gitlab
SEMANTIC_RELEASE_ANALIZE_COMMITS: >-
@semantic-release/commit-analyzer
@marcguilera
marcguilera / .gitlab-ci.yml
Created February 17, 2019 12:17
tools/build/semantic-release/.gitlab-ci.yml
include:
- project: you/tools.build.docker
file: pipelines/.publish-step.yml
- local: pipelines/.release-step.yml
build docker:
extends: .docker_build
stage: build
variables:
DOCKER_PROJECT_NAME: semantic-release-builder
class Car {
private val wheel = Wheel()
fun drive() {
wheel.spin()
}
}
class Car(private val wheel: Wheel) {
fun drive() {
wheel.spin()
}
}
abstract class Service<M> {
Future<M> getOne(int id);
Future<List<M>> getAll();
}
abstract class RestServiceBase<M> implements Service<M> {
final Injector _injector;
final String _endpoint;
String get _root => "${_injector.get<String>(name: "api_root")}/$_endpoint";
import 'package:dependencies/dependencies.dart';
import 'models.dart';
import '../service.dart';
abstract class PostService implements Service<Post> {}
class PostRestService extends RestServiceBase<Post> implements PostService {
PostRestService(Injector injector) : super(injector, "posts");
@override