joynr.types.DiscoveryScope Maven / Gradle / Ivy
/*
*
* Copyright (C) 2011 - 2015 BMW Car IT GmbH
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// #####################################################
//#######################################################
//### ###
//## WARNING: This file is generated. DO NOT EDIT ##
//## All changes will be lost! ##
//### ###
//#######################################################
// #####################################################
package joynr.types;
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
/**
* Enumeration specifying the discovery scope choices
*/
public enum DiscoveryScope {
/**
* Consider only entries from local cache
*/
LOCAL_ONLY,
/**
* Consider only entries from local cache, in no results are found, query global cache as well
*/
LOCAL_THEN_GLOBAL,
/**
* Consider both local and global entries
*/
LOCAL_AND_GLOBAL,
/**
* Consider only global entries
*/
GLOBAL_ONLY
;
static final Map ordinalToEnumValues = new HashMap();
static{
ordinalToEnumValues.put(Integer.valueOf(0), LOCAL_ONLY);
ordinalToEnumValues.put(Integer.valueOf(1), LOCAL_THEN_GLOBAL);
ordinalToEnumValues.put(Integer.valueOf(2), LOCAL_AND_GLOBAL);
ordinalToEnumValues.put(Integer.valueOf(3), GLOBAL_ONLY);
}
/**
* Get the matching enum for an ordinal number
* @param ordinal The ordinal number
* @return The matching enum for the given ordinal number
*/
public static DiscoveryScope getEnumValue(Integer ordinal) {
return ordinalToEnumValues.get(ordinal);
}
/**
* Get the matching ordinal number for this enum
* @return The ordinal number representing this enum
*/
public Integer getOrdinal() {
// TODO should we use a bidirectional map from a third-party library?
Integer ordinal = null;
for(Entry entry : ordinalToEnumValues.entrySet()) {
if(this == entry.getValue()) {
ordinal = entry.getKey();
break;
}
}
return ordinal;
}
}