eHarmony / aloha-proto

This module provides protocol buffer definitions for entities used in the Aloha libraries.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Protocol Buffer Definitions for Aloha Libraries

Build Status

Installing Locally

mvn clean install

Description

This module provides protocol buffer definitions for entities used in the Aloha libraries. Currently, this only includes

  • com.eharmony.aloha.score.Scores: Used for serializing scores output by models. This allows for trees of polymorphic scores.

aloha-proto uses the following plugin to compile the protocol buffers to Java class files:

<plugin>
  <groupId>org.xolstice.maven.plugins</groupId>
  <artifactId>protobuf-maven-plugin</artifactId>
  <version>0.5.0</version>
</plugin>

The protoc binary is expected to be on the path, so if compiling locally, make sure the appropriate protoc version is available when doing:

which protoc

Installing Protocol Buffers 2.4.1

Aloha is currently required to use PB 2.4.1 and 2.4.1 is rather old at this point. So, it's slightly difficult to install locally on a dev machine since brew no longer supports that version. To get around this, you can install it with brew via the included protobuf241.rb brew formula:

cd aloha-proto
brew install ./protobuf241.rb

The formula is keg-only--since it conflicts with more modern versions of protocol buffers--so you'll have to manually update you path. This can be done via:

# Assuming brew installs files to a subdirectory of /usr/local
PROTOBUF_PATH=$(
  for F in $(find /usr/local -name protobuf241 -type d); do
    find $F -name bin | xargs dirname
  done | head -n1
)

export PATH="$PROTOBUF_PATH/bin:$PATH"

License

Aloha is released under the MIT License.

About

This module provides protocol buffer definitions for entities used in the Aloha libraries.


Languages

Language:Protocol Buffer 44.3%Language:Ruby 36.8%Language:Shell 18.9%