#!/bin/bash
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You 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.

#######################################
# A utility script to search for java. The order in which we look for java
# goes from most specific to least specific, i.e.
#     ${DRUID_JAVA_HOME}
#     ${JAVA_HOME}
#     ${PATH}
# Arguments:
#   None
# Returns:
#   The bin folder of java if it exists, otherwise an empty string
#######################################
get_java_bin_dir() {
    if [ ! -z "${DRUID_JAVA_HOME-}" ]; then
      printf "$DRUID_JAVA_HOME/bin"
    elif [ ! -z "${JAVA_HOME-}" ]; then
      printf "$JAVA_HOME/bin"
    elif [ ! -z "$(command -v java)" ]; then
      # Strip /java from the location of where java is installed
      JAVA_ON_PATH="$(command -v java)"
      printf "${JAVA_ON_PATH%/java}"
    else
      printf ""
    fi
}
