AIDEGen: doesn't work when OUT_DIR isn't out

AIDEGen should make use of OUT_DIR instead of using out folder directly.

Bug: 128453332
Test: 1. cd $ANDROID_BUILD_TOP
      2. export OUT_DIR=out-cf
      3. source build/envsetup.sh
      4. lunch aosp_x86_64-eng
      5. m
      6. m aidegen
      7. out-cf/host/linux-x86/bin/aidegen-dev frameworks/base -s
      8. IntelliJ should be launched.

Change-Id: Iaaf08bda8bf6dbcb4d555550a62c8e2d397329ae
diff --git a/aidegen/constant.py b/aidegen/constant.py
index ec986e0..769a1a0 100644
--- a/aidegen/constant.py
+++ b/aidegen/constant.py
@@ -22,6 +22,10 @@
 ANDROID_HOST_OUT = os.environ.get(constants.ANDROID_HOST_OUT)
 ANDROID_ROOT_PATH = os.environ.get(constants.ANDROID_BUILD_TOP)
 ROOT_DIR = os.path.join(ANDROID_ROOT_PATH, 'tools/asuite/aidegen')
+ANDROID_OUT_DIR = os.environ.get(constants.ANDROID_OUT_DIR)
+ANDROID_PRODUCT_OUT = os.environ.get(constants.ANDROID_PRODUCT_OUT)
+OUT_DIR = ANDROID_OUT_DIR or ANDROID_PRODUCT_OUT
+BLUEPRINT_JSONFILE_OUTDIR = os.path.join(OUT_DIR, 'soong')
 KEY_PATH = 'path'
 KEY_DEP = 'dependencies'
 KEY_DEPTH = 'depth'
diff --git a/aidegen/lib/module_info_util.py b/aidegen/lib/module_info_util.py
index dc5ecdb..640de53 100644
--- a/aidegen/lib/module_info_util.py
+++ b/aidegen/lib/module_info_util.py
@@ -40,7 +40,6 @@
 from atest import constants
 
 _BLUEPRINT_JSONFILE_NAME = 'module_bp_java_deps.json'
-_BLUEPRINT_JSONFILE_OUTDIR = 'out/soong/'
 _KEY_CLS = 'class'
 _KEY_PATH = 'path'
 _KEY_INS = 'installed'
@@ -191,7 +190,7 @@
     """
     return os.path.join(
         os.environ.get(constants.ANDROID_BUILD_TOP),
-        _BLUEPRINT_JSONFILE_OUTDIR, _BLUEPRINT_JSONFILE_NAME)
+        constant.BLUEPRINT_JSONFILE_OUTDIR, _BLUEPRINT_JSONFILE_NAME)
 
 
 def _merge_module_keys(m_dict, b_dict):