/** * This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this file, * You can obtain one at http://mozilla.org/MPL/2.0/. */ package org.mifosplatform.mix.domain; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Table; import org.apache.commons.lang.StringUtils; import org.mifosplatform.infrastructure.core.api.JsonCommand; import org.springframework.data.jpa.domain.AbstractPersistable; @Entity @Table(name = "mix_taxonomy_mapping") public class MixTaxonomyMapping extends AbstractPersistable<Long> { @Column(name = "identifier") private String identifier; @Column(name = "config") private String config; @Column(name = "currency") private String currency; protected MixTaxonomyMapping() { // default } private MixTaxonomyMapping(final String identifier, final String config, final String currency) { this.identifier = StringUtils.defaultIfEmpty(identifier, null); this.config = StringUtils.defaultIfEmpty(config, null); this.currency = StringUtils.defaultIfEmpty(currency, null); } public static MixTaxonomyMapping fromJson(final JsonCommand command) { final String identifier = command.stringValueOfParameterNamed("identifier"); final String config = command.stringValueOfParameterNamed("config"); final String currency = command.stringValueOfParameterNamed("currency"); return new MixTaxonomyMapping(identifier, config, currency); } public void update(final JsonCommand command) { this.identifier = command.stringValueOfParameterNamed("identifier"); this.config = command.stringValueOfParameterNamed("config"); this.currency = command.stringValueOfParameterNamed("currency"); } }