All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.vendasta.salesorders.v1.internal.ActivationStatus Maven / Gradle / Ivy

The newest version!
package com.vendasta.salesorders.v1.internal;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.HashMap;
import java.util.Collections;
import com.vendasta.salesorders.v1.generated.SalesOrdersProto;

/**
 * The different statuses representing any given state that a product can be in during the activation process
 **/
public enum ActivationStatus { 
	PENDING(0),
		ACTIVATED(1),
		ERRORED(2),
		ALREADY_ACTIVATED(3);
	
	private static final Map protoTypeMap;
	static {
		Map aMap;
		aMap = new HashMap();
		aMap.put(SalesOrdersProto.ActivationStatus.PENDING, ActivationStatus.PENDING);
		aMap.put(SalesOrdersProto.ActivationStatus.ACTIVATED, ActivationStatus.ACTIVATED);
		aMap.put(SalesOrdersProto.ActivationStatus.ERRORED, ActivationStatus.ERRORED);
		aMap.put(SalesOrdersProto.ActivationStatus.ALREADY_ACTIVATED, ActivationStatus.ALREADY_ACTIVATED);
		protoTypeMap = Collections.unmodifiableMap(aMap);
	}

	private static final Map javaTypeMap;
	static {
		Map aMap;
		aMap = new HashMap();
		aMap.put(ActivationStatus.PENDING, SalesOrdersProto.ActivationStatus.PENDING);
		aMap.put(ActivationStatus.ACTIVATED, SalesOrdersProto.ActivationStatus.ACTIVATED);
		aMap.put(ActivationStatus.ERRORED, SalesOrdersProto.ActivationStatus.ERRORED);
		aMap.put(ActivationStatus.ALREADY_ACTIVATED, SalesOrdersProto.ActivationStatus.ALREADY_ACTIVATED);
		javaTypeMap = Collections.unmodifiableMap(aMap);
	}

	private int value;

	private ActivationStatus(int i) {
		value = i;
	}
	public int getValue() {
		return value;
	}

	public static ActivationStatus fromProto(SalesOrdersProto.ActivationStatus proto) {
		return protoTypeMap.get(proto);
	}

	public static List fromProtos(List protos) {
		List result = new ArrayList();
		for(SalesOrdersProto.ActivationStatus proto : protos) {
			result.add(ActivationStatus.fromProto(proto));
		}
		return result;
	}

	public SalesOrdersProto.ActivationStatus toProto() {
		return javaTypeMap.get(this);
	}

	public static List toProtos(List objects) {
		List result = new ArrayList();
		for(ActivationStatus obj : objects) {
			result.add(obj.toProto());
		}
		return result;
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy