package org.eclipse.fx.travisci.client.impl.entities;

import org.eclipse.fx.travisci.client.entities.Config;

public class ConfigImpl implements Config {
	private String language;

	@Override
	public String language() {
		return language;
	}

	@Override
	public String toString() {
		return "ConfigImpl [language=" + language + "]";
	}
	
}
