Allow specifying an extension for artifacts

This is useful if you need to download an AAR. For example:

  ./import-maven-artifacts.sh \
      com.google.android.exoplayer:exoplayer-core:2.8.1@aar

Bug: 80234218
Test: Ran with each combination of classifier/extension
Change-Id: I22e1624419c4bc9cc0ba2a5a5ef31a11edd03aba
diff --git a/import-maven-artifacts.sh b/import-maven-artifacts.sh
index 18e6a0f..9d949d5 100755
--- a/import-maven-artifacts.sh
+++ b/import-maven-artifacts.sh
@@ -8,7 +8,7 @@
 cd $tempDir
 
 function usage() {
-  echo "Usage: $0 group:artifact:version[:classifier] [group:artifact:version[:classifier]...]
+  echo "Usage: $0 group:artifact:version[:classifier][@extension] [group:artifact:version[:classifier][@extension]...]
 
 This script downloads the specified artifacts copies them into the appropriate subdirectory of $destRepo/prebuilts/"
   exit 1
@@ -76,14 +76,16 @@
 
   while [ "$1" != "" ]; do
     echo importing $1
-    # determine whether a classifier is present
-    if echo "$1" | grep ":.*:.*:" > /dev/null; then
-      # classifier is present
-      dependencyText="$(echo $1 | sed 's|\([^:]*\):\([^:]*\):\([^:]*\):\([^:]*\)|\n    <dependency>\n      <groupId>\1</groupId>\n      <artifactId>\2</artifactId>\n      <version>\3</version>\n    <classifier>\4</classifier>\n    </dependency>|')"
-    else
-      # classifier is not present
-      dependencyText="$(echo $1 | sed 's|\([^:]*\):\([^:]*\):\([^:]*\)|\n    <dependency>\n      <groupId>\1</groupId>\n      <artifactId>\2</artifactId>\n      <version>\3</version>\n    </dependency>|')"
-    fi
+    IFS=@ read -r dependency extension <<< $1
+    IFS=: read -ra FIELDS <<< ${dependency}
+    groupId="${FIELDS[0]}"
+    artifactId="${FIELDS[1]}"
+    version="${FIELDS[2]}"
+    classifier="${FIELDS[3]}"
+    dependencyText=$(echo -e "\n    <dependency>\n      <groupId>${groupId}</groupId>\n      <artifactId>${artifactId}</artifactId>\n      <version>${version}</version>")
+    [ $classifier ] && dependencyText+=$(echo -e "\n      <classifier>${classifier}</classifier>")
+    [ $extension ] && dependencyText+=$(echo -e "\n      <type>${extension}</type>")
+    dependencyText+=$(echo -e "\n    </dependency>")
     pomDependencies="${pomDependencies}${dependencyText}"
     shift
   done