---
- name: setup the Oracle JDK repository on ubuntu
  apt_repository: repo='{{ jdk_ubuntu_ppa }}' state=present
  when: is_ubuntu
  tags: [ 'oracle_jdk', 'jdk' ]

- name: Install the Oracle JDK repository pgp key on debian
  apt_key: keyserver=keyserver.ubuntu.com id={{ jdk_ppa_key }}
  when: is_debian
  tags: [ 'oracle_jdk', 'jdk' ]

- name: setup the Oracle JDK repository on debian
  apt_repository: repo='{{ jdk_ppa_repo }}' state=present
  when: is_debian
  tags: [ 'oracle_jdk', 'jdk' ]

- name: Accept the Oracle Java license
  debconf: name='oracle-java{{ item }}-installer' question='shared/accepted-oracle-license-v1-1' value='true' vtype='select'
  with_items: '{{ jdk_version }}'
  tags: [ 'oracle_jdk', 'jdk' ]

- name: Install the latest version of Oracle JDK
  apt: pkg={{ item }} state={{ jdk_pkg_state }} force=yes update_cache=yes
  when: not jdk_use_tarfile
  with_items: '{{ oracle_jdk_packages }}'
  tags: [ 'oracle_jdk', 'jdk' ]

- name: Install the extended security JCE Oracle JDK package
  apt: pkg=oracle-java{{ item }}-unlimited-jce-policy state={{ jdk_pkg_state }} force=yes
  with_items: '{{ jdk_version }}'
  when:
    - not jdk_use_tarfile
    - jdk_install_strong_encryption_policy
  tags: [ 'oracle_jdk', 'jdk' ]

- name: Set the JDK default via update-alternatives
  apt: pkg=oracle-java{{ item }}-set-default state={{ jdk_pkg_state }} force=yes
  with_items: '{{ jdk_default }}'
  when:
    - not jdk_use_tarfile
    - jdk_default is defined
  notify: Set the default Oracle JDK
  tags: [ 'oracle_jdk', 'jdk' ]

- name: Install a custom version of Oracle JDK from a tar file
  unarchive: src={{ jdk_tarfile }} dest={{ jdk_java_home_prefix }}
  when: '{{ jdk_use_tarfile }}'
  tags: [ 'oracle_jdk', 'jdk' ]

- name: Set fact jdk_installed
  set_fact: jdk_installed=True
  tags: [ 'oracle_jdk', 'jdk' ]