aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClyhtsuriva <aimeric@adjutor.xyz>2021-06-28 23:38:36 +0200
committerClyhtsuriva <aimeric@adjutor.xyz>2021-06-28 23:38:36 +0200
commit49196ae84aea338dbc6cd10f4d135e4b717cdd1f (patch)
tree0c9b9e927aa4d5f35ccc07e45e8abd973b2bad08
parent69247f7a485b1e745d07d2fbd5440b12fa6fce11 (diff)
Latest package, javadoc and jacocodevelop
-rw-r--r--log/spoteezer.log6
-rw-r--r--src/main/java/musichub/util/Policy.java50
-rw-r--r--target/classes/musichub/business/AudioElement.classbin5422 -> 5594 bytes
-rw-r--r--target/classes/musichub/business/MusicHub.classbin13297 -> 13299 bytes
-rw-r--r--target/classes/musichub/business/SortByAuthor.classbin901 -> 901 bytes
-rw-r--r--target/classes/musichub/business/SortByDate.classbin854 -> 854 bytes
-rw-r--r--target/classes/musichub/business/SortByGenre.classbin858 -> 858 bytes
-rw-r--r--target/classes/musichub/main/Main.classbin11373 -> 12193 bytes
-rw-r--r--target/classes/musichub/util/Policy.classbin10860 -> 2690 bytes
-rw-r--r--target/jacoco.execbin45918 -> 107422 bytes
-rw-r--r--target/maven-javadoc-plugin-stale-data.txt39
-rw-r--r--target/original-spoteezer-0.1.0.jarbin39074 -> 36814 bytes
-rw-r--r--target/site/apidocs/allclasses-index.html14
-rw-r--r--target/site/apidocs/allpackages-index.html4
-rw-r--r--target/site/apidocs/help-doc.html4
-rw-r--r--target/site/apidocs/index-all.html26
-rw-r--r--target/site/apidocs/index.html4
-rw-r--r--target/site/apidocs/member-search-index.js2
-rw-r--r--target/site/apidocs/musichub/business/Album.html4
-rw-r--r--target/site/apidocs/musichub/business/AudioBook.html4
-rw-r--r--target/site/apidocs/musichub/business/AudioElement.html4
-rw-r--r--target/site/apidocs/musichub/business/Category.html4
-rw-r--r--target/site/apidocs/musichub/business/Genre.html4
-rw-r--r--target/site/apidocs/musichub/business/Language.html4
-rw-r--r--target/site/apidocs/musichub/business/MusicHub.html63
-rw-r--r--target/site/apidocs/musichub/business/NoAlbumFoundException.html4
-rw-r--r--target/site/apidocs/musichub/business/NoElementFoundException.html4
-rw-r--r--target/site/apidocs/musichub/business/NoPlayListFoundException.html4
-rw-r--r--target/site/apidocs/musichub/business/PlayList.html4
-rw-r--r--target/site/apidocs/musichub/business/Song.html4
-rw-r--r--target/site/apidocs/musichub/business/class-use/Album.html4
-rw-r--r--target/site/apidocs/musichub/business/class-use/AudioBook.html4
-rw-r--r--target/site/apidocs/musichub/business/class-use/AudioElement.html9
-rw-r--r--target/site/apidocs/musichub/business/class-use/Category.html4
-rw-r--r--target/site/apidocs/musichub/business/class-use/Genre.html4
-rw-r--r--target/site/apidocs/musichub/business/class-use/Language.html4
-rw-r--r--target/site/apidocs/musichub/business/class-use/MusicHub.html4
-rw-r--r--target/site/apidocs/musichub/business/class-use/NoAlbumFoundException.html23
-rw-r--r--target/site/apidocs/musichub/business/class-use/NoElementFoundException.html7
-rw-r--r--target/site/apidocs/musichub/business/class-use/NoPlayListFoundException.html9
-rw-r--r--target/site/apidocs/musichub/business/class-use/PlayList.html4
-rw-r--r--target/site/apidocs/musichub/business/class-use/Song.html4
-rw-r--r--target/site/apidocs/musichub/business/package-summary.html4
-rw-r--r--target/site/apidocs/musichub/business/package-tree.html4
-rw-r--r--target/site/apidocs/musichub/business/package-use.html17
-rw-r--r--target/site/apidocs/musichub/main/Main.html8
-rw-r--r--target/site/apidocs/musichub/main/class-use/Main.html4
-rw-r--r--target/site/apidocs/musichub/main/package-summary.html4
-rw-r--r--target/site/apidocs/musichub/main/package-tree.html4
-rw-r--r--target/site/apidocs/musichub/main/package-use.html4
-rw-r--r--target/site/apidocs/musichub/util/LogHandler.html4
-rw-r--r--target/site/apidocs/musichub/util/PathValidation.html4
-rw-r--r--target/site/apidocs/musichub/util/Policy.html183
-rw-r--r--target/site/apidocs/musichub/util/XMLHandler.html4
-rw-r--r--target/site/apidocs/musichub/util/class-use/LogHandler.html4
-rw-r--r--target/site/apidocs/musichub/util/class-use/PathValidation.html4
-rw-r--r--target/site/apidocs/musichub/util/class-use/Policy.html65
-rw-r--r--target/site/apidocs/musichub/util/class-use/XMLHandler.html4
-rw-r--r--target/site/apidocs/musichub/util/package-summary.html12
-rw-r--r--target/site/apidocs/musichub/util/package-tree.html5
-rw-r--r--target/site/apidocs/musichub/util/package-use.html4
-rw-r--r--target/site/apidocs/overview-summary.html4
-rw-r--r--target/site/apidocs/overview-tree.html5
-rw-r--r--target/site/apidocs/serialized-form.html4
-rw-r--r--target/site/apidocs/type-search-index.js2
-rw-r--r--target/site/jacoco/index.html2
-rw-r--r--target/site/jacoco/jacoco-sessions.html2
-rw-r--r--target/site/jacoco/jacoco.csv8
-rw-r--r--target/site/jacoco/jacoco.xml2
-rw-r--r--target/site/jacoco/musichub.business/AudioElement.html2
-rw-r--r--target/site/jacoco/musichub.business/AudioElement.java.html162
-rw-r--r--target/site/jacoco/musichub.business/MusicHub.html2
-rw-r--r--target/site/jacoco/musichub.business/MusicHub.java.html482
-rw-r--r--target/site/jacoco/musichub.business/SortByAuthor.html2
-rw-r--r--target/site/jacoco/musichub.business/SortByDate.html2
-rw-r--r--target/site/jacoco/musichub.business/SortByGenre.html2
-rw-r--r--target/site/jacoco/musichub.business/index.html2
-rw-r--r--target/site/jacoco/musichub.business/index.source.html2
-rw-r--r--target/site/jacoco/musichub.main/Main.html2
-rw-r--r--target/site/jacoco/musichub.main/Main.java.html429
-rw-r--r--target/site/jacoco/musichub.main/index.html2
-rw-r--r--target/site/jacoco/musichub.main/index.source.html2
-rw-r--r--target/site/jacoco/musichub.util/Policy.html2
-rw-r--r--target/site/jacoco/musichub.util/Policy.java.html143
-rw-r--r--target/site/jacoco/musichub.util/index.html2
-rw-r--r--target/site/jacoco/musichub.util/index.source.html2
-rw-r--r--target/spoteezer-0.1.0-shaded.jarbin374992 -> 372732 bytes
-rw-r--r--target/spoteezer-0.1.0.jarbin374992 -> 372732 bytes
-rw-r--r--target/surefire-reports/TEST-musichub.business.CategoryTest.xml4
-rw-r--r--target/surefire-reports/TEST-musichub.business.LanguageTest.xml4
-rw-r--r--target/surefire-reports/TEST-musichub.business.PlayListTest.xml8
-rw-r--r--target/surefire-reports/TEST-musichub.business.SongTest.xml10
-rw-r--r--target/surefire-reports/TEST-musichub.util.LogHandlerTest.xml12
-rw-r--r--target/surefire-reports/TEST-musichub.util.PathValidationTest.xml6
-rw-r--r--target/surefire-reports/TEST-musichub.util.XMLHandlerTest.xml8
-rw-r--r--target/surefire-reports/musichub.business.PlayListTest.txt2
-rw-r--r--target/surefire-reports/musichub.business.SongTest.txt2
-rw-r--r--target/surefire-reports/musichub.util.LogHandlerTest.txt2
-rw-r--r--target/surefire-reports/musichub.util.PathValidationTest.txt2
-rw-r--r--target/surefire-reports/musichub.util.XMLHandlerTest.txt2
100 files changed, 1192 insertions, 819 deletions
diff --git a/log/spoteezer.log b/log/spoteezer.log
index 7904af2..51a5d09 100644
--- a/log/spoteezer.log
+++ b/log/spoteezer.log
@@ -41,4 +41,8 @@
[2021-06-28 20:32:31.447] INFO: Music stopped
[2021-06-28 20:32:32.647] INFO: Music stopped
[2021-06-28 20:32:43.836] INFO: Music started
-[2021-06-28 20:32:52.768] INFO: Music stopped \ No newline at end of file
+[2021-06-28 20:32:52.768] INFO: Music stopped
+[2021-06-28 23:30:48.508] TEST: JUnit test
+[2021-06-28 23:31:59.503] TEST: JUnit test
+[2021-06-28 23:36:26.824] TEST: JUnit test
+[2021-06-28 23:36:31.897] TEST: JUnit test \ No newline at end of file
diff --git a/src/main/java/musichub/util/Policy.java b/src/main/java/musichub/util/Policy.java
index ac067b4..01c7d20 100644
--- a/src/main/java/musichub/util/Policy.java
+++ b/src/main/java/musichub/util/Policy.java
@@ -32,58 +32,10 @@ public final class Policy {
String termsAndConditions = """
Terms and Conditions
-
In using this website you are deemed to have read and agreed to the following terms and conditions:
-
- The following terminology applies to these Terms and Conditions, Privacy Statement and Disclaimer Notice and any or all Agreements: "Client", “You” and “Your” refers to you, the person accessing this website and accepting the Company’s terms and conditions. "The Company", “Ourselves”, “We” and "Us", refers to our Company. “Party”, “Parties”, or “Us”, refers to both the Client and ourselves, or either the Client or ourselves. All terms refer to the offer, acceptance and consideration of payment necessary to undertake the process of our assistance to the Client in the most appropriate manner, whether by formal meetings of a fixed duration, or any other means, for the express purpose of meeting the Client’s needs in respect of provision of the Company’s stated services/products, in accordance with and subject to, prevailing English Law. Any use of the above terminology or other words in the singular, plural, capitalisation and/or he/she or they, are taken as interchangeable and therefore as referring to same.
-
Privacy Statement
We are committed to protecting your privacy. Authorized employees within the company on a need to know basis only use any information collected from individual customers. We constantly review our systems and data to ensure the best possible service to our customers. Parliament has created specific offences for unauthorised actions against computer systems and data. We will investigate any such actions with a view to prosecuting and/or taking civil proceedings to recover damages against those responsible
-
- Confidentiality
- We are registered under the Data Protection Act 1998 and as such, any information concerning the Client and their respective Client Records may be passed to third parties. However, Client records are regarded as confidential and therefore will not be divulged to any third party, other than if legally required to do so to the appropriate authorities. Clients have the right to request sight of, and copies of any and all Client Records we keep, on the proviso that we are given reasonable notice of such a request. Clients are requested to retain copies of any literature issued in relation to the provision of our services. Where appropriate, we shall issue Client’s with appropriate written information, handouts or copies of records as part of an agreed contract, for the benefit of both parties.
-
- We will not sell, share, or rent your personal information to any third party or use your e-mail address for unsolicited mail. Any emails sent by this Company will only be in connection with the provision of agreed services and products.
-
-
- Disclaimer
- Exclusions and Limitations\s
- The information on this web site is provided on an "as is" basis. To the fullest extent permitted by law, this Company:
- \uF0A7\texcludes all representations and warranties relating to this website and its contents or which is or may be provided by any affiliates or any other third party, including in relation to any inaccuracies or omissions in this website and/or the Company’s literature; and\s
- \uF0A7\texcludes all liability for damages arising out of or in connection with your use of this website. This includes, without limitation, direct loss, loss of business or profits (whether or not the loss of such profits was foreseeable, arose in the normal course of things or you have advised this Company of the possibility of such potential loss), damage caused to your computer, computer software, systems and programs and the data thereon or any other direct or indirect, consequential and incidental damages.\s
- This Company does not however exclude liability for death or personal injury caused by its negligence. The above exclusions and limitations apply only to the extent permitted by law. None of your statutory rights as a consumer are affected.\s
-
-
-
- Cancellation Policy
- Minimum 24 hours’ notice of cancellation required. Notification for instance, in person, via email, mobile phone ‘text message’ and/or fax, or any other means will be accepted subject to confirmation in writing. We reserve the right to levy a £30 charge to cover any subsequent administrative expenses.
-
- Termination of Agreements and Refunds Policy
- Both the Client and we have the right to terminate any Services Agreement for any reason, including the ending of services that are already underway. No refunds shall be offered, where a Service is deemed to have begun and is, for all intents and purposes, underway. Any monies that have been paid to us which constitute payment in respect of the provision of unused Services, shall be refunded.
-
- Availability\s
- Unless otherwise stated, the services featured on this website are only available in France, or in relation to postings from France. All advertising is intended solely for the France market. You are solely responsible for evaluating the fitness for a particular purpose of any downloads, programs and text available through this site. Redistribution or republication of any part of this site or its content is prohibited, including such by framing or other similar or any other means, without the express written consent of the Company. The Company does not warrant that the service from this site will be uninterrupted, timely or error free, although it is provided to the best ability. By using this service you thereby indemnify this Company, its employees, agents and affiliates against any loss or damage, in whatever manner, howsoever caused.
-
-
- Copyright Notice\s
- Copyright and other relevant intellectual property rights exists on all text relating to the Company’s services and the full content of this application.\s
-
- Communication
- We have several different e-mail addresses for different queries. These, & other contact information, can be found on our Contact Us link on our website or via Company literature or via the Company’s stated telephone, facsimile or mobile telephone numbers.
-
- Force Majeure
- Neither party shall be liable to the other for any failure to perform any obligation under any Agreement which is due to an event beyond the control of such party including but not limited to any Act of God, terrorism, war, Political insurgence, insurrection, riot, civil unrest, act of civil or military authority, uprising, earthquake, flood or any other natural or manmade eventuality outside of our control, which causes the termination of an agreement or contract entered into, nor which could have been reasonably foreseen. Any Party affected by such event shall forthwith inform the other Party of the same and shall use all reasonable endeavours to comply with the terms and conditions of any Agreement contained herein.
-
- Waiver
- Failure of either Party to insist upon strict performance of any provision of this or any Agreement or the failure of either Party to exercise any right or remedy to which it, he or they are entitled hereunder shall not constitute a waiver thereof and shall not cause a diminution of the obligations under this or any Agreement. No waiver of any of the provisions of this or any Agreement shall be effective unless it is expressly stated to be such and signed by both Parties.
-
- General
- The laws of France govern these terms and conditions. By accessing this application, you consent to these terms and conditions and to the exclusive jurisdiction of the English courts in all disputes arising out of such access. If any of these terms are deemed invalid or unenforceable for any reason (including, but not limited to the exclusions and limitations set out above), then the invalid or unenforceable provision will be severed from these terms and the remaining terms will continue to apply. Failure of the Company to enforce any of the provisions set out in these Terms and Conditions and any Agreement, or failure to exercise any option to terminate, shall not be construed as waiver of such provisions and shall not affect the validity of these Terms and Conditions or of any Agreement or any part thereof, or the right thereafter to enforce each and every provision. These Terms and Conditions shall not be amended, modified, varied or supplemented except in writing and signed by duly authorised representatives of the Company.
-
- Notification of Changes
- The Company reserves the right to change these conditions from time to time as it sees fit and your continued use of the site will signify your acceptance of any adjustment to these terms. If there are any changes to our privacy policy, we will announce that these changes have been made on our home page and on other key pages on our site. If there are any changes in how we use our site customers’ Personally Identifiable Information, notification by e-mail or postal mail will be made to those affected by this change. Any changes to our privacy policy will be posted on our web site 30 days prior to these changes taking place. You are therefore advised to re-read this statement on a regular basis
-
- These terms and conditions form part of the Agreement between the Client and ourselves. Your accessing of this website and/or undertaking of a booking or Agreement indicates your understanding, agreement to and acceptance, of the Disclaimer Notice and the full Terms and Conditions contained herein. Your statutory Consumer Rights are unaffected. \s
+ These terms and conditions form part of the Agreement between the Client and ourselves. Your accessing of this website and/or undertaking of a booking or Agreement indicates your understanding, agreement to and acceptance, of the Disclaimer Notice and the full Terms and Conditions contained herein. Your statutory Consumer Rights are unaffected. s
© Company Name 2021 All Rights Reserved
""";
diff --git a/target/classes/musichub/business/AudioElement.class b/target/classes/musichub/business/AudioElement.class
index bb0f170..f46a913 100644
--- a/target/classes/musichub/business/AudioElement.class
+++ b/target/classes/musichub/business/AudioElement.class
Binary files differ
diff --git a/target/classes/musichub/business/MusicHub.class b/target/classes/musichub/business/MusicHub.class
index 42d7480..f3ea4cc 100644
--- a/target/classes/musichub/business/MusicHub.class
+++ b/target/classes/musichub/business/MusicHub.class
Binary files differ
diff --git a/target/classes/musichub/business/SortByAuthor.class b/target/classes/musichub/business/SortByAuthor.class
index e366c32..ac4474a 100644
--- a/target/classes/musichub/business/SortByAuthor.class
+++ b/target/classes/musichub/business/SortByAuthor.class
Binary files differ
diff --git a/target/classes/musichub/business/SortByDate.class b/target/classes/musichub/business/SortByDate.class
index 9d330cb..6892059 100644
--- a/target/classes/musichub/business/SortByDate.class
+++ b/target/classes/musichub/business/SortByDate.class
Binary files differ
diff --git a/target/classes/musichub/business/SortByGenre.class b/target/classes/musichub/business/SortByGenre.class
index 512232f..7cabb3e 100644
--- a/target/classes/musichub/business/SortByGenre.class
+++ b/target/classes/musichub/business/SortByGenre.class
Binary files differ
diff --git a/target/classes/musichub/main/Main.class b/target/classes/musichub/main/Main.class
index d1f8ea2..03d8fc5 100644
--- a/target/classes/musichub/main/Main.class
+++ b/target/classes/musichub/main/Main.class
Binary files differ
diff --git a/target/classes/musichub/util/Policy.class b/target/classes/musichub/util/Policy.class
index 4bf6b23..a8c66c4 100644
--- a/target/classes/musichub/util/Policy.class
+++ b/target/classes/musichub/util/Policy.class
Binary files differ
diff --git a/target/jacoco.exec b/target/jacoco.exec
index c71133e..34e3b31 100644
--- a/target/jacoco.exec
+++ b/target/jacoco.exec
Binary files differ
diff --git a/target/maven-javadoc-plugin-stale-data.txt b/target/maven-javadoc-plugin-stale-data.txt
index 7723699..54d0d1a 100644
--- a/target/maven-javadoc-plugin-stale-data.txt
+++ b/target/maven-javadoc-plugin-stale-data.txt
@@ -39,28 +39,29 @@
'C:/Users/SoftA/Documents/spoteezer/src/main/java/musichub/main/Main.java'
'C:/Users/SoftA/Documents/spoteezer/src/main/java/musichub/util/LogHandler.java'
'C:/Users/SoftA/Documents/spoteezer/src/main/java/musichub/util/PathValidation.java'
+'C:/Users/SoftA/Documents/spoteezer/src/main/java/musichub/util/Policy.java'
'C:/Users/SoftA/Documents/spoteezer/src/main/java/musichub/util/XMLHandler.java'
C:\Users\SoftA\.m2\repository\org\junit\jupiter\junit-jupiter-api\5.0.2\junit-jupiter-api-5.0.2.jar = 1624015816799
C:\Users\SoftA\.m2\repository\org\opentest4j\opentest4j\1.0.0\opentest4j-1.0.0.jar = 1624015816785
C:\Users\SoftA\.m2\repository\org\junit\platform\junit-platform-commons\1.0.2\junit-platform-commons-1.0.2.jar = 1624015816770
C:\Users\SoftA\.m2\repository\org\junit\jupiter\junit-jupiter-engine\5.0.2\junit-jupiter-engine-5.0.2.jar = 1624015816790
C:\Users\SoftA\.m2\repository\org\junit\platform\junit-platform-engine\1.0.2\junit-platform-engine-1.0.2.jar = 1624015816783
-C:\Users\SoftA\Documents\spoteezer\src\main\java = 1624708123937
-C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\allclasses-index.html = 1624793029572
-C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\allpackages-index.html = 1624793029575
-C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\element-list = 1624793029464
-C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\help-doc.html = 1624793029599
-C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\index-all.html = 1624793029596
-C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\index.html = 1624793029553
-C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\jquery-ui.overrides.css = 1624793029620
-C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\member-search-index.js = 1624793029579
-C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\module-search-index.js = 1624793029576
-C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\overview-summary.html = 1624793029597
-C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\overview-tree.html = 1624793029548
-C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\package-search-index.js = 1624793029577
-C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\script.js = 1624793029602
-C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\search.js = 1624793029605
-C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\serialized-form.html = 1624793029489
-C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\stylesheet.css = 1624793029601
-C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\tag-search-index.js = 1624793029580
-C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\type-search-index.js = 1624793029578 \ No newline at end of file
+C:\Users\SoftA\Documents\spoteezer\src\main\java = 1624912572607
+C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\allclasses-index.html = 1624916173953
+C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\allpackages-index.html = 1624916173955
+C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\element-list = 1624916173845
+C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\help-doc.html = 1624916173978
+C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\index-all.html = 1624916173975
+C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\index.html = 1624916173935
+C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\jquery-ui.overrides.css = 1624916173996
+C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\member-search-index.js = 1624916173958
+C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\module-search-index.js = 1624916173956
+C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\overview-summary.html = 1624916173975
+C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\overview-tree.html = 1624916173932
+C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\package-search-index.js = 1624916173957
+C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\script.js = 1624916173981
+C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\search.js = 1624916173983
+C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\serialized-form.html = 1624916173866
+C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\stylesheet.css = 1624916173979
+C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\tag-search-index.js = 1624916173959
+C:\Users\SoftA\Documents\spoteezer\target\site\apidocs\type-search-index.js = 1624916173957 \ No newline at end of file
diff --git a/target/original-spoteezer-0.1.0.jar b/target/original-spoteezer-0.1.0.jar
index dee388f..96eb4fb 100644
--- a/target/original-spoteezer-0.1.0.jar
+++ b/target/original-spoteezer-0.1.0.jar
Binary files differ
diff --git a/target/site/apidocs/allclasses-index.html b/target/site/apidocs/allclasses-index.html
index f526bdf..46cc044 100644
--- a/target/site/apidocs/allclasses-index.html
+++ b/target/site/apidocs/allclasses-index.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>All Classes (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="class index">
<meta name="generator" content="javadoc/AllClassesIndexWriter">
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
@@ -96,10 +96,14 @@ loadScripts(document, 'script');</script>
</div>
<div class="col-first odd-row-color all-classes-table-tab2 all-classes-table"><a href="musichub/business/PlayList.html" title="class in musichub.business">PlayList</a></div>
<div class="col-last odd-row-color all-classes-table-tab2 all-classes-table">&nbsp;</div>
-<div class="col-first even-row-color all-classes-table-tab2 all-classes-table"><a href="musichub/business/Song.html" title="class in musichub.business">Song</a></div>
-<div class="col-last even-row-color all-classes-table-tab2 all-classes-table">&nbsp;</div>
-<div class="col-first odd-row-color all-classes-table-tab2 all-classes-table"><a href="musichub/util/XMLHandler.html" title="class in musichub.util">XMLHandler</a></div>
+<div class="col-first even-row-color all-classes-table-tab2 all-classes-table"><a href="musichub/util/Policy.html" title="class in musichub.util">Policy</a></div>
+<div class="col-last even-row-color all-classes-table-tab2 all-classes-table">
+<div class="block">Class offering methods to prompt a policy agreement form to the user.</div>
+</div>
+<div class="col-first odd-row-color all-classes-table-tab2 all-classes-table"><a href="musichub/business/Song.html" title="class in musichub.business">Song</a></div>
<div class="col-last odd-row-color all-classes-table-tab2 all-classes-table">&nbsp;</div>
+<div class="col-first even-row-color all-classes-table-tab2 all-classes-table"><a href="musichub/util/XMLHandler.html" title="class in musichub.util">XMLHandler</a></div>
+<div class="col-last even-row-color all-classes-table-tab2 all-classes-table">&nbsp;</div>
</div>
</div>
</div>
diff --git a/target/site/apidocs/allpackages-index.html b/target/site/apidocs/allpackages-index.html
index 76d905a..e7eec7c 100644
--- a/target/site/apidocs/allpackages-index.html
+++ b/target/site/apidocs/allpackages-index.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>All Packages (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="package index">
<meta name="generator" content="javadoc/AllPackagesIndexWriter">
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
diff --git a/target/site/apidocs/help-doc.html b/target/site/apidocs/help-doc.html
index 98c4397..a2dc5e0 100644
--- a/target/site/apidocs/help-doc.html
+++ b/target/site/apidocs/help-doc.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>API Help (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="help">
<meta name="generator" content="javadoc/HelpWriter">
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
diff --git a/target/site/apidocs/index-all.html b/target/site/apidocs/index-all.html
index bb29e83..4154466 100644
--- a/target/site/apidocs/index-all.html
+++ b/target/site/apidocs/index-all.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Index (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="index">
<meta name="generator" content="javadoc/IndexWriter">
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
@@ -182,6 +182,14 @@ loadScripts(document, 'script');</script>
<dd>&nbsp;</dd>
<dt><span class="member-name-link"><a href="musichub/business/Language.html#getLanguage()">getLanguage()</a></span> - Method in enum class musichub.business.<a href="musichub/business/Language.html" title="enum class in musichub.business">Language</a></dt>
<dd>&nbsp;</dd>
+<dt><span class="member-name-link"><a href="musichub/business/MusicHub.html#getPlayListSongs(java.lang.String)">getPlayListSongs(String)</a></span> - Method in class musichub.business.<a href="musichub/business/MusicHub.html" title="class in musichub.business">MusicHub</a></dt>
+<dd>
+<div class="block">Method checking the songs contained in a chosen playlist and returning them if found.</div>
+</dd>
+<dt><span class="member-name-link"><a href="musichub/business/MusicHub.html#getPlayListsTitles()">getPlayListsTitles()</a></span> - Method in class musichub.business.<a href="musichub/business/MusicHub.html" title="class in musichub.business">MusicHub</a></dt>
+<dd>
+<div class="block">Method getting a list of playlists</div>
+</dd>
<dt><span class="member-name-link"><a href="musichub/business/Album.html#getSongs()">getSongs()</a></span> - Method in class musichub.business.<a href="musichub/business/Album.html" title="class in musichub.business">Album</a></dt>
<dd>&nbsp;</dd>
<dt><span class="member-name-link"><a href="musichub/business/Album.html#getSongsRandomly()">getSongsRandomly()</a></span> - Method in class musichub.business.<a href="musichub/business/Album.html" title="class in musichub.business">Album</a></dt>
@@ -291,6 +299,14 @@ loadScripts(document, 'script');</script>
<dd>&nbsp;</dd>
<dt><span class="member-name-link"><a href="musichub/business/MusicHub.html#PLAYLISTS_FILE_PATH">PLAYLISTS_FILE_PATH</a></span> - Static variable in class musichub.business.<a href="musichub/business/MusicHub.html" title="class in musichub.business">MusicHub</a></dt>
<dd>&nbsp;</dd>
+<dt><a href="musichub/util/Policy.html" title="class in musichub.util"><span class="type-name-link">Policy</span></a> - Class in <a href="musichub/util/package-summary.html">musichub.util</a></dt>
+<dd>
+<div class="block">Class offering methods to prompt a policy agreement form to the user.</div>
+</dd>
+<dt><span class="member-name-link"><a href="musichub/util/Policy.html#%3Cinit%3E()">Policy()</a></span> - Constructor for class musichub.util.<a href="musichub/util/Policy.html" title="class in musichub.util">Policy</a></dt>
+<dd>
+<div class="block">Method that just throws an AssertionError if the class is called</div>
+</dd>
<dt><span class="member-name-link"><a href="musichub/business/Genre.html#POP">POP</a></span> - Enum constant in enum class musichub.business.<a href="musichub/business/Genre.html" title="enum class in musichub.business">Genre</a></dt>
<dd>&nbsp;</dd>
</dl>
@@ -313,12 +329,18 @@ loadScripts(document, 'script');</script>
<dd>&nbsp;</dd>
<dt><span class="member-name-link"><a href="musichub/business/MusicHub.html#savePlayLists()">savePlayLists()</a></span> - Method in class musichub.business.<a href="musichub/business/MusicHub.html" title="class in musichub.business">MusicHub</a></dt>
<dd>&nbsp;</dd>
+<dt><span class="member-name-link"><a href="musichub/business/MusicHub.html#searchAudioElement()">searchAudioElement()</a></span> - Method in class musichub.business.<a href="musichub/business/MusicHub.html" title="class in musichub.business">MusicHub</a></dt>
+<dd>&nbsp;</dd>
<dt><span class="member-name-link"><a href="musichub/business/AudioBook.html#setCategory(java.lang.String)">setCategory(String)</a></span> - Method in class musichub.business.<a href="musichub/business/AudioBook.html" title="class in musichub.business">AudioBook</a></dt>
<dd>&nbsp;</dd>
<dt><span class="member-name-link"><a href="musichub/business/Song.html#setGenre(java.lang.String)">setGenre(String)</a></span> - Method in class musichub.business.<a href="musichub/business/Song.html" title="class in musichub.business">Song</a></dt>
<dd>&nbsp;</dd>
<dt><span class="member-name-link"><a href="musichub/business/AudioBook.html#setLanguage(java.lang.String)">setLanguage(String)</a></span> - Method in class musichub.business.<a href="musichub/business/AudioBook.html" title="class in musichub.business">AudioBook</a></dt>
<dd>&nbsp;</dd>
+<dt><span class="member-name-link"><a href="musichub/util/Policy.html#showTerm()">showTerm()</a></span> - Static method in class musichub.util.<a href="musichub/util/Policy.html" title="class in musichub.util">Policy</a></dt>
+<dd>
+<div class="block">Method prompting the whole policy agreement process</div>
+</dd>
<dt><a href="musichub/business/Song.html" title="class in musichub.business"><span class="type-name-link">Song</span></a> - Class in <a href="musichub/business/package-summary.html">musichub.business</a></dt>
<dd>&nbsp;</dd>
<dt><span class="member-name-link"><a href="musichub/business/Song.html#%3Cinit%3E(java.lang.String,java.lang.String,int,java.lang.String,java.lang.String)">Song(String, String, int, String, String)</a></span> - Constructor for class musichub.business.<a href="musichub/business/Song.html" title="class in musichub.business">Song</a></dt>
diff --git a/target/site/apidocs/index.html b/target/site/apidocs/index.html
index e4f188e..4b86103 100644
--- a/target/site/apidocs/index.html
+++ b/target/site/apidocs/index.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Overview (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="package index">
<meta name="generator" content="javadoc/PackageIndexWriter">
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
diff --git a/target/site/apidocs/member-search-index.js b/target/site/apidocs/member-search-index.js
index f583be9..3f8b8cd 100644
--- a/target/site/apidocs/member-search-index.js
+++ b/target/site/apidocs/member-search-index.js
@@ -1 +1 @@
-memberSearchIndex = [{"p":"musichub.business","c":"MusicHub","l":"addAlbum(Album)","u":"addAlbum(musichub.business.Album)"},{"p":"musichub.business","c":"MusicHub","l":"addElement(AudioElement)","u":"addElement(musichub.business.AudioElement)"},{"p":"musichub.business","c":"PlayList","l":"addElement(UUID)","u":"addElement(java.util.UUID)"},{"p":"musichub.business","c":"MusicHub","l":"addElementToAlbum(String, String)","u":"addElementToAlbum(java.lang.String,java.lang.String)"},{"p":"musichub.business","c":"MusicHub","l":"addElementToPlayList(String, String)","u":"addElementToPlayList(java.lang.String,java.lang.String)"},{"p":"musichub.business","c":"MusicHub","l":"addPlaylist(PlayList)","u":"addPlaylist(musichub.business.PlayList)"},{"p":"musichub.business","c":"Album","l":"addSong(UUID)","u":"addSong(java.util.UUID)"},{"p":"musichub.business","c":"Album","l":"Album(Element)","u":"%3Cinit%3E(org.w3c.dom.Element)"},{"p":"musichub.business","c":"Album","l":"Album(String, String, int, String)","u":"%3Cinit%3E(java.lang.String,java.lang.String,int,java.lang.String)"},{"p":"musichub.business","c":"Album","l":"Album(String, String, int, String, String, ArrayList<UUID>)","u":"%3Cinit%3E(java.lang.String,java.lang.String,int,java.lang.String,java.lang.String,java.util.ArrayList)"},{"p":"musichub.business","c":"MusicHub","l":"ALBUMS_FILE_PATH"},{"p":"musichub.business","c":"MusicHub","l":"albums()"},{"p":"musichub.business","c":"AudioElement","l":"artist"},{"p":"musichub.business","c":"AudioBook","l":"AudioBook(Element)","u":"%3Cinit%3E(org.w3c.dom.Element)"},{"p":"musichub.business","c":"AudioBook","l":"AudioBook(String, String, int, String, String, String)","u":"%3Cinit%3E(java.lang.String,java.lang.String,int,java.lang.String,java.lang.String,java.lang.String)"},{"p":"musichub.business","c":"AudioBook","l":"AudioBook(String, String, int, String, String, String, String)","u":"%3Cinit%3E(java.lang.String,java.lang.String,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"},{"p":"musichub.business","c":"AudioElement","l":"AudioElement(Element)","u":"%3Cinit%3E(org.w3c.dom.Element)"},{"p":"musichub.business","c":"AudioElement","l":"AudioElement(String, String, int, String)","u":"%3Cinit%3E(java.lang.String,java.lang.String,int,java.lang.String)"},{"p":"musichub.business","c":"AudioElement","l":"AudioElement(String, String, int, String, String)","u":"%3Cinit%3E(java.lang.String,java.lang.String,int,java.lang.String,java.lang.String)"},{"p":"musichub.business","c":"Genre","l":"CLASSIC"},{"p":"musichub.business","c":"AudioElement","l":"content"},{"p":"musichub.util","c":"XMLHandler","l":"createXMLDocument()"},{"p":"musichub.business","c":"Album","l":"createXMLElement(Document, Element)","u":"createXMLElement(org.w3c.dom.Document,org.w3c.dom.Element)"},{"p":"musichub.business","c":"AudioBook","l":"createXMLElement(Document, Element)","u":"createXMLElement(org.w3c.dom.Document,org.w3c.dom.Element)"},{"p":"musichub.business","c":"AudioElement","l":"createXMLElement(Document, Element)","u":"createXMLElement(org.w3c.dom.Document,org.w3c.dom.Element)"},{"p":"musichub.business","c":"PlayList","l":"createXMLElement(Document, Element)","u":"createXMLElement(org.w3c.dom.Document,org.w3c.dom.Element)"},{"p":"musichub.business","c":"Song","l":"createXMLElement(Document, Element)","u":"createXMLElement(org.w3c.dom.Document,org.w3c.dom.Element)"},{"p":"musichub.util","c":"XMLHandler","l":"createXMLFile(Document, String)","u":"createXMLFile(org.w3c.dom.Document,java.lang.String)"},{"p":"musichub.business","c":"MusicHub","l":"deletePlayList(String)","u":"deletePlayList(java.lang.String)"},{"p":"musichub.business","c":"MusicHub","l":"DIR"},{"p":"musichub.business","c":"Category","l":"DOCUMENTARY"},{"p":"musichub.business","c":"MusicHub","l":"ELEMENTS_FILE_PATH"},{"p":"musichub.business","c":"MusicHub","l":"elements()"},{"p":"musichub.business","c":"Language","l":"ENGLISH"},{"p":"musichub.business","c":"Language","l":"FRENCH"},{"p":"musichub.business","c":"Language","l":"GERMAN"},{"p":"musichub.business","c":"MusicHub","l":"getAlbumSongs(String)","u":"getAlbumSongs(java.lang.String)"},{"p":"musichub.business","c":"MusicHub","l":"getAlbumSongsSortedByGenre(String)","u":"getAlbumSongsSortedByGenre(java.lang.String)"},{"p":"musichub.business","c":"MusicHub","l":"getAlbumsTitlesSortedByDate()"},{"p":"musichub.business","c":"AudioElement","l":"getArtist()"},{"p":"musichub.business","c":"MusicHub","l":"getAudiobooksTitlesSortedByAuthor()"},{"p":"musichub.business","c":"MusicHub","l":"getAudioElement(List<AudioElement>, String)","u":"getAudioElement(java.util.List,java.lang.String)"},{"p":"musichub.business","c":"AudioBook","l":"getCategory()"},{"p":"musichub.business","c":"Category","l":"getCategory()"},{"p":"musichub.business","c":"Album","l":"getDate()"},{"p":"musichub.business","c":"PlayList","l":"getElements()"},{"p":"musichub.business","c":"Genre","l":"getGenre()"},{"p":"musichub.business","c":"Song","l":"getGenre()"},{"p":"musichub.business","c":"AudioBook","l":"getLanguage()"},{"p":"musichub.business","c":"Language","l":"getLanguage()"},{"p":"musichub.business","c":"Album","l":"getSongs()"},{"p":"musichub.business","c":"Album","l":"getSongsRandomly()"},{"p":"musichub.business","c":"Album","l":"getTitle()"},{"p":"musichub.business","c":"AudioElement","l":"getTitle()"},{"p":"musichub.business","c":"PlayList","l":"getTitle()"},{"p":"musichub.business","c":"AudioElement","l":"getUUID()"},{"p":"musichub.business","c":"Genre","l":"HIPHOP"},{"p":"musichub.util","c":"PathValidation","l":"isPathValid(String)","u":"isPathValid(java.lang.String)"},{"p":"musichub.business","c":"Language","l":"ITALIAN"},{"p":"musichub.business","c":"Genre","l":"JAZZ"},{"p":"musichub.business","c":"AudioElement","l":"lengthInSeconds"},{"p":"musichub.util","c":"LogHandler","l":"LogHandler()","u":"%3Cinit%3E()"},{"p":"musichub.main","c":"Main","l":"Main()","u":"%3Cinit%3E()"},{"p":"musichub.main","c":"Main","l":"main(String[])","u":"main(java.lang.String[])"},{"p":"musichub.business","c":"AudioElement","l":"manageAudioElement()"},{"p":"musichub.business","c":"MusicHub","l":"MusicHub()","u":"%3Cinit%3E()"},{"p":"musichub.business","c":"NoAlbumFoundException","l":"NoAlbumFoundException(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"musichub.business","c":"NoElementFoundException","l":"NoElementFoundException(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"musichub.business","c":"NoPlayListFoundException","l":"NoPlayListFoundException(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"musichub.business","c":"Category","l":"NOVEL"},{"p":"musichub.util","c":"XMLHandler","l":"parseXMLFile(String)","u":"parseXMLFile(java.lang.String)"},{"p":"musichub.util","c":"PathValidation","l":"PathValidation()","u":"%3Cinit%3E()"},{"p":"musichub.business","c":"PlayList","l":"PlayList(Element)","u":"%3Cinit%3E(org.w3c.dom.Element)"},{"p":"musichub.business","c":"PlayList","l":"PlayList(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"musichub.business","c":"PlayList","l":"PlayList(String, String, ArrayList<UUID>)","u":"%3Cinit%3E(java.lang.String,java.lang.String,java.util.ArrayList)"},{"p":"musichub.business","c":"MusicHub","l":"PLAYLISTS_FILE_PATH"},{"p":"musichub.business","c":"MusicHub","l":"playlists()"},{"p":"musichub.business","c":"Genre","l":"POP"},{"p":"musichub.business","c":"Genre","l":"RAP"},{"p":"musichub.util","c":"LogHandler","l":"read()"},{"p":"musichub.business","c":"Genre","l":"ROCK"},{"p":"musichub.business","c":"MusicHub","l":"saveAlbums()"},{"p":"musichub.business","c":"MusicHub","l":"saveElements()"},{"p":"musichub.business","c":"MusicHub","l":"savePlayLists()"},{"p":"musichub.business","c":"AudioBook","l":"setCategory(String)","u":"setCategory(java.lang.String)"},{"p":"musichub.business","c":"Song","l":"setGenre(String)","u":"setGenre(java.lang.String)"},{"p":"musichub.business","c":"AudioBook","l":"setLanguage(String)","u":"setLanguage(java.lang.String)"},{"p":"musichub.business","c":"Song","l":"Song(Element)","u":"%3Cinit%3E(org.w3c.dom.Element)"},{"p":"musichub.business","c":"Song","l":"Song(String, String, int, String, String)","u":"%3Cinit%3E(java.lang.String,java.lang.String,int,java.lang.String,java.lang.String)"},{"p":"musichub.business","c":"Song","l":"Song(String, String, int, String, String, String)","u":"%3Cinit%3E(java.lang.String,java.lang.String,int,java.lang.String,java.lang.String,java.lang.String)"},{"p":"musichub.business","c":"Language","l":"SPANISH"},{"p":"musichub.business","c":"Category","l":"SPEECH"},{"p":"musichub.business","c":"Category","l":"THEATER"},{"p":"musichub.business","c":"AudioElement","l":"title"},{"p":"musichub.business","c":"AudioBook","l":"toString()"},{"p":"musichub.business","c":"AudioElement","l":"toString()"},{"p":"musichub.business","c":"Song","l":"toString()"},{"p":"musichub.business","c":"AudioElement","l":"uuid"},{"p":"musichub.business","c":"Category","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"musichub.business","c":"Genre","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"musichub.business","c":"Language","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"musichub.business","c":"Category","l":"values()"},{"p":"musichub.business","c":"Genre","l":"values()"},{"p":"musichub.business","c":"Language","l":"values()"},{"p":"musichub.util","c":"LogHandler","l":"write(String, String)","u":"write(java.lang.String,java.lang.String)"},{"p":"musichub.util","c":"XMLHandler","l":"XMLHandler()","u":"%3Cinit%3E()"},{"p":"musichub.business","c":"Category","l":"YOUTH"}];updateSearchResults(); \ No newline at end of file
+memberSearchIndex = [{"p":"musichub.business","c":"MusicHub","l":"addAlbum(Album)","u":"addAlbum(musichub.business.Album)"},{"p":"musichub.business","c":"MusicHub","l":"addElement(AudioElement)","u":"addElement(musichub.business.AudioElement)"},{"p":"musichub.business","c":"PlayList","l":"addElement(UUID)","u":"addElement(java.util.UUID)"},{"p":"musichub.business","c":"MusicHub","l":"addElementToAlbum(String, String)","u":"addElementToAlbum(java.lang.String,java.lang.String)"},{"p":"musichub.business","c":"MusicHub","l":"addElementToPlayList(String, String)","u":"addElementToPlayList(java.lang.String,java.lang.String)"},{"p":"musichub.business","c":"MusicHub","l":"addPlaylist(PlayList)","u":"addPlaylist(musichub.business.PlayList)"},{"p":"musichub.business","c":"Album","l":"addSong(UUID)","u":"addSong(java.util.UUID)"},{"p":"musichub.business","c":"Album","l":"Album(Element)","u":"%3Cinit%3E(org.w3c.dom.Element)"},{"p":"musichub.business","c":"Album","l":"Album(String, String, int, String)","u":"%3Cinit%3E(java.lang.String,java.lang.String,int,java.lang.String)"},{"p":"musichub.business","c":"Album","l":"Album(String, String, int, String, String, ArrayList<UUID>)","u":"%3Cinit%3E(java.lang.String,java.lang.String,int,java.lang.String,java.lang.String,java.util.ArrayList)"},{"p":"musichub.business","c":"MusicHub","l":"ALBUMS_FILE_PATH"},{"p":"musichub.business","c":"MusicHub","l":"albums()"},{"p":"musichub.business","c":"AudioElement","l":"artist"},{"p":"musichub.business","c":"AudioBook","l":"AudioBook(Element)","u":"%3Cinit%3E(org.w3c.dom.Element)"},{"p":"musichub.business","c":"AudioBook","l":"AudioBook(String, String, int, String, String, String)","u":"%3Cinit%3E(java.lang.String,java.lang.String,int,java.lang.String,java.lang.String,java.lang.String)"},{"p":"musichub.business","c":"AudioBook","l":"AudioBook(String, String, int, String, String, String, String)","u":"%3Cinit%3E(java.lang.String,java.lang.String,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String)"},{"p":"musichub.business","c":"AudioElement","l":"AudioElement(Element)","u":"%3Cinit%3E(org.w3c.dom.Element)"},{"p":"musichub.business","c":"AudioElement","l":"AudioElement(String, String, int, String)","u":"%3Cinit%3E(java.lang.String,java.lang.String,int,java.lang.String)"},{"p":"musichub.business","c":"AudioElement","l":"AudioElement(String, String, int, String, String)","u":"%3Cinit%3E(java.lang.String,java.lang.String,int,java.lang.String,java.lang.String)"},{"p":"musichub.business","c":"Genre","l":"CLASSIC"},{"p":"musichub.business","c":"AudioElement","l":"content"},{"p":"musichub.util","c":"XMLHandler","l":"createXMLDocument()"},{"p":"musichub.business","c":"Album","l":"createXMLElement(Document, Element)","u":"createXMLElement(org.w3c.dom.Document,org.w3c.dom.Element)"},{"p":"musichub.business","c":"AudioBook","l":"createXMLElement(Document, Element)","u":"createXMLElement(org.w3c.dom.Document,org.w3c.dom.Element)"},{"p":"musichub.business","c":"AudioElement","l":"createXMLElement(Document, Element)","u":"createXMLElement(org.w3c.dom.Document,org.w3c.dom.Element)"},{"p":"musichub.business","c":"PlayList","l":"createXMLElement(Document, Element)","u":"createXMLElement(org.w3c.dom.Document,org.w3c.dom.Element)"},{"p":"musichub.business","c":"Song","l":"createXMLElement(Document, Element)","u":"createXMLElement(org.w3c.dom.Document,org.w3c.dom.Element)"},{"p":"musichub.util","c":"XMLHandler","l":"createXMLFile(Document, String)","u":"createXMLFile(org.w3c.dom.Document,java.lang.String)"},{"p":"musichub.business","c":"MusicHub","l":"deletePlayList(String)","u":"deletePlayList(java.lang.String)"},{"p":"musichub.business","c":"MusicHub","l":"DIR"},{"p":"musichub.business","c":"Category","l":"DOCUMENTARY"},{"p":"musichub.business","c":"MusicHub","l":"ELEMENTS_FILE_PATH"},{"p":"musichub.business","c":"MusicHub","l":"elements()"},{"p":"musichub.business","c":"Language","l":"ENGLISH"},{"p":"musichub.business","c":"Language","l":"FRENCH"},{"p":"musichub.business","c":"Language","l":"GERMAN"},{"p":"musichub.business","c":"MusicHub","l":"getAlbumSongs(String)","u":"getAlbumSongs(java.lang.String)"},{"p":"musichub.business","c":"MusicHub","l":"getAlbumSongsSortedByGenre(String)","u":"getAlbumSongsSortedByGenre(java.lang.String)"},{"p":"musichub.business","c":"MusicHub","l":"getAlbumsTitlesSortedByDate()"},{"p":"musichub.business","c":"AudioElement","l":"getArtist()"},{"p":"musichub.business","c":"MusicHub","l":"getAudiobooksTitlesSortedByAuthor()"},{"p":"musichub.business","c":"MusicHub","l":"getAudioElement(List<AudioElement>, String)","u":"getAudioElement(java.util.List,java.lang.String)"},{"p":"musichub.business","c":"AudioBook","l":"getCategory()"},{"p":"musichub.business","c":"Category","l":"getCategory()"},{"p":"musichub.business","c":"Album","l":"getDate()"},{"p":"musichub.business","c":"PlayList","l":"getElements()"},{"p":"musichub.business","c":"Genre","l":"getGenre()"},{"p":"musichub.business","c":"Song","l":"getGenre()"},{"p":"musichub.business","c":"AudioBook","l":"getLanguage()"},{"p":"musichub.business","c":"Language","l":"getLanguage()"},{"p":"musichub.business","c":"MusicHub","l":"getPlayListSongs(String)","u":"getPlayListSongs(java.lang.String)"},{"p":"musichub.business","c":"MusicHub","l":"getPlayListsTitles()"},{"p":"musichub.business","c":"Album","l":"getSongs()"},{"p":"musichub.business","c":"Album","l":"getSongsRandomly()"},{"p":"musichub.business","c":"Album","l":"getTitle()"},{"p":"musichub.business","c":"AudioElement","l":"getTitle()"},{"p":"musichub.business","c":"PlayList","l":"getTitle()"},{"p":"musichub.business","c":"AudioElement","l":"getUUID()"},{"p":"musichub.business","c":"Genre","l":"HIPHOP"},{"p":"musichub.util","c":"PathValidation","l":"isPathValid(String)","u":"isPathValid(java.lang.String)"},{"p":"musichub.business","c":"Language","l":"ITALIAN"},{"p":"musichub.business","c":"Genre","l":"JAZZ"},{"p":"musichub.business","c":"AudioElement","l":"lengthInSeconds"},{"p":"musichub.util","c":"LogHandler","l":"LogHandler()","u":"%3Cinit%3E()"},{"p":"musichub.main","c":"Main","l":"Main()","u":"%3Cinit%3E()"},{"p":"musichub.main","c":"Main","l":"main(String[])","u":"main(java.lang.String[])"},{"p":"musichub.business","c":"AudioElement","l":"manageAudioElement()"},{"p":"musichub.business","c":"MusicHub","l":"MusicHub()","u":"%3Cinit%3E()"},{"p":"musichub.business","c":"NoAlbumFoundException","l":"NoAlbumFoundException(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"musichub.business","c":"NoElementFoundException","l":"NoElementFoundException(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"musichub.business","c":"NoPlayListFoundException","l":"NoPlayListFoundException(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"musichub.business","c":"Category","l":"NOVEL"},{"p":"musichub.util","c":"XMLHandler","l":"parseXMLFile(String)","u":"parseXMLFile(java.lang.String)"},{"p":"musichub.util","c":"PathValidation","l":"PathValidation()","u":"%3Cinit%3E()"},{"p":"musichub.business","c":"PlayList","l":"PlayList(Element)","u":"%3Cinit%3E(org.w3c.dom.Element)"},{"p":"musichub.business","c":"PlayList","l":"PlayList(String)","u":"%3Cinit%3E(java.lang.String)"},{"p":"musichub.business","c":"PlayList","l":"PlayList(String, String, ArrayList<UUID>)","u":"%3Cinit%3E(java.lang.String,java.lang.String,java.util.ArrayList)"},{"p":"musichub.business","c":"MusicHub","l":"PLAYLISTS_FILE_PATH"},{"p":"musichub.business","c":"MusicHub","l":"playlists()"},{"p":"musichub.util","c":"Policy","l":"Policy()","u":"%3Cinit%3E()"},{"p":"musichub.business","c":"Genre","l":"POP"},{"p":"musichub.business","c":"Genre","l":"RAP"},{"p":"musichub.util","c":"LogHandler","l":"read()"},{"p":"musichub.business","c":"Genre","l":"ROCK"},{"p":"musichub.business","c":"MusicHub","l":"saveAlbums()"},{"p":"musichub.business","c":"MusicHub","l":"saveElements()"},{"p":"musichub.business","c":"MusicHub","l":"savePlayLists()"},{"p":"musichub.business","c":"MusicHub","l":"searchAudioElement()"},{"p":"musichub.business","c":"AudioBook","l":"setCategory(String)","u":"setCategory(java.lang.String)"},{"p":"musichub.business","c":"Song","l":"setGenre(String)","u":"setGenre(java.lang.String)"},{"p":"musichub.business","c":"AudioBook","l":"setLanguage(String)","u":"setLanguage(java.lang.String)"},{"p":"musichub.util","c":"Policy","l":"showTerm()"},{"p":"musichub.business","c":"Song","l":"Song(Element)","u":"%3Cinit%3E(org.w3c.dom.Element)"},{"p":"musichub.business","c":"Song","l":"Song(String, String, int, String, String)","u":"%3Cinit%3E(java.lang.String,java.lang.String,int,java.lang.String,java.lang.String)"},{"p":"musichub.business","c":"Song","l":"Song(String, String, int, String, String, String)","u":"%3Cinit%3E(java.lang.String,java.lang.String,int,java.lang.String,java.lang.String,java.lang.String)"},{"p":"musichub.business","c":"Language","l":"SPANISH"},{"p":"musichub.business","c":"Category","l":"SPEECH"},{"p":"musichub.business","c":"Category","l":"THEATER"},{"p":"musichub.business","c":"AudioElement","l":"title"},{"p":"musichub.business","c":"AudioBook","l":"toString()"},{"p":"musichub.business","c":"AudioElement","l":"toString()"},{"p":"musichub.business","c":"Song","l":"toString()"},{"p":"musichub.business","c":"AudioElement","l":"uuid"},{"p":"musichub.business","c":"Category","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"musichub.business","c":"Genre","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"musichub.business","c":"Language","l":"valueOf(String)","u":"valueOf(java.lang.String)"},{"p":"musichub.business","c":"Category","l":"values()"},{"p":"musichub.business","c":"Genre","l":"values()"},{"p":"musichub.business","c":"Language","l":"values()"},{"p":"musichub.util","c":"LogHandler","l":"write(String, String)","u":"write(java.lang.String,java.lang.String)"},{"p":"musichub.util","c":"XMLHandler","l":"XMLHandler()","u":"%3Cinit%3E()"},{"p":"musichub.business","c":"Category","l":"YOUTH"}];updateSearchResults(); \ No newline at end of file
diff --git a/target/site/apidocs/musichub/business/Album.html b/target/site/apidocs/musichub/business/Album.html
index 1218e4a..05e3672 100644
--- a/target/site/apidocs/musichub/business/Album.html
+++ b/target/site/apidocs/musichub/business/Album.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Album (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.business, class: Album">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/AudioBook.html b/target/site/apidocs/musichub/business/AudioBook.html
index 2947784..90aca57 100644
--- a/target/site/apidocs/musichub/business/AudioBook.html
+++ b/target/site/apidocs/musichub/business/AudioBook.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>AudioBook (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.business, class: AudioBook">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/AudioElement.html b/target/site/apidocs/musichub/business/AudioElement.html
index 952130b..fc48e95 100644
--- a/target/site/apidocs/musichub/business/AudioElement.html
+++ b/target/site/apidocs/musichub/business/AudioElement.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>AudioElement (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.business, class: AudioElement">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/Category.html b/target/site/apidocs/musichub/business/Category.html
index efdb113..81893ae 100644
--- a/target/site/apidocs/musichub/business/Category.html
+++ b/target/site/apidocs/musichub/business/Category.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Category (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.business, enum: Category">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/Genre.html b/target/site/apidocs/musichub/business/Genre.html
index fb61007..47e52f0 100644
--- a/target/site/apidocs/musichub/business/Genre.html
+++ b/target/site/apidocs/musichub/business/Genre.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Genre (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.business, enum: Genre">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/Language.html b/target/site/apidocs/musichub/business/Language.html
index de6d02c..9bf8df2 100644
--- a/target/site/apidocs/musichub/business/Language.html
+++ b/target/site/apidocs/musichub/business/Language.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Language (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.business, enum: Language">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/MusicHub.html b/target/site/apidocs/musichub/business/MusicHub.html
index c9aa14b..b8a7d99 100644
--- a/target/site/apidocs/musichub/business/MusicHub.html
+++ b/target/site/apidocs/musichub/business/MusicHub.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>MusicHub (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.business, class: MusicHub">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
@@ -175,6 +175,16 @@ loadScripts(document, 'script');</script>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getAudioElement(java.util.List,java.lang.String)">getAudioElement</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="AudioElement.html" title="class in musichub.business">AudioElement</a>&gt;&nbsp;audios,
<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;elementTitle)</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
+<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="AudioElement.html" title="class in musichub.business">AudioElement</a>&gt;</code></div>
+<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getPlayListSongs(java.lang.String)">getPlayListSongs</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;playListTitle)</code></div>
+<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
+<div class="block">Method checking the songs contained in a chosen playlist and returning them if found.</div>
+</div>
+<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
+<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#getPlayListsTitles()">getPlayListsTitles</a></span>()</code></div>
+<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">
+<div class="block">Method getting a list of playlists</div>
+</div>
<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/Iterator.html" title="class or interface in java.util" class="external-link">Iterator</a>&lt;<a href="PlayList.html" title="class in musichub.business">PlayList</a>&gt;</code></div>
<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#playlists()">playlists</a></span>()</code></div>
<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
@@ -187,6 +197,9 @@ loadScripts(document, 'script');</script>
<div class="col-first even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>void</code></div>
<div class="col-second even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#savePlayLists()">savePlayLists</a></span>()</code></div>
<div class="col-last even-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
+<div class="col-first odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code>void</code></div>
+<div class="col-second odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#searchAudioElement()">searchAudioElement</a></span>()</code></div>
+<div class="col-last odd-row-color method-summary-table-tab2 method-summary-table-tab4 method-summary-table">&nbsp;</div>
</div>
</div>
</div>
@@ -395,6 +408,52 @@ loadScripts(document, 'script');</script>
</dl>
</section>
</li>
+<li>
+<section class="detail" id="searchAudioElement()">
+<h3>searchAudioElement</h3>
+<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">searchAudioElement</span>()
+ throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.desktop/javax/sound/sampled/UnsupportedAudioFileException.html" title="class or interface in javax.sound.sampled" class="external-link">UnsupportedAudioFileException</a>,
+<a href="NoAlbumFoundException.html" title="class in musichub.business">NoAlbumFoundException</a>,
+<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.desktop/javax/sound/sampled/LineUnavailableException.html" title="class or interface in javax.sound.sampled" class="external-link">LineUnavailableException</a>,
+<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a>,
+<a href="NoElementFoundException.html" title="class in musichub.business">NoElementFoundException</a></span></div>
+<dl class="notes">
+<dt>Throws:</dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.desktop/javax/sound/sampled/UnsupportedAudioFileException.html" title="class or interface in javax.sound.sampled" class="external-link">UnsupportedAudioFileException</a></code></dd>
+<dd><code><a href="NoAlbumFoundException.html" title="class in musichub.business">NoAlbumFoundException</a></code></dd>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.desktop/javax/sound/sampled/LineUnavailableException.html" title="class or interface in javax.sound.sampled" class="external-link">LineUnavailableException</a></code></dd>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></code></dd>
+<dd><code><a href="NoElementFoundException.html" title="class in musichub.business">NoElementFoundException</a></code></dd>
+</dl>
+</section>
+</li>
+<li>
+<section class="detail" id="getPlayListsTitles()">
+<h3>getPlayListsTitles</h3>
+<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">getPlayListsTitles</span>()</div>
+<div class="block">Method getting a list of playlists</div>
+<dl class="notes">
+<dt>Returns:</dt>
+<dd>a list of playlist titles</dd>
+</dl>
+</section>
+</li>
+<li>
+<section class="detail" id="getPlayListSongs(java.lang.String)">
+<h3>getPlayListSongs</h3>
+<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="AudioElement.html" title="class in musichub.business">AudioElement</a>&gt;</span>&nbsp;<span class="element-name">getPlayListSongs</span>&#8203;<span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;playListTitle)</span>
+ throws <span class="exceptions"><a href="NoPlayListFoundException.html" title="class in musichub.business">NoPlayListFoundException</a></span></div>
+<div class="block">Method checking the songs contained in a chosen playlist and returning them if found.</div>
+<dl class="notes">
+<dt>Parameters:</dt>
+<dd><code>playListTitle</code> - the title of a (chosen) playlist</dd>
+<dt>Returns:</dt>
+<dd>a list of songs from a playlist</dd>
+<dt>Throws:</dt>
+<dd><code><a href="NoPlayListFoundException.html" title="class in musichub.business">NoPlayListFoundException</a></code> - if the chosen playlist doesn't exist</dd>
+</dl>
+</section>
+</li>
</ul>
</section>
</li>
diff --git a/target/site/apidocs/musichub/business/NoAlbumFoundException.html b/target/site/apidocs/musichub/business/NoAlbumFoundException.html
index 8cd2100..074411d 100644
--- a/target/site/apidocs/musichub/business/NoAlbumFoundException.html
+++ b/target/site/apidocs/musichub/business/NoAlbumFoundException.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>NoAlbumFoundException (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.business, class: NoAlbumFoundException">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/NoElementFoundException.html b/target/site/apidocs/musichub/business/NoElementFoundException.html
index 41fa7a8..59f09c8 100644
--- a/target/site/apidocs/musichub/business/NoElementFoundException.html
+++ b/target/site/apidocs/musichub/business/NoElementFoundException.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>NoElementFoundException (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.business, class: NoElementFoundException">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/NoPlayListFoundException.html b/target/site/apidocs/musichub/business/NoPlayListFoundException.html
index 65ad902..c5cadd8 100644
--- a/target/site/apidocs/musichub/business/NoPlayListFoundException.html
+++ b/target/site/apidocs/musichub/business/NoPlayListFoundException.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>NoPlayListFoundException (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.business, class: NoPlayListFoundException">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/PlayList.html b/target/site/apidocs/musichub/business/PlayList.html
index a0bd02b..e61a1f5 100644
--- a/target/site/apidocs/musichub/business/PlayList.html
+++ b/target/site/apidocs/musichub/business/PlayList.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>PlayList (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.business, class: PlayList">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/Song.html b/target/site/apidocs/musichub/business/Song.html
index 2550898..25364f2 100644
--- a/target/site/apidocs/musichub/business/Song.html
+++ b/target/site/apidocs/musichub/business/Song.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Song (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.business, class: Song">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/class-use/Album.html b/target/site/apidocs/musichub/business/class-use/Album.html
index 846ce1e..04fb824 100644
--- a/target/site/apidocs/musichub/business/class-use/Album.html
+++ b/target/site/apidocs/musichub/business/class-use/Album.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Class musichub.business.Album (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.business, class: Album">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/class-use/AudioBook.html b/target/site/apidocs/musichub/business/class-use/AudioBook.html
index ac2d207..4563de1 100644
--- a/target/site/apidocs/musichub/business/class-use/AudioBook.html
+++ b/target/site/apidocs/musichub/business/class-use/AudioBook.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Class musichub.business.AudioBook (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.business, class: AudioBook">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/class-use/AudioElement.html b/target/site/apidocs/musichub/business/class-use/AudioElement.html
index 6721959..a522d81 100644
--- a/target/site/apidocs/musichub/business/class-use/AudioElement.html
+++ b/target/site/apidocs/musichub/business/class-use/AudioElement.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Class musichub.business.AudioElement (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.business, class: AudioElement">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
@@ -89,6 +89,11 @@ loadScripts(document, 'script');</script>
<div class="col-first odd-row-color"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="../AudioElement.html" title="class in musichub.business">AudioElement</a>&gt;</code></div>
<div class="col-second odd-row-color"><span class="type-name-label">MusicHub.</span><code><span class="member-name-link"><a href="../MusicHub.html#getAlbumSongs(java.lang.String)">getAlbumSongs</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;albumTitle)</code></div>
<div class="col-last odd-row-color">&nbsp;</div>
+<div class="col-first even-row-color"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="../AudioElement.html" title="class in musichub.business">AudioElement</a>&gt;</code></div>
+<div class="col-second even-row-color"><span class="type-name-label">MusicHub.</span><code><span class="member-name-link"><a href="../MusicHub.html#getPlayListSongs(java.lang.String)">getPlayListSongs</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;playListTitle)</code></div>
+<div class="col-last even-row-color">
+<div class="block">Method checking the songs contained in a chosen playlist and returning them if found.</div>
+</div>
</div>
<div class="caption"><span>Methods in <a href="../package-summary.html">musichub.business</a> with parameters of type <a href="../AudioElement.html" title="class in musichub.business">AudioElement</a></span></div>
<div class="summary-table three-column-summary">
diff --git a/target/site/apidocs/musichub/business/class-use/Category.html b/target/site/apidocs/musichub/business/class-use/Category.html
index bf72525..a505a01 100644
--- a/target/site/apidocs/musichub/business/class-use/Category.html
+++ b/target/site/apidocs/musichub/business/class-use/Category.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Enum Class musichub.business.Category (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.business, enum: Category">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/class-use/Genre.html b/target/site/apidocs/musichub/business/class-use/Genre.html
index 45e4285..3b28e4b 100644
--- a/target/site/apidocs/musichub/business/class-use/Genre.html
+++ b/target/site/apidocs/musichub/business/class-use/Genre.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Enum Class musichub.business.Genre (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.business, enum: Genre">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/class-use/Language.html b/target/site/apidocs/musichub/business/class-use/Language.html
index 2641403..8eef0cd 100644
--- a/target/site/apidocs/musichub/business/class-use/Language.html
+++ b/target/site/apidocs/musichub/business/class-use/Language.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Enum Class musichub.business.Language (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.business, enum: Language">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/class-use/MusicHub.html b/target/site/apidocs/musichub/business/class-use/MusicHub.html
index 6001814..66f825c 100644
--- a/target/site/apidocs/musichub/business/class-use/MusicHub.html
+++ b/target/site/apidocs/musichub/business/class-use/MusicHub.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Class musichub.business.MusicHub (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.business, class: MusicHub">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/class-use/NoAlbumFoundException.html b/target/site/apidocs/musichub/business/class-use/NoAlbumFoundException.html
index ec4794b..4afe620 100644
--- a/target/site/apidocs/musichub/business/class-use/NoAlbumFoundException.html
+++ b/target/site/apidocs/musichub/business/class-use/NoAlbumFoundException.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Class musichub.business.NoAlbumFoundException (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.business, class: NoAlbumFoundException">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
@@ -60,6 +60,8 @@ loadScripts(document, 'script');</script>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><a href="#musichub.business">musichub.business</a></div>
<div class="col-last even-row-color">&nbsp;</div>
+<div class="col-first odd-row-color"><a href="#musichub.main">musichub.main</a></div>
+<div class="col-last odd-row-color">&nbsp;</div>
</div>
<section class="class-uses">
<ul class="block-list">
@@ -85,6 +87,23 @@ loadScripts(document, 'script');</script>
<div class="col-second odd-row-color"><span class="type-name-label">MusicHub.</span><code><span class="member-name-link"><a href="../MusicHub.html#getAudioElement(java.util.List,java.lang.String)">getAudioElement</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="../AudioElement.html" title="class in musichub.business">AudioElement</a>&gt;&nbsp;audios,
<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;elementTitle)</code></div>
<div class="col-last odd-row-color">&nbsp;</div>
+<div class="col-first even-row-color"><code>void</code></div>
+<div class="col-second even-row-color"><span class="type-name-label">MusicHub.</span><code><span class="member-name-link"><a href="../MusicHub.html#searchAudioElement()">searchAudioElement</a></span>()</code></div>
+<div class="col-last even-row-color">&nbsp;</div>
+</div>
+</section>
+</li>
+<li>
+<section class="detail" id="musichub.main">
+<h2>Uses of <a href="../NoAlbumFoundException.html" title="class in musichub.business">NoAlbumFoundException</a> in <a href="../../main/package-summary.html">musichub.main</a></h2>
+<div class="caption"><span>Methods in <a href="../../main/package-summary.html">musichub.main</a> that throw <a href="../NoAlbumFoundException.html" title="class in musichub.business">NoAlbumFoundException</a></span></div>
+<div class="summary-table three-column-summary">
+<div class="table-header col-first">Modifier and Type</div>
+<div class="table-header col-second">Method</div>
+<div class="table-header col-last">Description</div>
+<div class="col-first even-row-color"><code>static void</code></div>
+<div class="col-second even-row-color"><span class="type-name-label">Main.</span><code><span class="member-name-link"><a href="../../main/Main.html#main(java.lang.String%5B%5D)">main</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[]&nbsp;args)</code></div>
+<div class="col-last even-row-color">&nbsp;</div>
</div>
</section>
</li>
diff --git a/target/site/apidocs/musichub/business/class-use/NoElementFoundException.html b/target/site/apidocs/musichub/business/class-use/NoElementFoundException.html
index 438ea7e..5a15a6e 100644
--- a/target/site/apidocs/musichub/business/class-use/NoElementFoundException.html
+++ b/target/site/apidocs/musichub/business/class-use/NoElementFoundException.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Class musichub.business.NoElementFoundException (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.business, class: NoElementFoundException">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
@@ -79,6 +79,9 @@ loadScripts(document, 'script');</script>
<div class="col-second odd-row-color"><span class="type-name-label">MusicHub.</span><code><span class="member-name-link"><a href="../MusicHub.html#addElementToPlayList(java.lang.String,java.lang.String)">addElementToPlayList</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;elementTitle,
<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;playListTitle)</code></div>
<div class="col-last odd-row-color">&nbsp;</div>
+<div class="col-first even-row-color"><code>void</code></div>
+<div class="col-second even-row-color"><span class="type-name-label">MusicHub.</span><code><span class="member-name-link"><a href="../MusicHub.html#searchAudioElement()">searchAudioElement</a></span>()</code></div>
+<div class="col-last even-row-color">&nbsp;</div>
</div>
</section>
</li>
diff --git a/target/site/apidocs/musichub/business/class-use/NoPlayListFoundException.html b/target/site/apidocs/musichub/business/class-use/NoPlayListFoundException.html
index fc2e2e3..074b203 100644
--- a/target/site/apidocs/musichub/business/class-use/NoPlayListFoundException.html
+++ b/target/site/apidocs/musichub/business/class-use/NoPlayListFoundException.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Class musichub.business.NoPlayListFoundException (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.business, class: NoPlayListFoundException">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
@@ -78,6 +78,11 @@ loadScripts(document, 'script');</script>
<div class="col-first odd-row-color"><code>void</code></div>
<div class="col-second odd-row-color"><span class="type-name-label">MusicHub.</span><code><span class="member-name-link"><a href="../MusicHub.html#deletePlayList(java.lang.String)">deletePlayList</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;playListTitle)</code></div>
<div class="col-last odd-row-color">&nbsp;</div>
+<div class="col-first even-row-color"><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="../AudioElement.html" title="class in musichub.business">AudioElement</a>&gt;</code></div>
+<div class="col-second even-row-color"><span class="type-name-label">MusicHub.</span><code><span class="member-name-link"><a href="../MusicHub.html#getPlayListSongs(java.lang.String)">getPlayListSongs</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;playListTitle)</code></div>
+<div class="col-last even-row-color">
+<div class="block">Method checking the songs contained in a chosen playlist and returning them if found.</div>
+</div>
</div>
</section>
</li>
diff --git a/target/site/apidocs/musichub/business/class-use/PlayList.html b/target/site/apidocs/musichub/business/class-use/PlayList.html
index bda55e0..d482eb3 100644
--- a/target/site/apidocs/musichub/business/class-use/PlayList.html
+++ b/target/site/apidocs/musichub/business/class-use/PlayList.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Class musichub.business.PlayList (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.business, class: PlayList">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/class-use/Song.html b/target/site/apidocs/musichub/business/class-use/Song.html
index 3325f6e..8989a96 100644
--- a/target/site/apidocs/musichub/business/class-use/Song.html
+++ b/target/site/apidocs/musichub/business/class-use/Song.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Class musichub.business.Song (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.business, class: Song">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/package-summary.html b/target/site/apidocs/musichub/business/package-summary.html
index 6091b4c..687fe85 100644
--- a/target/site/apidocs/musichub/business/package-summary.html
+++ b/target/site/apidocs/musichub/business/package-summary.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>musichub.business (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.business">
<meta name="generator" content="javadoc/PackageWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/package-tree.html b/target/site/apidocs/musichub/business/package-tree.html
index 043e924..0577411 100644
--- a/target/site/apidocs/musichub/business/package-tree.html
+++ b/target/site/apidocs/musichub/business/package-tree.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>musichub.business Class Hierarchy (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="tree: package: musichub.business">
<meta name="generator" content="javadoc/PackageTreeWriter">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/business/package-use.html b/target/site/apidocs/musichub/business/package-use.html
index 9e21dc4..fb82b92 100644
--- a/target/site/apidocs/musichub/business/package-use.html
+++ b/target/site/apidocs/musichub/business/package-use.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Package musichub.business (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.business">
<meta name="generator" content="javadoc/PackageUseWriter">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
@@ -60,6 +60,8 @@ loadScripts(document, 'script');</script>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><a href="#musichub.business">musichub.business</a></div>
<div class="col-last even-row-color">&nbsp;</div>
+<div class="col-first odd-row-color"><a href="#musichub.main">musichub.main</a></div>
+<div class="col-last odd-row-color">&nbsp;</div>
</div>
<section class="package-uses">
<ul class="block-list">
@@ -92,6 +94,17 @@ loadScripts(document, 'script');</script>
</div>
</section>
</li>
+<li>
+<section class="detail" id="musichub.main">
+<div class="caption"><span>Classes in <a href="package-summary.html">musichub.business</a> used by <a href="../main/package-summary.html">musichub.main</a></span></div>
+<div class="summary-table two-column-summary">
+<div class="table-header col-first">Class</div>
+<div class="table-header col-last">Description</div>
+<div class="col-first even-row-color"><a href="class-use/NoAlbumFoundException.html#musichub.main">NoAlbumFoundException</a></div>
+<div class="col-last even-row-color">&nbsp;</div>
+</div>
+</section>
+</li>
</ul>
</section>
</main>
diff --git a/target/site/apidocs/musichub/main/Main.html b/target/site/apidocs/musichub/main/Main.html
index 689df96..8e747c6 100644
--- a/target/site/apidocs/musichub/main/Main.html
+++ b/target/site/apidocs/musichub/main/Main.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Main (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.main, class: Main">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
@@ -149,12 +149,14 @@ loadScripts(document, 'script');</script>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">main</span>&#8203;<span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>[]&nbsp;args)</span>
throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.desktop/javax/sound/sampled/UnsupportedAudioFileException.html" title="class or interface in javax.sound.sampled" class="external-link">UnsupportedAudioFileException</a>,
<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a>,
-<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.desktop/javax/sound/sampled/LineUnavailableException.html" title="class or interface in javax.sound.sampled" class="external-link">LineUnavailableException</a></span></div>
+<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.desktop/javax/sound/sampled/LineUnavailableException.html" title="class or interface in javax.sound.sampled" class="external-link">LineUnavailableException</a>,
+<a href="../business/NoAlbumFoundException.html" title="class in musichub.business">NoAlbumFoundException</a></span></div>
<dl class="notes">
<dt>Throws:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.desktop/javax/sound/sampled/UnsupportedAudioFileException.html" title="class or interface in javax.sound.sampled" class="external-link">UnsupportedAudioFileException</a></code></dd>
<dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></code></dd>
<dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.desktop/javax/sound/sampled/LineUnavailableException.html" title="class or interface in javax.sound.sampled" class="external-link">LineUnavailableException</a></code></dd>
+<dd><code><a href="../business/NoAlbumFoundException.html" title="class in musichub.business">NoAlbumFoundException</a></code></dd>
</dl>
</section>
</li>
diff --git a/target/site/apidocs/musichub/main/class-use/Main.html b/target/site/apidocs/musichub/main/class-use/Main.html
index 3510a5a..135db94 100644
--- a/target/site/apidocs/musichub/main/class-use/Main.html
+++ b/target/site/apidocs/musichub/main/class-use/Main.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Class musichub.main.Main (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.main, class: Main">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/main/package-summary.html b/target/site/apidocs/musichub/main/package-summary.html
index 3173f29..3e7843a 100644
--- a/target/site/apidocs/musichub/main/package-summary.html
+++ b/target/site/apidocs/musichub/main/package-summary.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>musichub.main (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.main">
<meta name="generator" content="javadoc/PackageWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/main/package-tree.html b/target/site/apidocs/musichub/main/package-tree.html
index 28af7d3..b315db7 100644
--- a/target/site/apidocs/musichub/main/package-tree.html
+++ b/target/site/apidocs/musichub/main/package-tree.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>musichub.main Class Hierarchy (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="tree: package: musichub.main">
<meta name="generator" content="javadoc/PackageTreeWriter">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/main/package-use.html b/target/site/apidocs/musichub/main/package-use.html
index 91940dd..e258c4a 100644
--- a/target/site/apidocs/musichub/main/package-use.html
+++ b/target/site/apidocs/musichub/main/package-use.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Package musichub.main (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.main">
<meta name="generator" content="javadoc/PackageUseWriter">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/util/LogHandler.html b/target/site/apidocs/musichub/util/LogHandler.html
index ef83ebd..fce5e8d 100644
--- a/target/site/apidocs/musichub/util/LogHandler.html
+++ b/target/site/apidocs/musichub/util/LogHandler.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>LogHandler (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.util, class: LogHandler">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/util/PathValidation.html b/target/site/apidocs/musichub/util/PathValidation.html
index fefddad..06d60fe 100644
--- a/target/site/apidocs/musichub/util/PathValidation.html
+++ b/target/site/apidocs/musichub/util/PathValidation.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>PathValidation (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.util, class: PathValidation">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/util/Policy.html b/target/site/apidocs/musichub/util/Policy.html
new file mode 100644
index 0000000..4cb02cb
--- /dev/null
+++ b/target/site/apidocs/musichub/util/Policy.html
@@ -0,0 +1,183 @@
+<!DOCTYPE HTML>
+<!-- NewPage -->
+<html lang="fr">
+<head>
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
+<title>Policy (spoteezer 0.1.0 API)</title>
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta name="dc.created" content="2021-06-28">
+<meta name="description" content="declaration: package: musichub.util, class: Policy">
+<meta name="generator" content="javadoc/ClassWriterImpl">
+<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
+<link rel="stylesheet" type="text/css" href="../../script-dir/jquery-ui.min.css" title="Style">
+<link rel="stylesheet" type="text/css" href="../../jquery-ui.overrides.css" title="Style">
+<script type="text/javascript" src="../../script.js"></script>
+<script type="text/javascript" src="../../script-dir/jquery-3.5.1.min.js"></script>
+<script type="text/javascript" src="../../script-dir/jquery-ui.min.js"></script>
+</head>
+<body class="class-declaration-page">
+<script type="text/javascript">var evenRowColor = "even-row-color";
+var oddRowColor = "odd-row-color";
+var tableTab = "table-tab";
+var activeTableTab = "active-table-tab";
+var pathtoroot = "../../";
+loadScripts(document, 'script');</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<div class="flex-box">
+<header role="banner" class="flex-header">
+<nav role="navigation">
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="top-nav" id="navbar.top">
+<div class="skip-nav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<ul id="navbar.top.firstrow" class="nav-list" title="Navigation">
+<li><a href="../../index.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="nav-bar-cell1-rev">Class</li>
+<li><a href="class-use/Policy.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../index-all.html">Index</a></li>
+<li><a href="../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="sub-nav">
+<div>
+<ul class="sub-nav-list">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.summary">Method</a></li>
+</ul>
+<ul class="sub-nav-list">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method.detail">Method</a></li>
+</ul>
+</div>
+<div class="nav-list-search"><label for="search">SEARCH:</label>
+<input type="text" id="search" value="search" disabled="disabled">
+<input type="reset" id="reset" value="reset" disabled="disabled">
+</div>
+</div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<span class="skip-nav" id="skip.navbar.top">
+<!-- -->
+</span></nav>
+</header>
+<div class="flex-content">
+<main role="main">
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">musichub.util</a></div>
+<h1 title="Class Policy" class="title">Class Policy</h1>
+</div>
+<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
+<div class="inheritance">musichub.util.Policy</div>
+</div>
+<section class="description">
+<hr>
+<div class="type-signature"><span class="modifiers">public final class </span><span class="element-name type-name-label">Policy</span>
+<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></span></div>
+<div class="block">Class offering methods to prompt a policy agreement form to the user.</div>
+<dl class="notes">
+<dt>Version:</dt>
+<dd>1.0</dd>
+<dt>Author:</dt>
+<dd>Anthony BOULANT</dd>
+</dl>
+</section>
+<section class="summary">
+<ul class="summary-list">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<li>
+<section class="constructor-summary" id="constructor.summary">
+<h2>Constructor Summary</h2>
+<div class="caption"><span>Constructors</span></div>
+<div class="summary-table two-column-summary">
+<div class="table-header col-first">Constructor</div>
+<div class="table-header col-last">Description</div>
+<div class="col-constructor-name even-row-color"><code><span class="member-name-link"><a href="#%3Cinit%3E()">Policy</a></span>()</code></div>
+<div class="col-last even-row-color">
+<div class="block">Method that just throws an AssertionError if the class is called</div>
+</div>
+</div>
+</section>
+</li>
+<!-- ========== METHOD SUMMARY =========== -->
+<li>
+<section class="method-summary" id="method.summary">
+<h2>Method Summary</h2>
+<div id="method-summary-table">
+<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab1', 3)" class="table-tab">Static Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
+<div id="method-summary-table.tabpanel" role="tabpanel">
+<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
+<div class="table-header col-first">Modifier and Type</div>
+<div class="table-header col-second">Method</div>
+<div class="table-header col-last">Description</div>
+<div class="col-first even-row-color method-summary-table-tab1 method-summary-table-tab4 method-summary-table"><code>static void</code></div>
+<div class="col-second even-row-color method-summary-table-tab1 method-summary-table-tab4 method-summary-table"><code><span class="member-name-link"><a href="#showTerm()">showTerm</a></span>()</code></div>
+<div class="col-last even-row-color method-summary-table-tab1 method-summary-table-tab4 method-summary-table">
+<div class="block">Method prompting the whole policy agreement process</div>
+</div>
+</div>
+</div>
+</div>
+<div class="inherited-list">
+<h3 id="methods.inherited.from.class.java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
+<code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
+</section>
+</li>
+</ul>
+</section>
+<section class="details">
+<ul class="details-list">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<li>
+<section class="constructor-details" id="constructor.detail">
+<h2>Constructor Details</h2>
+<ul class="member-list">
+<li>
+<section class="detail" id="&lt;init&gt;()">
+<h3>Policy</h3>
+<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">Policy</span>()</div>
+<div class="block">Method that just throws an AssertionError if the class is called</div>
+<dl class="notes">
+<dt>Throws:</dt>
+<dd><code><a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/AssertionError.html" title="class or interface in java.lang" class="external-link">AssertionError</a></code> - you can't instantiate this class</dd>
+</dl>
+</section>
+</li>
+</ul>
+</section>
+</li>
+<!-- ============ METHOD DETAIL ========== -->
+<li>
+<section class="method-details" id="method.detail">
+<h2>Method Details</h2>
+<ul class="member-list">
+<li>
+<section class="detail" id="showTerm()">
+<h3>showTerm</h3>
+<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">showTerm</span>()</div>
+<div class="block">Method prompting the whole policy agreement process</div>
+</section>
+</li>
+</ul>
+</section>
+</li>
+</ul>
+</section>
+<!-- ========= END OF CLASS DATA ========= -->
+</main>
+<footer role="contentinfo">
+<hr>
+<p class="legal-copy"><small>Copyright &#169; 2021. All rights reserved.</small></p>
+</footer>
+</div>
+</div>
+</body>
+</html>
diff --git a/target/site/apidocs/musichub/util/XMLHandler.html b/target/site/apidocs/musichub/util/XMLHandler.html
index 7236da3..b2d5bac 100644
--- a/target/site/apidocs/musichub/util/XMLHandler.html
+++ b/target/site/apidocs/musichub/util/XMLHandler.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>XMLHandler (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.util, class: XMLHandler">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/util/class-use/LogHandler.html b/target/site/apidocs/musichub/util/class-use/LogHandler.html
index 990f0fd..506f390 100644
--- a/target/site/apidocs/musichub/util/class-use/LogHandler.html
+++ b/target/site/apidocs/musichub/util/class-use/LogHandler.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Class musichub.util.LogHandler (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.util, class: LogHandler">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/util/class-use/PathValidation.html b/target/site/apidocs/musichub/util/class-use/PathValidation.html
index 220526c..e41b131 100644
--- a/target/site/apidocs/musichub/util/class-use/PathValidation.html
+++ b/target/site/apidocs/musichub/util/class-use/PathValidation.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Class musichub.util.PathValidation (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.util, class: PathValidation">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/util/class-use/Policy.html b/target/site/apidocs/musichub/util/class-use/Policy.html
new file mode 100644
index 0000000..ea71f0b
--- /dev/null
+++ b/target/site/apidocs/musichub/util/class-use/Policy.html
@@ -0,0 +1,65 @@
+<!DOCTYPE HTML>
+<!-- NewPage -->
+<html lang="fr">
+<head>
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
+<title>Uses of Class musichub.util.Policy (spoteezer 0.1.0 API)</title>
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<meta name="dc.created" content="2021-06-28">
+<meta name="description" content="use: package: musichub.util, class: Policy">
+<meta name="generator" content="javadoc/ClassUseWriter">
+<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
+<link rel="stylesheet" type="text/css" href="../../../script-dir/jquery-ui.min.css" title="Style">
+<link rel="stylesheet" type="text/css" href="../../../jquery-ui.overrides.css" title="Style">
+<script type="text/javascript" src="../../../script.js"></script>
+<script type="text/javascript" src="../../../script-dir/jquery-3.5.1.min.js"></script>
+<script type="text/javascript" src="../../../script-dir/jquery-ui.min.js"></script>
+</head>
+<body class="class-use-page">
+<script type="text/javascript">var pathtoroot = "../../../";
+loadScripts(document, 'script');</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<div class="flex-box">
+<header role="banner" class="flex-header">
+<nav role="navigation">
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="top-nav" id="navbar.top">
+<div class="skip-nav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
+<ul id="navbar.top.firstrow" class="nav-list" title="Navigation">
+<li><a href="../../../index.html">Overview</a></li>
+<li><a href="../package-summary.html">Package</a></li>
+<li><a href="../Policy.html" title="class in musichub.util">Class</a></li>
+<li class="nav-bar-cell1-rev">Use</li>
+<li><a href="../package-tree.html">Tree</a></li>
+<li><a href="../../../index-all.html">Index</a></li>
+<li><a href="../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="sub-nav">
+<div class="nav-list-search"><label for="search">SEARCH:</label>
+<input type="text" id="search" value="search" disabled="disabled">
+<input type="reset" id="reset" value="reset" disabled="disabled">
+</div>
+</div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<span class="skip-nav" id="skip.navbar.top">
+<!-- -->
+</span></nav>
+</header>
+<div class="flex-content">
+<main role="main">
+<div class="header">
+<h1 title="Uses of Class musichub.util.Policy" class="title">Uses of Class<br>musichub.util.Policy</h1>
+</div>
+No usage of musichub.util.Policy</main>
+<footer role="contentinfo">
+<hr>
+<p class="legal-copy"><small>Copyright &#169; 2021. All rights reserved.</small></p>
+</footer>
+</div>
+</div>
+</body>
+</html>
diff --git a/target/site/apidocs/musichub/util/class-use/XMLHandler.html b/target/site/apidocs/musichub/util/class-use/XMLHandler.html
index 7a70382..c373d88 100644
--- a/target/site/apidocs/musichub/util/class-use/XMLHandler.html
+++ b/target/site/apidocs/musichub/util/class-use/XMLHandler.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Class musichub.util.XMLHandler (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.util, class: XMLHandler">
<meta name="generator" content="javadoc/ClassUseWriter">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/musichub/util/package-summary.html b/target/site/apidocs/musichub/util/package-summary.html
index f86937c..90a4118 100644
--- a/target/site/apidocs/musichub/util/package-summary.html
+++ b/target/site/apidocs/musichub/util/package-summary.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>musichub.util (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="declaration: package: musichub.util">
<meta name="generator" content="javadoc/PackageWriterImpl">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
@@ -71,8 +71,12 @@ loadScripts(document, 'script');</script>
<div class="col-last odd-row-color">
<div class="block">Class offering a path validation method.</div>
</div>
-<div class="col-first even-row-color"><a href="XMLHandler.html" title="class in musichub.util">XMLHandler</a></div>
-<div class="col-last even-row-color">&nbsp;</div>
+<div class="col-first even-row-color"><a href="Policy.html" title="class in musichub.util">Policy</a></div>
+<div class="col-last even-row-color">
+<div class="block">Class offering methods to prompt a policy agreement form to the user.</div>
+</div>
+<div class="col-first odd-row-color"><a href="XMLHandler.html" title="class in musichub.util">XMLHandler</a></div>
+<div class="col-last odd-row-color">&nbsp;</div>
</div>
</li>
</ul>
diff --git a/target/site/apidocs/musichub/util/package-tree.html b/target/site/apidocs/musichub/util/package-tree.html
index ffec452..3975c7d 100644
--- a/target/site/apidocs/musichub/util/package-tree.html
+++ b/target/site/apidocs/musichub/util/package-tree.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>musichub.util Class Hierarchy (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="tree: package: musichub.util">
<meta name="generator" content="javadoc/PackageTreeWriter">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
@@ -65,6 +65,7 @@ loadScripts(document, 'script');</script>
<ul>
<li class="circle">musichub.util.<a href="LogHandler.html" title="class in musichub.util"><span class="type-name-link">LogHandler</span></a></li>
<li class="circle">musichub.util.<a href="PathValidation.html" title="class in musichub.util"><span class="type-name-link">PathValidation</span></a></li>
+<li class="circle">musichub.util.<a href="Policy.html" title="class in musichub.util"><span class="type-name-link">Policy</span></a></li>
<li class="circle">musichub.util.<a href="XMLHandler.html" title="class in musichub.util"><span class="type-name-link">XMLHandler</span></a></li>
</ul>
</li>
diff --git a/target/site/apidocs/musichub/util/package-use.html b/target/site/apidocs/musichub/util/package-use.html
index 5b04593..29e9afd 100644
--- a/target/site/apidocs/musichub/util/package-use.html
+++ b/target/site/apidocs/musichub/util/package-use.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Uses of Package musichub.util (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="use: package: musichub.util">
<meta name="generator" content="javadoc/PackageUseWriter">
<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style">
diff --git a/target/site/apidocs/overview-summary.html b/target/site/apidocs/overview-summary.html
index 4cc33e6..e04109c 100644
--- a/target/site/apidocs/overview-summary.html
+++ b/target/site/apidocs/overview-summary.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>spoteezer 0.1.0 API</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="index redirect">
<meta name="generator" content="javadoc/IndexRedirectWriter">
<link rel="canonical" href="index.html">
diff --git a/target/site/apidocs/overview-tree.html b/target/site/apidocs/overview-tree.html
index cdf90ae..fa638f1 100644
--- a/target/site/apidocs/overview-tree.html
+++ b/target/site/apidocs/overview-tree.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Class Hierarchy (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="class tree">
<meta name="generator" content="javadoc/TreeWriter">
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
@@ -77,6 +77,7 @@ loadScripts(document, 'script');</script>
<li class="circle">musichub.business.<a href="musichub/business/MusicHub.html" title="class in musichub.business"><span class="type-name-link">MusicHub</span></a></li>
<li class="circle">musichub.util.<a href="musichub/util/PathValidation.html" title="class in musichub.util"><span class="type-name-link">PathValidation</span></a></li>
<li class="circle">musichub.business.<a href="musichub/business/PlayList.html" title="class in musichub.business"><span class="type-name-link">PlayList</span></a></li>
+<li class="circle">musichub.util.<a href="musichub/util/Policy.html" title="class in musichub.util"><span class="type-name-link">Policy</span></a></li>
<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Throwable.html" title="class or interface in java.lang" class="external-link"><span class="type-name-link">Throwable</span></a> (implements java.io.<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/io/Serializable.html" title="class or interface in java.io" class="external-link">Serializable</a>)
<ul>
<li class="circle">java.lang.<a href="https://docs.oracle.com/en/java/javase/16/docs/api/java.base/java/lang/Exception.html" title="class or interface in java.lang" class="external-link"><span class="type-name-link">Exception</span></a>
diff --git a/target/site/apidocs/serialized-form.html b/target/site/apidocs/serialized-form.html
index 4f1d9d0..6403fa7 100644
--- a/target/site/apidocs/serialized-form.html
+++ b/target/site/apidocs/serialized-form.html
@@ -2,11 +2,11 @@
<!-- NewPage -->
<html lang="fr">
<head>
-<!-- Generated by javadoc (16) on Sun Jun 27 13:23:48 CEST 2021 -->
+<!-- Generated by javadoc (16) on Mon Jun 28 23:36:13 CEST 2021 -->
<title>Serialized Form (spoteezer 0.1.0 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<meta name="dc.created" content="2021-06-27">
+<meta name="dc.created" content="2021-06-28">
<meta name="description" content="serialized forms">
<meta name="generator" content="javadoc/SerializedFormWriterImpl">
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
diff --git a/target/site/apidocs/type-search-index.js b/target/site/apidocs/type-search-index.js
index 26dac6f..65bf426 100644
--- a/target/site/apidocs/type-search-index.js
+++ b/target/site/apidocs/type-search-index.js
@@ -1 +1 @@
-typeSearchIndex = [{"p":"musichub.business","l":"Album"},{"l":"All Classes","u":"allclasses-index.html"},{"p":"musichub.business","l":"AudioBook"},{"p":"musichub.business","l":"AudioElement"},{"p":"musichub.business","l":"Category"},{"p":"musichub.business","l":"Genre"},{"p":"musichub.business","l":"Language"},{"p":"musichub.util","l":"LogHandler"},{"p":"musichub.main","l":"Main"},{"p":"musichub.business","l":"MusicHub"},{"p":"musichub.business","l":"NoAlbumFoundException"},{"p":"musichub.business","l":"NoElementFoundException"},{"p":"musichub.business","l":"NoPlayListFoundException"},{"p":"musichub.util","l":"PathValidation"},{"p":"musichub.business","l":"PlayList"},{"p":"musichub.business","l":"Song"},{"p":"musichub.util","l":"XMLHandler"}];updateSearchResults(); \ No newline at end of file
+typeSearchIndex = [{"p":"musichub.business","l":"Album"},{"l":"All Classes","u":"allclasses-index.html"},{"p":"musichub.business","l":"AudioBook"},{"p":"musichub.business","l":"AudioElement"},{"p":"musichub.business","l":"Category"},{"p":"musichub.business","l":"Genre"},{"p":"musichub.business","l":"Language"},{"p":"musichub.util","l":"LogHandler"},{"p":"musichub.main","l":"Main"},{"p":"musichub.business","l":"MusicHub"},{"p":"musichub.business","l":"NoAlbumFoundException"},{"p":"musichub.business","l":"NoElementFoundException"},{"p":"musichub.business","l":"NoPlayListFoundException"},{"p":"musichub.util","l":"PathValidation"},{"p":"musichub.business","l":"PlayList"},{"p":"musichub.util","l":"Policy"},{"p":"musichub.business","l":"Song"},{"p":"musichub.util","l":"XMLHandler"}];updateSearchResults(); \ No newline at end of file
diff --git a/target/site/jacoco/index.html b/target/site/jacoco/index.html
index b7992f7..dc1c55c 100644
--- a/target/site/jacoco/index.html
+++ b/target/site/jacoco/index.html
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="jacoco-resources/report.gif" type="image/gif"/><title>spoteezer</title><script type="text/javascript" src="jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="jacoco-sessions.html" class="el_session">Sessions</a></span><span class="el_report">spoteezer</span></div><h1>spoteezer</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">2 167 of 2 969</td><td class="ctr2">27 %</td><td class="bar">207 of 230</td><td class="ctr2">10 %</td><td class="ctr1">177</td><td class="ctr2">226</td><td class="ctr1">612</td><td class="ctr2">794</td><td class="ctr1">57</td><td class="ctr2">97</td><td class="ctr1">10</td><td class="ctr2">20</td></tr></tfoot><tbody><tr><td id="a0"><a href="musichub.business/index.html" class="el_package">musichub.business</a></td><td class="bar" id="b0"><img src="jacoco-resources/redbar.gif" width="83" height="10" title="1 483" alt="1 483"/><img src="jacoco-resources/greenbar.gif" width="36" height="10" title="651" alt="651"/></td><td class="ctr2" id="c1">30 %</td><td class="bar" id="d0"><img src="jacoco-resources/redbar.gif" width="107" height="10" title="160" alt="160"/><img src="jacoco-resources/greenbar.gif" width="12" height="10" title="19" alt="19"/></td><td class="ctr2" id="e1">10 %</td><td class="ctr1" id="f0">140</td><td class="ctr2" id="g0">178</td><td class="ctr1" id="h0">373</td><td class="ctr2" id="i0">513</td><td class="ctr1" id="j0">51</td><td class="ctr2" id="k0">82</td><td class="ctr1" id="l0">8</td><td class="ctr2" id="m0">15</td></tr><tr><td id="a1"><a href="musichub.main/index.html" class="el_package">musichub.main</a></td><td class="bar" id="b1"><img src="jacoco-resources/redbar.gif" width="35" height="10" title="625" alt="625"/></td><td class="ctr2" id="c2">0 %</td><td class="bar" id="d1"><img src="jacoco-resources/redbar.gif" width="28" height="10" title="42" alt="42"/></td><td class="ctr2" id="e2">0 %</td><td class="ctr1" id="f1">31</td><td class="ctr2" id="g1">31</td><td class="ctr1" id="h1">215</td><td class="ctr2" id="i1">215</td><td class="ctr1" id="j1">3</td><td class="ctr2" id="k2">3</td><td class="ctr1" id="l1">1</td><td class="ctr2" id="m2">1</td></tr><tr><td id="a2"><a href="musichub.util/index.html" class="el_package">musichub.util</a></td><td class="bar" id="b2"><img src="jacoco-resources/redbar.gif" width="3" height="10" title="59" alt="59"/><img src="jacoco-resources/greenbar.gif" width="8" height="10" title="151" alt="151"/></td><td class="ctr2" id="c0">71 %</td><td class="bar" id="d2"><img src="jacoco-resources/redbar.gif" width="3" height="10" title="5" alt="5"/><img src="jacoco-resources/greenbar.gif" width="2" height="10" title="4" alt="4"/></td><td class="ctr2" id="e0">44 %</td><td class="ctr1" id="f2">6</td><td class="ctr2" id="g2">17</td><td class="ctr1" id="h2">24</td><td class="ctr2" id="i2">66</td><td class="ctr1" id="j2">3</td><td class="ctr2" id="k1">12</td><td class="ctr1" id="l2">1</td><td class="ctr2" id="m1">4</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="jacoco-resources/report.gif" type="image/gif"/><title>spoteezer</title><script type="text/javascript" src="jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="jacoco-sessions.html" class="el_session">Sessions</a></span><span class="el_report">spoteezer</span></div><h1>spoteezer</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">2 376 of 3 178</td><td class="ctr2">25 %</td><td class="bar">223 of 246</td><td class="ctr2">9 %</td><td class="ctr1">187</td><td class="ctr2">236</td><td class="ctr1">672</td><td class="ctr2">854</td><td class="ctr1">59</td><td class="ctr2">99</td><td class="ctr1">10</td><td class="ctr2">20</td></tr></tfoot><tbody><tr><td id="a0"><a href="musichub.business/index.html" class="el_package">musichub.business</a></td><td class="bar" id="b0"><img src="jacoco-resources/redbar.gif" width="85" height="10" title="1 588" alt="1 588"/><img src="jacoco-resources/greenbar.gif" width="34" height="10" title="651" alt="651"/></td><td class="ctr2" id="c1">29 %</td><td class="bar" id="d0"><img src="jacoco-resources/redbar.gif" width="108" height="10" title="175" alt="175"/><img src="jacoco-resources/greenbar.gif" width="11" height="10" title="19" alt="19"/></td><td class="ctr2" id="e1">9 %</td><td class="ctr1" id="f0">149</td><td class="ctr2" id="g0">187</td><td class="ctr1" id="h0">393</td><td class="ctr2" id="i0">533</td><td class="ctr1" id="j0">53</td><td class="ctr2" id="k0">84</td><td class="ctr1" id="l0">8</td><td class="ctr2" id="m0">15</td></tr><tr><td id="a1"><a href="musichub.main/index.html" class="el_package">musichub.main</a></td><td class="bar" id="b1"><img src="jacoco-resources/redbar.gif" width="38" height="10" title="722" alt="722"/></td><td class="ctr2" id="c2">0 %</td><td class="bar" id="d1"><img src="jacoco-resources/redbar.gif" width="26" height="10" title="43" alt="43"/></td><td class="ctr2" id="e2">0 %</td><td class="ctr1" id="f1">32</td><td class="ctr2" id="g1">32</td><td class="ctr1" id="h1">251</td><td class="ctr2" id="i1">251</td><td class="ctr1" id="j1">3</td><td class="ctr2" id="k2">3</td><td class="ctr1" id="l1">1</td><td class="ctr2" id="m2">1</td></tr><tr><td id="a2"><a href="musichub.util/index.html" class="el_package">musichub.util</a></td><td class="bar" id="b2"><img src="jacoco-resources/redbar.gif" width="3" height="10" title="66" alt="66"/><img src="jacoco-resources/greenbar.gif" width="8" height="10" title="151" alt="151"/></td><td class="ctr2" id="c0">69 %</td><td class="bar" id="d2"><img src="jacoco-resources/redbar.gif" width="3" height="10" title="5" alt="5"/><img src="jacoco-resources/greenbar.gif" width="2" height="10" title="4" alt="4"/></td><td class="ctr2" id="e0">44 %</td><td class="ctr1" id="f2">6</td><td class="ctr2" id="g2">17</td><td class="ctr1" id="h2">28</td><td class="ctr2" id="i2">70</td><td class="ctr1" id="j2">3</td><td class="ctr2" id="k1">12</td><td class="ctr1" id="l2">1</td><td class="ctr2" id="m1">4</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
diff --git a/target/site/jacoco/jacoco-sessions.html b/target/site/jacoco/jacoco-sessions.html
index 59fcb45..2e5066f 100644
--- a/target/site/jacoco/jacoco-sessions.html
+++ b/target/site/jacoco/jacoco-sessions.html
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="jacoco-resources/report.gif" type="image/gif"/><title>Sessions</title></head><body><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="jacoco-sessions.html" class="el_session">Sessions</a></span><a href="index.html" class="el_report">spoteezer</a> &gt; <span class="el_session">Sessions</span></div><h1>Sessions</h1><p>This coverage report is based on execution data from the following sessions:</p><table class="coverage" cellspacing="0"><thead><tr><td>Session</td><td>Start Time</td><td>Dump Time</td></tr></thead><tbody><tr><td><span class="el_session">DESKTOP-M4INQND-91a7872b</span></td><td>27 juin 2021, 13:23:39</td><td>27 juin 2021, 13:23:40</td></tr><tr><td><span class="el_session">DESKTOP-M4INQND-11e0a096</span></td><td>27 juin 2021, 18:57:02</td><td>27 juin 2021, 18:57:02</td></tr><tr><td><span class="el_session">DESKTOP-M4INQND-7357f010</span></td><td>27 juin 2021, 22:23:27</td><td>27 juin 2021, 22:23:27</td></tr></tbody></table><p>Execution data for the following classes is considered in this report:</p><table class="coverage" cellspacing="0"><thead><tr><td>Class</td><td>Id</td></tr></thead><tbody><tr><td><span class="el_class">java.sql.Date</span></td><td><code>d25610486aed3f31</code></td></tr><tr><td><span class="el_class">java.sql.Timestamp</span></td><td><code>b848522074600355</code></td></tr><tr><td><a href="musichub.business/AudioBook.html" class="el_class">musichub.business.AudioBook</a></td><td><code>aaa13ef213e0885f</code></td></tr><tr><td><a href="musichub.business/AudioElement.html" class="el_class">musichub.business.AudioElement</a></td><td><code>776d9bc5621fe50f</code></td></tr><tr><td><a href="musichub.business/Category.html" class="el_class">musichub.business.Category</a></td><td><code>f9388aaddff9a152</code></td></tr><tr><td><span class="el_class">musichub.business.CategoryTest</span></td><td><code>8046f4a9dc44152c</code></td></tr><tr><td><a href="musichub.business/Genre.html" class="el_class">musichub.business.Genre</a></td><td><code>b2fbdfedce493822</code></td></tr><tr><td><a href="musichub.business/Language.html" class="el_class">musichub.business.Language</a></td><td><code>d39e77f1c1a0f641</code></td></tr><tr><td><span class="el_class">musichub.business.LanguageTest</span></td><td><code>f53b266ad5abf5d4</code></td></tr><tr><td><a href="musichub.business/PlayList.html" class="el_class">musichub.business.PlayList</a></td><td><code>5513ec76de07c419</code></td></tr><tr><td><span class="el_class">musichub.business.PlayListTest</span></td><td><code>7e7a002919fb95e1</code></td></tr><tr><td><a href="musichub.business/Song.html" class="el_class">musichub.business.Song</a></td><td><code>44a87f7f8335b156</code></td></tr><tr><td><span class="el_class">musichub.business.SongTest</span></td><td><code>88f03b022c5c7270</code></td></tr><tr><td><a href="musichub.util/LogHandler.html" class="el_class">musichub.util.LogHandler</a></td><td><code>09990b742e8d897c</code></td></tr><tr><td><span class="el_class">musichub.util.LogHandlerTest</span></td><td><code>49f271871a8ef7bf</code></td></tr><tr><td><a href="musichub.util/PathValidation.html" class="el_class">musichub.util.PathValidation</a></td><td><code>170ad3c706c07f6b</code></td></tr><tr><td><span class="el_class">musichub.util.PathValidationTest</span></td><td><code>9eabcd97683d6e01</code></td></tr><tr><td><a href="musichub.util/XMLHandler.html" class="el_class">musichub.util.XMLHandler</a></td><td><code>ab2fa919a374fd87</code></td></tr><tr><td><span class="el_class">musichub.util.XMLHandlerTest</span></td><td><code>4852491d32ffd349</code></td></tr><tr><td><span class="el_class">org.apache.maven.plugin.surefire.log.api.NullConsoleLogger</span></td><td><code>80d79e52a7499259</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.AbstractPathConfiguration</span></td><td><code>8182fa1396653f01</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.BaseProviderFactory</span></td><td><code>82593383b8ea92d6</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.BiProperty</span></td><td><code>4945e268841ae2cb</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.BooterDeserializer</span></td><td><code>5e68b147d2c4b22f</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ClassLoaderConfiguration</span></td><td><code>dc8fd5c18ebb0e44</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.Classpath</span></td><td><code>6f6b6469b9fdf4dd</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ClasspathConfiguration</span></td><td><code>4c7a5282c74ba3e2</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.Command</span></td><td><code>eb1b53eb8cbe7b47</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.CommandReader</span></td><td><code>0c8d3ca700ec7199</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.CommandReader.1</span></td><td><code>fbfebde20e2b504c</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.CommandReader.CommandRunnable</span></td><td><code>ee59ae4d74408619</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.DumpErrorSingleton</span></td><td><code>a3fa02cb87e0e12b</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter</span></td><td><code>a5c33895f0d22838</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.1</span></td><td><code>c87487d278c3ea96</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.2</span></td><td><code>31c66931520df8eb</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.3</span></td><td><code>95d48141fa4dd03d</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.4</span></td><td><code>24dcd1c5bcf0d850</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.5</span></td><td><code>862846325c16cf76</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.6</span></td><td><code>b3ab24d3791d84dd</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.7</span></td><td><code>401437f62a3b16ff</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.PingScheduler</span></td><td><code>04bf02021dfc5e9c</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkingReporterFactory</span></td><td><code>076a6c0176f6238b</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkingRunListener</span></td><td><code>92d4b034b32ca2c0</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.MasterProcessCommand</span></td><td><code>da65de332c2de19d</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.PpidChecker</span></td><td><code>71b8c658da2ea8d3</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.PpidChecker.2</span></td><td><code>68d262a2c2ad8f14</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.PpidChecker.ProcessInfoConsumer</span></td><td><code>73f319c21fab7e7f</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ProcessInfo</span></td><td><code>b5b56cd86f3f0b31</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.PropertiesWrapper</span></td><td><code>ae4bf137cc5290c1</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ProviderConfiguration</span></td><td><code>d19986536a351b50</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.Shutdown</span></td><td><code>ee9c65017e107986</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.StartupConfiguration</span></td><td><code>a8cc10b01ed27439</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.SystemPropertyManager</span></td><td><code>f47497b1dde50d64</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.TypeEncodedValue</span></td><td><code>5ea9766678ac06a2</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.cli.CommandLineOption</span></td><td><code>467fc7f51b73863b</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.junitplatform.JUnitPlatformProvider</span></td><td><code>89b934b90ec6eb01</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.junitplatform.RunListenerAdapter</span></td><td><code>02cb8e87a6db2057</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.junitplatform.TestPlanScannerFilter</span></td><td><code>622558f718a42827</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.providerapi.AbstractProvider</span></td><td><code>90f3b08fe8a1c87c</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.report.ConsoleOutputCapture</span></td><td><code>b8ae904ed8536017</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.report.ConsoleOutputCapture.ForwardingPrintStream</span></td><td><code>f912ea5d2dac308e</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.report.ConsoleOutputCapture.NullOutputStream</span></td><td><code>8d05eb67510fd586</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.report.ReporterConfiguration</span></td><td><code>4281487891f02f69</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.report.SimpleReportEntry</span></td><td><code>ced572f24a462295</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shade.org.apache.commons.io.IOUtils</span></td><td><code>31aed2fcfab3e082</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shade.org.apache.commons.io.output.StringBuilderWriter</span></td><td><code>6d33fec8cb3374c0</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shade.org.apache.commons.lang3.JavaVersion</span></td><td><code>a8452005cb20bb7d</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shade.org.apache.commons.lang3.StringUtils</span></td><td><code>4f785afa8bb3a23f</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shade.org.apache.commons.lang3.SystemUtils</span></td><td><code>aba69a973b7ba06a</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shade.org.apache.commons.lang3.math.NumberUtils</span></td><td><code>d0156407bff7b695</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shade.org.apache.maven.shared.utils.StringUtils</span></td><td><code>483d14212b21a3ea</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.suite.RunResult</span></td><td><code>f5c7c53a954bcafa</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.DirectoryScannerParameters</span></td><td><code>2b5eeacae469cd1d</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.IncludedExcludedPatterns</span></td><td><code>f39908e3b64d7090</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.ResolvedTest</span></td><td><code>a598483e424232d4</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.ResolvedTest.ClassMatcher</span></td><td><code>79be7f2fa77ad8d7</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.ResolvedTest.MethodMatcher</span></td><td><code>7c71374a51e8e61b</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.ResolvedTest.Type</span></td><td><code>90e4214668937845</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.RunOrderParameters</span></td><td><code>b4c06223c3099700</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.TestArtifactInfo</span></td><td><code>f703953620e80b33</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.TestListResolver</span></td><td><code>7d372c99b98a147d</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.TestRequest</span></td><td><code>0fa2c0cc34345df2</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.CloseableIterator</span></td><td><code>cc15bdebae86d5d2</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.DefaultRunOrderCalculator</span></td><td><code>1aeecbcd3bf6e89b</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.DefaultScanResult</span></td><td><code>7fefafdf8c793c36</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.ReflectionUtils</span></td><td><code>8d5f4b05d6d77207</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.RunOrder</span></td><td><code>d2292a6beb4b6337</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.TestsToRun</span></td><td><code>a95363e4b4ba2069</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.TestsToRun.ClassesIterator</span></td><td><code>84a139c598502c0b</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.internal.DaemonThreadFactory</span></td><td><code>21a589f6dedb169c</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.internal.DaemonThreadFactory.NamedThreadFactory</span></td><td><code>682458ca85b067a3</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.internal.DumpFileUtils</span></td><td><code>fff19f49be3d8149</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.internal.ImmutableMap</span></td><td><code>72bcae5e55b4fabb</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.internal.ObjectUtils</span></td><td><code>69a2a92649b44645</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.internal.StringUtils</span></td><td><code>3a7e4daf0a993e1e</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.internal.StringUtils.EncodedArray</span></td><td><code>477f1d94d78cb50b</code></td></tr><tr><td><span class="el_class">org.apiguardian.api.API.Status</span></td><td><code>0341e8d99fc36573</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.AssertEquals</span></td><td><code>12bfbbf2e4327e63</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.AssertFalse</span></td><td><code>32fea5a28fb6a114</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.AssertNotEquals</span></td><td><code>c7953c8abfcb95d0</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.AssertNull</span></td><td><code>85f4114f65559fbd</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.AssertTrue</span></td><td><code>612f68f7274dd69c</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.AssertionUtils</span></td><td><code>da37ffd9f98016fd</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.Assertions</span></td><td><code>041279bcf2826fff</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.TestInstance.Lifecycle</span></td><td><code>0e93858cc703e9fc</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.extension.ConditionEvaluationResult</span></td><td><code>2f9dc9ea54b57975</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.extension.ExtensionContext</span></td><td><code>222e1fc44c4844aa</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.DiscoveryFilterApplier</span></td><td><code>ae96a3ff3c2e2bc4</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.JupiterTestEngine</span></td><td><code>c74f725c8cb223be</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.AbstractExtensionContext</span></td><td><code>1f7ed0b87a9f2cca</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.ClassExtensionContext</span></td><td><code>b85422abe06bbadd</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.ClassTestDescriptor</span></td><td><code>61a635a4acc3ee31</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.JupiterEngineDescriptor</span></td><td><code>d025635c09450d0d</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.JupiterEngineExtensionContext</span></td><td><code>7ae853fe3a80d83c</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.JupiterTestDescriptor</span></td><td><code>606e5ec97816bda5</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.LifecycleMethodUtils</span></td><td><code>19c9fba5accef0fa</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.MethodBasedTestDescriptor</span></td><td><code>65654838f58d8b44</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.MethodExtensionContext</span></td><td><code>c098f6d0bb344d56</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.TestInstanceLifecycleUtils</span></td><td><code>c42bb138e6a06252</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor</span></td><td><code>54eb6a19bd953962</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.AbstractMethodResolver</span></td><td><code>3934f16bf877b9f5</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.DiscoverySelectorResolver</span></td><td><code>a858789f976fefbc</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.JavaElementsResolver</span></td><td><code>32e9ea682e77049d</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.MethodFinder</span></td><td><code>5ea468d2eb528361</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.NestedTestsResolver</span></td><td><code>9d92451ae793af41</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.TestContainerResolver</span></td><td><code>7db010f5e9c7301d</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.TestFactoryMethodResolver</span></td><td><code>59fd27320e375440</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.TestMethodResolver</span></td><td><code>1417c6356fa4b27f</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.TestTemplateMethodResolver</span></td><td><code>47563eb55cd35171</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.predicates.IsInnerClass</span></td><td><code>f7d9846d00228720</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.predicates.IsNestedTestClass</span></td><td><code>e47ff7cd33073803</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.predicates.IsPotentialTestContainer</span></td><td><code>0f8df015b2d5841a</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.predicates.IsScannableTestClass</span></td><td><code>839db992754219f6</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.predicates.IsTestClassWithTests</span></td><td><code>5ab134cc6ef3a81f</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.predicates.IsTestFactoryMethod</span></td><td><code>a2c68978bd6bfbc6</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.predicates.IsTestMethod</span></td><td><code>8b244977e441886e</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.predicates.IsTestTemplateMethod</span></td><td><code>0baf1066bf0cbad7</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.predicates.IsTestableMethod</span></td><td><code>59a0b58a40803fe2</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.execution.ConditionEvaluator</span></td><td><code>fba35d945644501d</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.execution.ExecutableInvoker</span></td><td><code>d64b9ef7a154ea95</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.execution.ExtensionValuesStore</span></td><td><code>2517eb7835ca6234</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.execution.JupiterEngineExecutionContext</span></td><td><code>65be276e3a954a94</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.execution.JupiterEngineExecutionContext.Builder</span></td><td><code>dd69537274ccbffc</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.execution.JupiterEngineExecutionContext.State</span></td><td><code>38616672a2502408</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.execution.ThrowableCollector</span></td><td><code>92102b13561afdcf</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.extension.DisabledCondition</span></td><td><code>a967493a244329fa</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.extension.ExtensionRegistry</span></td><td><code>20b847fc63fd255b</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.extension.RepeatedTestExtension</span></td><td><code>1b7914cc8cf83732</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.extension.TestInfoParameterResolver</span></td><td><code>1b5b370a56807cae</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.extension.TestReporterParameterResolver</span></td><td><code>839c7c31b3ec6390</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.logging.LoggerFactory</span></td><td><code>ca4e1a8773fb9bed</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.logging.LoggerFactory.DelegatingLogger</span></td><td><code>fd74fe2bb4edddd0</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.AnnotationUtils</span></td><td><code>32499b01efc144e8</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.AnnotationUtils.AnnotationCacheKey</span></td><td><code>f04082259bc4a6ab</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.ClassLoaderUtils</span></td><td><code>ebded5f4ecebd9d8</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.ClassUtils</span></td><td><code>4982a89773933a90</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.ClasspathScanner</span></td><td><code>8425ab535628f6b9</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.CollectionUtils</span></td><td><code>59532d0e14166bc8</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.Preconditions</span></td><td><code>f9207dc44e9d043d</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.ReflectionUtils</span></td><td><code>4d39f1033ae8eb12</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.ReflectionUtils.HierarchyTraversalMode</span></td><td><code>b267f8ac562d551e</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.StringUtils</span></td><td><code>3441f99393e2406b</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.CompositeFilter</span></td><td><code>d9d6482243cc9fa3</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.CompositeFilter.1</span></td><td><code>75dffc26c0811b9d</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.ExecutionRequest</span></td><td><code>ed3835cc21e5a048</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.Filter</span></td><td><code>f932423ccd3b54bf</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.FilterResult</span></td><td><code>bf731bc7f64ce694</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.TestDescriptor</span></td><td><code>e9574ca206cded64</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.TestDescriptor.Type</span></td><td><code>eb97fc5a29f3ee3a</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.TestExecutionResult</span></td><td><code>abbab174d32db912</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.TestExecutionResult.Status</span></td><td><code>da0473a55d05e891</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.UniqueId</span></td><td><code>d23a178963e86ca7</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.UniqueId.Segment</span></td><td><code>54a2765f04c8cab7</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.UniqueIdFormat</span></td><td><code>c860ade4b928ce32</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.discovery.ClassSelector</span></td><td><code>228aa96d72021db2</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.discovery.DiscoverySelectors</span></td><td><code>8fefc6f1651cc3bd</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.descriptor.AbstractTestDescriptor</span></td><td><code>2bfbf25c43491443</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.descriptor.ClassSource</span></td><td><code>9727c5551a632c40</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.descriptor.EngineDescriptor</span></td><td><code>b7dbf6dfb794516c</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.descriptor.MethodSource</span></td><td><code>0a1b0f0f95f17b77</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.filter.ClasspathScanningSupport</span></td><td><code>8223a02c2b9d8c89</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.hierarchical.ExecutionTracker</span></td><td><code>cbd37bfd76595d62</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine</span></td><td><code>410766a2a07e44b1</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor</span></td><td><code>7b43a475463d740e</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.1</span></td><td><code>197b854565198af0</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.hierarchical.Node</span></td><td><code>8a5379bd364a5bf6</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.hierarchical.Node.SkipResult</span></td><td><code>d4551dfb7a813206</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.hierarchical.SingleTestExecutor</span></td><td><code>d75bd01628eef7be</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.TestIdentifier</span></td><td><code>225bb434f8f223e2</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.TestPlan</span></td><td><code>9a2b71b572924cbc</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.DefaultDiscoveryRequest</span></td><td><code>7dda3ad9a0e6a666</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.DefaultLauncher</span></td><td><code>1a1f88af87dc6ec1</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.ExecutionListenerAdapter</span></td><td><code>52cf3c3c69d4dfba</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.LauncherConfigurationParameters</span></td><td><code>ef55cacb5e47a902</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.LauncherDiscoveryRequestBuilder</span></td><td><code>e78a71b91c159e69</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.LauncherFactory</span></td><td><code>e2bd67b8a72737b5</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.Root</span></td><td><code>32394ca895f9fb9a</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.ServiceLoaderTestEngineRegistry</span></td><td><code>7c054c4cf76cb0f6</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.ServiceLoaderTestExecutionListenerRegistry</span></td><td><code>2299bac1075a6bf3</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.TestExecutionListenerRegistry</span></td><td><code>190f4fb2b0ab865d</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.TestExecutionListenerRegistry.CompositeTestExecutionListener</span></td><td><code>7538d2d860e1f9cb</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.listeners.LegacyReportingUtils</span></td><td><code>f3c021e100a54063</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.AbstractCharsetProvider</span></td><td><code>9a72c9e39fdac365</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.Big5</span></td><td><code>7f7799a4239d3d01</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.EUC_CN</span></td><td><code>daed57327edf3023</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.EUC_JP</span></td><td><code>f0c718c92ac0cabc</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.EUC_KR</span></td><td><code>3d50c0e84dcd54e6</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.EUC_TW</span></td><td><code>4fbeba8ab3b0661e</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.ExtendedCharsets</span></td><td><code>7715d4380ab405a8</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM037</span></td><td><code>b9b8c9ec2e056149</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM1047</span></td><td><code>e368b4c70681ed2e</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM277</span></td><td><code>7b5b55809ca60de9</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM278</span></td><td><code>326393dad6851723</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM280</span></td><td><code>9d9334ffd18e4e40</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM284</span></td><td><code>01c4a83f23f1b53d</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM285</span></td><td><code>be059d13431c468f</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM297</span></td><td><code>09fd5ed2f7ce33cb</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM420</span></td><td><code>dfa9e617bd0f689b</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM424</span></td><td><code>edd26be1d2ed5a00</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM500</span></td><td><code>58b3c90789d546a5</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM860</span></td><td><code>4bc938afb837212f</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM870</span></td><td><code>ad9dcff6cd8f8661</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM871</span></td><td><code>ef144f207fc359f5</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM918</span></td><td><code>a83d0db73f26c654</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.ISO2022</span></td><td><code>92bf931cea04ba69</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.ISO2022_JP</span></td><td><code>4839eaacbb85c150</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.ISO2022_KR</span></td><td><code>e2e5b9cbb3d44823</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.ISO_8859_11</span></td><td><code>cb3ce4182f6717e0</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.ISO_8859_3</span></td><td><code>550e89cba9076937</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.ISO_8859_6</span></td><td><code>7e467e744bd3ad13</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.ISO_8859_8</span></td><td><code>bb93af1e031c8697</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.MacRoman</span></td><td><code>7007321b9dd9c10d</code></td></tr><tr><td><span class="el_class">sun.text.resources.cldr.ext.FormatData_fr</span></td><td><code>cfe4ef8ff7428512</code></td></tr><tr><td><span class="el_class">sun.util.resources.cldr.provider.CLDRLocaleDataMetaInfo</span></td><td><code>888d0e6a76acb845</code></td></tr><tr><td><span class="el_class">sun.util.resources.provider.LocaleDataProvider</span></td><td><code>36ca29d59ab35e5c</code></td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="jacoco-resources/report.gif" type="image/gif"/><title>Sessions</title></head><body><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="jacoco-sessions.html" class="el_session">Sessions</a></span><a href="index.html" class="el_report">spoteezer</a> &gt; <span class="el_session">Sessions</span></div><h1>Sessions</h1><p>This coverage report is based on execution data from the following sessions:</p><table class="coverage" cellspacing="0"><thead><tr><td>Session</td><td>Start Time</td><td>Dump Time</td></tr></thead><tbody><tr><td><span class="el_session">DESKTOP-M4INQND-91a7872b</span></td><td>27 juin 2021, 13:23:39</td><td>27 juin 2021, 13:23:40</td></tr><tr><td><span class="el_session">DESKTOP-M4INQND-11e0a096</span></td><td>27 juin 2021, 18:57:02</td><td>27 juin 2021, 18:57:02</td></tr><tr><td><span class="el_session">DESKTOP-M4INQND-7357f010</span></td><td>27 juin 2021, 22:23:27</td><td>27 juin 2021, 22:23:27</td></tr><tr><td><span class="el_session">DESKTOP-M4INQND-811f3cc5</span></td><td>28 juin 2021, 23:30:47</td><td>28 juin 2021, 23:30:48</td></tr><tr><td><span class="el_session">DESKTOP-M4INQND-b70e9563</span></td><td>28 juin 2021, 23:31:58</td><td>28 juin 2021, 23:31:59</td></tr><tr><td><span class="el_session">DESKTOP-M4INQND-a94600a7</span></td><td>28 juin 2021, 23:36:26</td><td>28 juin 2021, 23:36:27</td></tr><tr><td><span class="el_session">DESKTOP-M4INQND-cbfb49a8</span></td><td>28 juin 2021, 23:36:31</td><td>28 juin 2021, 23:36:32</td></tr></tbody></table><p>Execution data for the following classes is considered in this report:</p><table class="coverage" cellspacing="0"><thead><tr><td>Class</td><td>Id</td></tr></thead><tbody><tr><td><span class="el_class">java.sql.Date</span></td><td><code>d25610486aed3f31</code></td></tr><tr><td><span class="el_class">java.sql.Timestamp</span></td><td><code>b848522074600355</code></td></tr><tr><td><a href="musichub.business/AudioBook.html" class="el_class">musichub.business.AudioBook</a></td><td><code>aaa13ef213e0885f</code></td></tr><tr><td><a href="musichub.business/AudioElement.html" class="el_class">musichub.business.AudioElement</a></td><td><code>f7fee30268ca924b</code></td></tr><tr><td><span class="el_class">musichub.business.AudioElement</span></td><td><code>776d9bc5621fe50f</code></td></tr><tr><td><a href="musichub.business/Category.html" class="el_class">musichub.business.Category</a></td><td><code>f9388aaddff9a152</code></td></tr><tr><td><span class="el_class">musichub.business.CategoryTest</span></td><td><code>8046f4a9dc44152c</code></td></tr><tr><td><a href="musichub.business/Genre.html" class="el_class">musichub.business.Genre</a></td><td><code>b2fbdfedce493822</code></td></tr><tr><td><a href="musichub.business/Language.html" class="el_class">musichub.business.Language</a></td><td><code>d39e77f1c1a0f641</code></td></tr><tr><td><span class="el_class">musichub.business.LanguageTest</span></td><td><code>f53b266ad5abf5d4</code></td></tr><tr><td><a href="musichub.business/PlayList.html" class="el_class">musichub.business.PlayList</a></td><td><code>5513ec76de07c419</code></td></tr><tr><td><span class="el_class">musichub.business.PlayListTest</span></td><td><code>7e7a002919fb95e1</code></td></tr><tr><td><a href="musichub.business/Song.html" class="el_class">musichub.business.Song</a></td><td><code>44a87f7f8335b156</code></td></tr><tr><td><span class="el_class">musichub.business.SongTest</span></td><td><code>88f03b022c5c7270</code></td></tr><tr><td><a href="musichub.util/LogHandler.html" class="el_class">musichub.util.LogHandler</a></td><td><code>09990b742e8d897c</code></td></tr><tr><td><span class="el_class">musichub.util.LogHandlerTest</span></td><td><code>49f271871a8ef7bf</code></td></tr><tr><td><a href="musichub.util/PathValidation.html" class="el_class">musichub.util.PathValidation</a></td><td><code>170ad3c706c07f6b</code></td></tr><tr><td><span class="el_class">musichub.util.PathValidationTest</span></td><td><code>9eabcd97683d6e01</code></td></tr><tr><td><a href="musichub.util/XMLHandler.html" class="el_class">musichub.util.XMLHandler</a></td><td><code>ab2fa919a374fd87</code></td></tr><tr><td><span class="el_class">musichub.util.XMLHandlerTest</span></td><td><code>4852491d32ffd349</code></td></tr><tr><td><span class="el_class">org.apache.maven.plugin.surefire.log.api.NullConsoleLogger</span></td><td><code>80d79e52a7499259</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.AbstractPathConfiguration</span></td><td><code>8182fa1396653f01</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.BaseProviderFactory</span></td><td><code>82593383b8ea92d6</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.BiProperty</span></td><td><code>4945e268841ae2cb</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.BooterDeserializer</span></td><td><code>5e68b147d2c4b22f</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ClassLoaderConfiguration</span></td><td><code>dc8fd5c18ebb0e44</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.Classpath</span></td><td><code>6f6b6469b9fdf4dd</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ClasspathConfiguration</span></td><td><code>4c7a5282c74ba3e2</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.Command</span></td><td><code>eb1b53eb8cbe7b47</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.CommandReader</span></td><td><code>0c8d3ca700ec7199</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.CommandReader.1</span></td><td><code>fbfebde20e2b504c</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.CommandReader.CommandRunnable</span></td><td><code>ee59ae4d74408619</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.DumpErrorSingleton</span></td><td><code>a3fa02cb87e0e12b</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter</span></td><td><code>a5c33895f0d22838</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.1</span></td><td><code>c87487d278c3ea96</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.2</span></td><td><code>31c66931520df8eb</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.3</span></td><td><code>95d48141fa4dd03d</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.4</span></td><td><code>24dcd1c5bcf0d850</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.5</span></td><td><code>862846325c16cf76</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.6</span></td><td><code>b3ab24d3791d84dd</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.7</span></td><td><code>401437f62a3b16ff</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkedBooter.PingScheduler</span></td><td><code>04bf02021dfc5e9c</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkingReporterFactory</span></td><td><code>076a6c0176f6238b</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ForkingRunListener</span></td><td><code>92d4b034b32ca2c0</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.MasterProcessCommand</span></td><td><code>da65de332c2de19d</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.PpidChecker</span></td><td><code>71b8c658da2ea8d3</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.PpidChecker.2</span></td><td><code>68d262a2c2ad8f14</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.PpidChecker.ProcessInfoConsumer</span></td><td><code>73f319c21fab7e7f</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ProcessInfo</span></td><td><code>b5b56cd86f3f0b31</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.PropertiesWrapper</span></td><td><code>ae4bf137cc5290c1</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.ProviderConfiguration</span></td><td><code>d19986536a351b50</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.Shutdown</span></td><td><code>ee9c65017e107986</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.StartupConfiguration</span></td><td><code>a8cc10b01ed27439</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.SystemPropertyManager</span></td><td><code>f47497b1dde50d64</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.booter.TypeEncodedValue</span></td><td><code>5ea9766678ac06a2</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.cli.CommandLineOption</span></td><td><code>467fc7f51b73863b</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.junitplatform.JUnitPlatformProvider</span></td><td><code>89b934b90ec6eb01</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.junitplatform.RunListenerAdapter</span></td><td><code>02cb8e87a6db2057</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.junitplatform.TestPlanScannerFilter</span></td><td><code>622558f718a42827</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.providerapi.AbstractProvider</span></td><td><code>90f3b08fe8a1c87c</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.report.ConsoleOutputCapture</span></td><td><code>b8ae904ed8536017</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.report.ConsoleOutputCapture.ForwardingPrintStream</span></td><td><code>f912ea5d2dac308e</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.report.ConsoleOutputCapture.NullOutputStream</span></td><td><code>8d05eb67510fd586</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.report.ReporterConfiguration</span></td><td><code>4281487891f02f69</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.report.SimpleReportEntry</span></td><td><code>ced572f24a462295</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shade.org.apache.commons.io.IOUtils</span></td><td><code>31aed2fcfab3e082</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shade.org.apache.commons.io.output.StringBuilderWriter</span></td><td><code>6d33fec8cb3374c0</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shade.org.apache.commons.lang3.JavaVersion</span></td><td><code>a8452005cb20bb7d</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shade.org.apache.commons.lang3.StringUtils</span></td><td><code>4f785afa8bb3a23f</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shade.org.apache.commons.lang3.SystemUtils</span></td><td><code>aba69a973b7ba06a</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shade.org.apache.commons.lang3.math.NumberUtils</span></td><td><code>d0156407bff7b695</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.shade.org.apache.maven.shared.utils.StringUtils</span></td><td><code>483d14212b21a3ea</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.suite.RunResult</span></td><td><code>f5c7c53a954bcafa</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.DirectoryScannerParameters</span></td><td><code>2b5eeacae469cd1d</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.IncludedExcludedPatterns</span></td><td><code>f39908e3b64d7090</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.ResolvedTest</span></td><td><code>a598483e424232d4</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.ResolvedTest.ClassMatcher</span></td><td><code>79be7f2fa77ad8d7</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.ResolvedTest.MethodMatcher</span></td><td><code>7c71374a51e8e61b</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.ResolvedTest.Type</span></td><td><code>90e4214668937845</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.RunOrderParameters</span></td><td><code>b4c06223c3099700</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.TestArtifactInfo</span></td><td><code>f703953620e80b33</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.TestListResolver</span></td><td><code>7d372c99b98a147d</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.testset.TestRequest</span></td><td><code>0fa2c0cc34345df2</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.CloseableIterator</span></td><td><code>cc15bdebae86d5d2</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.DefaultRunOrderCalculator</span></td><td><code>1aeecbcd3bf6e89b</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.DefaultScanResult</span></td><td><code>7fefafdf8c793c36</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.ReflectionUtils</span></td><td><code>8d5f4b05d6d77207</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.RunOrder</span></td><td><code>d2292a6beb4b6337</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.TestsToRun</span></td><td><code>a95363e4b4ba2069</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.TestsToRun.ClassesIterator</span></td><td><code>84a139c598502c0b</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.internal.DaemonThreadFactory</span></td><td><code>21a589f6dedb169c</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.internal.DaemonThreadFactory.NamedThreadFactory</span></td><td><code>682458ca85b067a3</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.internal.DumpFileUtils</span></td><td><code>fff19f49be3d8149</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.internal.ImmutableMap</span></td><td><code>72bcae5e55b4fabb</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.internal.ObjectUtils</span></td><td><code>69a2a92649b44645</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.internal.StringUtils</span></td><td><code>3a7e4daf0a993e1e</code></td></tr><tr><td><span class="el_class">org.apache.maven.surefire.util.internal.StringUtils.EncodedArray</span></td><td><code>477f1d94d78cb50b</code></td></tr><tr><td><span class="el_class">org.apiguardian.api.API.Status</span></td><td><code>0341e8d99fc36573</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.AssertEquals</span></td><td><code>12bfbbf2e4327e63</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.AssertFalse</span></td><td><code>32fea5a28fb6a114</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.AssertNotEquals</span></td><td><code>c7953c8abfcb95d0</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.AssertNull</span></td><td><code>85f4114f65559fbd</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.AssertTrue</span></td><td><code>612f68f7274dd69c</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.AssertionUtils</span></td><td><code>da37ffd9f98016fd</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.Assertions</span></td><td><code>041279bcf2826fff</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.TestInstance.Lifecycle</span></td><td><code>0e93858cc703e9fc</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.extension.ConditionEvaluationResult</span></td><td><code>2f9dc9ea54b57975</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.api.extension.ExtensionContext</span></td><td><code>222e1fc44c4844aa</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.DiscoveryFilterApplier</span></td><td><code>ae96a3ff3c2e2bc4</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.JupiterTestEngine</span></td><td><code>c74f725c8cb223be</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.AbstractExtensionContext</span></td><td><code>1f7ed0b87a9f2cca</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.ClassExtensionContext</span></td><td><code>b85422abe06bbadd</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.ClassTestDescriptor</span></td><td><code>61a635a4acc3ee31</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.JupiterEngineDescriptor</span></td><td><code>d025635c09450d0d</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.JupiterEngineExtensionContext</span></td><td><code>7ae853fe3a80d83c</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.JupiterTestDescriptor</span></td><td><code>606e5ec97816bda5</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.LifecycleMethodUtils</span></td><td><code>19c9fba5accef0fa</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.MethodBasedTestDescriptor</span></td><td><code>65654838f58d8b44</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.MethodExtensionContext</span></td><td><code>c098f6d0bb344d56</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.TestInstanceLifecycleUtils</span></td><td><code>c42bb138e6a06252</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor</span></td><td><code>54eb6a19bd953962</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.AbstractMethodResolver</span></td><td><code>3934f16bf877b9f5</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.DiscoverySelectorResolver</span></td><td><code>a858789f976fefbc</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.JavaElementsResolver</span></td><td><code>32e9ea682e77049d</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.MethodFinder</span></td><td><code>5ea468d2eb528361</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.NestedTestsResolver</span></td><td><code>9d92451ae793af41</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.TestContainerResolver</span></td><td><code>7db010f5e9c7301d</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.TestFactoryMethodResolver</span></td><td><code>59fd27320e375440</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.TestMethodResolver</span></td><td><code>1417c6356fa4b27f</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.TestTemplateMethodResolver</span></td><td><code>47563eb55cd35171</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.predicates.IsInnerClass</span></td><td><code>f7d9846d00228720</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.predicates.IsNestedTestClass</span></td><td><code>e47ff7cd33073803</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.predicates.IsPotentialTestContainer</span></td><td><code>0f8df015b2d5841a</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.predicates.IsScannableTestClass</span></td><td><code>839db992754219f6</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.predicates.IsTestClassWithTests</span></td><td><code>5ab134cc6ef3a81f</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.predicates.IsTestFactoryMethod</span></td><td><code>a2c68978bd6bfbc6</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.predicates.IsTestMethod</span></td><td><code>8b244977e441886e</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.predicates.IsTestTemplateMethod</span></td><td><code>0baf1066bf0cbad7</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.discovery.predicates.IsTestableMethod</span></td><td><code>59a0b58a40803fe2</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.execution.ConditionEvaluator</span></td><td><code>fba35d945644501d</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.execution.ExecutableInvoker</span></td><td><code>d64b9ef7a154ea95</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.execution.ExtensionValuesStore</span></td><td><code>2517eb7835ca6234</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.execution.JupiterEngineExecutionContext</span></td><td><code>65be276e3a954a94</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.execution.JupiterEngineExecutionContext.Builder</span></td><td><code>dd69537274ccbffc</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.execution.JupiterEngineExecutionContext.State</span></td><td><code>38616672a2502408</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.execution.ThrowableCollector</span></td><td><code>92102b13561afdcf</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.extension.DisabledCondition</span></td><td><code>a967493a244329fa</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.extension.ExtensionRegistry</span></td><td><code>20b847fc63fd255b</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.extension.RepeatedTestExtension</span></td><td><code>1b7914cc8cf83732</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.extension.TestInfoParameterResolver</span></td><td><code>1b5b370a56807cae</code></td></tr><tr><td><span class="el_class">org.junit.jupiter.engine.extension.TestReporterParameterResolver</span></td><td><code>839c7c31b3ec6390</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.logging.LoggerFactory</span></td><td><code>ca4e1a8773fb9bed</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.logging.LoggerFactory.DelegatingLogger</span></td><td><code>fd74fe2bb4edddd0</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.AnnotationUtils</span></td><td><code>32499b01efc144e8</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.AnnotationUtils.AnnotationCacheKey</span></td><td><code>f04082259bc4a6ab</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.ClassLoaderUtils</span></td><td><code>ebded5f4ecebd9d8</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.ClassUtils</span></td><td><code>4982a89773933a90</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.ClasspathScanner</span></td><td><code>8425ab535628f6b9</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.CollectionUtils</span></td><td><code>59532d0e14166bc8</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.Preconditions</span></td><td><code>f9207dc44e9d043d</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.ReflectionUtils</span></td><td><code>4d39f1033ae8eb12</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.ReflectionUtils.HierarchyTraversalMode</span></td><td><code>b267f8ac562d551e</code></td></tr><tr><td><span class="el_class">org.junit.platform.commons.util.StringUtils</span></td><td><code>3441f99393e2406b</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.CompositeFilter</span></td><td><code>d9d6482243cc9fa3</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.CompositeFilter.1</span></td><td><code>75dffc26c0811b9d</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.ExecutionRequest</span></td><td><code>ed3835cc21e5a048</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.Filter</span></td><td><code>f932423ccd3b54bf</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.FilterResult</span></td><td><code>bf731bc7f64ce694</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.TestDescriptor</span></td><td><code>e9574ca206cded64</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.TestDescriptor.Type</span></td><td><code>eb97fc5a29f3ee3a</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.TestExecutionResult</span></td><td><code>abbab174d32db912</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.TestExecutionResult.Status</span></td><td><code>da0473a55d05e891</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.UniqueId</span></td><td><code>d23a178963e86ca7</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.UniqueId.Segment</span></td><td><code>54a2765f04c8cab7</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.UniqueIdFormat</span></td><td><code>c860ade4b928ce32</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.discovery.ClassSelector</span></td><td><code>228aa96d72021db2</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.discovery.DiscoverySelectors</span></td><td><code>8fefc6f1651cc3bd</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.descriptor.AbstractTestDescriptor</span></td><td><code>2bfbf25c43491443</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.descriptor.ClassSource</span></td><td><code>9727c5551a632c40</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.descriptor.EngineDescriptor</span></td><td><code>b7dbf6dfb794516c</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.descriptor.MethodSource</span></td><td><code>0a1b0f0f95f17b77</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.filter.ClasspathScanningSupport</span></td><td><code>8223a02c2b9d8c89</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.hierarchical.ExecutionTracker</span></td><td><code>cbd37bfd76595d62</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.hierarchical.HierarchicalTestEngine</span></td><td><code>410766a2a07e44b1</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor</span></td><td><code>7b43a475463d740e</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.hierarchical.HierarchicalTestExecutor.1</span></td><td><code>197b854565198af0</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.hierarchical.Node</span></td><td><code>8a5379bd364a5bf6</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.hierarchical.Node.SkipResult</span></td><td><code>d4551dfb7a813206</code></td></tr><tr><td><span class="el_class">org.junit.platform.engine.support.hierarchical.SingleTestExecutor</span></td><td><code>d75bd01628eef7be</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.TestIdentifier</span></td><td><code>225bb434f8f223e2</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.TestPlan</span></td><td><code>9a2b71b572924cbc</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.DefaultDiscoveryRequest</span></td><td><code>7dda3ad9a0e6a666</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.DefaultLauncher</span></td><td><code>1a1f88af87dc6ec1</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.ExecutionListenerAdapter</span></td><td><code>52cf3c3c69d4dfba</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.LauncherConfigurationParameters</span></td><td><code>ef55cacb5e47a902</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.LauncherDiscoveryRequestBuilder</span></td><td><code>e78a71b91c159e69</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.LauncherFactory</span></td><td><code>e2bd67b8a72737b5</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.Root</span></td><td><code>32394ca895f9fb9a</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.ServiceLoaderTestEngineRegistry</span></td><td><code>7c054c4cf76cb0f6</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.ServiceLoaderTestExecutionListenerRegistry</span></td><td><code>2299bac1075a6bf3</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.TestExecutionListenerRegistry</span></td><td><code>190f4fb2b0ab865d</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.core.TestExecutionListenerRegistry.CompositeTestExecutionListener</span></td><td><code>7538d2d860e1f9cb</code></td></tr><tr><td><span class="el_class">org.junit.platform.launcher.listeners.LegacyReportingUtils</span></td><td><code>f3c021e100a54063</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.AbstractCharsetProvider</span></td><td><code>9a72c9e39fdac365</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.Big5</span></td><td><code>7f7799a4239d3d01</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.EUC_CN</span></td><td><code>daed57327edf3023</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.EUC_JP</span></td><td><code>f0c718c92ac0cabc</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.EUC_KR</span></td><td><code>3d50c0e84dcd54e6</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.EUC_TW</span></td><td><code>4fbeba8ab3b0661e</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.ExtendedCharsets</span></td><td><code>7715d4380ab405a8</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM037</span></td><td><code>b9b8c9ec2e056149</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM1047</span></td><td><code>e368b4c70681ed2e</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM277</span></td><td><code>7b5b55809ca60de9</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM278</span></td><td><code>326393dad6851723</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM280</span></td><td><code>9d9334ffd18e4e40</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM284</span></td><td><code>01c4a83f23f1b53d</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM285</span></td><td><code>be059d13431c468f</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM297</span></td><td><code>09fd5ed2f7ce33cb</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM420</span></td><td><code>dfa9e617bd0f689b</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM424</span></td><td><code>edd26be1d2ed5a00</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM500</span></td><td><code>58b3c90789d546a5</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM860</span></td><td><code>4bc938afb837212f</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM870</span></td><td><code>ad9dcff6cd8f8661</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM871</span></td><td><code>ef144f207fc359f5</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.IBM918</span></td><td><code>a83d0db73f26c654</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.ISO2022</span></td><td><code>92bf931cea04ba69</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.ISO2022_JP</span></td><td><code>4839eaacbb85c150</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.ISO2022_KR</span></td><td><code>e2e5b9cbb3d44823</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.ISO_8859_11</span></td><td><code>cb3ce4182f6717e0</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.ISO_8859_3</span></td><td><code>550e89cba9076937</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.ISO_8859_6</span></td><td><code>7e467e744bd3ad13</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.ISO_8859_8</span></td><td><code>bb93af1e031c8697</code></td></tr><tr><td><span class="el_class">sun.nio.cs.ext.MacRoman</span></td><td><code>7007321b9dd9c10d</code></td></tr><tr><td><span class="el_class">sun.text.resources.cldr.ext.FormatData_fr</span></td><td><code>cfe4ef8ff7428512</code></td></tr><tr><td><span class="el_class">sun.util.resources.cldr.provider.CLDRLocaleDataMetaInfo</span></td><td><code>888d0e6a76acb845</code></td></tr><tr><td><span class="el_class">sun.util.resources.provider.LocaleDataProvider</span></td><td><code>36ca29d59ab35e5c</code></td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
diff --git a/target/site/jacoco/jacoco.csv b/target/site/jacoco/jacoco.csv
index 555d233..7b39bb6 100644
--- a/target/site/jacoco/jacoco.csv
+++ b/target/site/jacoco/jacoco.csv
@@ -2,13 +2,13 @@ GROUP,PACKAGE,CLASS,INSTRUCTION_MISSED,INSTRUCTION_COVERED,BRANCH_MISSED,BRANCH_
spoteezer,musichub.util,PathValidation,0,39,0,4,0,10,0,4,0,2
spoteezer,musichub.util,LogHandler,0,46,0,0,0,11,0,3,0,3
spoteezer,musichub.util,XMLHandler,6,66,0,0,4,21,0,4,0,4
-spoteezer,musichub.util,Policy,53,0,5,0,20,0,6,0,3,0
+spoteezer,musichub.util,Policy,60,0,5,0,24,0,6,0,3,0
spoteezer,musichub.business,Album,330,0,14,0,84,0,16,0,9,0
spoteezer,musichub.business,SortByAuthor,9,0,0,0,2,0,2,0,2,0
spoteezer,musichub.business,NoAlbumFoundException,4,0,0,0,2,0,1,0,1,0
spoteezer,musichub.business,Language,3,46,0,0,1,5,1,2,1,2
spoteezer,musichub.business,SortByDate,9,0,0,0,2,0,2,0,2,0
-spoteezer,musichub.business,MusicHub,874,0,124,0,209,0,85,0,23,0
+spoteezer,musichub.business,MusicHub,973,0,140,0,228,0,95,0,25,0
spoteezer,musichub.business,Category,3,46,0,0,1,5,1,2,1,2
spoteezer,musichub.business,Song,0,105,0,6,0,26,0,12,0,7
spoteezer,musichub.business,NoPlayListFoundException,4,0,0,0,2,0,1,0,1,0
@@ -17,5 +17,5 @@ spoteezer,musichub.business,AudioBook,117,47,8,2,27,12,12,5,4,5
spoteezer,musichub.business,SortByGenre,9,0,0,0,2,0,2,0,2,0
spoteezer,musichub.business,NoElementFoundException,4,0,0,0,2,0,1,0,1,0
spoteezer,musichub.business,Genre,0,56,0,0,0,6,0,3,0,3
-spoteezer,musichub.business,AudioElement,85,181,9,2,30,42,11,5,4,5
-spoteezer,musichub.main,Main,625,0,42,0,215,0,31,0,3,0
+spoteezer,musichub.business,AudioElement,91,181,8,2,31,42,10,5,4,5
+spoteezer,musichub.main,Main,722,0,43,0,251,0,32,0,3,0
diff --git a/target/site/jacoco/jacoco.xml b/target/site/jacoco/jacoco.xml
index e10770f..30a884a 100644
--- a/target/site/jacoco/jacoco.xml
+++ b/target/site/jacoco/jacoco.xml
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?><!DOCTYPE report PUBLIC "-//JACOCO//DTD Report 1.1//EN" "report.dtd"><report name="spoteezer"><sessioninfo id="DESKTOP-M4INQND-91a7872b" start="1624793019797" dump="1624793020432"/><sessioninfo id="DESKTOP-M4INQND-11e0a096" start="1624813022092" dump="1624813022803"/><sessioninfo id="DESKTOP-M4INQND-7357f010" start="1624825407091" dump="1624825407773"/><package name="musichub/util"><class name="musichub/util/PathValidation" sourcefilename="PathValidation.java"><method name="&lt;init&gt;" desc="()V" line="23"><counter type="INSTRUCTION" missed="0" covered="7"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="isPathValid" desc="(Ljava/lang/String;)Z" line="35"><counter type="INSTRUCTION" missed="0" covered="32"/><counter type="BRANCH" missed="0" covered="4"/><counter type="LINE" missed="0" covered="8"/><counter type="COMPLEXITY" missed="0" covered="3"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="0" covered="39"/><counter type="BRANCH" missed="0" covered="4"/><counter type="LINE" missed="0" covered="10"/><counter type="COMPLEXITY" missed="0" covered="4"/><counter type="METHOD" missed="0" covered="2"/><counter type="CLASS" missed="0" covered="1"/></class><class name="musichub/util/LogHandler" sourcefilename="LogHandler.java"><method name="&lt;init&gt;" desc="()V" line="25"><counter type="INSTRUCTION" missed="0" covered="7"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="write" desc="(Ljava/lang/String;Ljava/lang/String;)V" line="38"><counter type="INSTRUCTION" missed="0" covered="26"/><counter type="LINE" missed="0" covered="5"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="read" desc="()V" line="58"><counter type="INSTRUCTION" missed="0" covered="13"/><counter type="LINE" missed="0" covered="4"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="0" covered="46"/><counter type="LINE" missed="0" covered="11"/><counter type="COMPLEXITY" missed="0" covered="3"/><counter type="METHOD" missed="0" covered="3"/><counter type="CLASS" missed="0" covered="1"/></class><class name="musichub/util/XMLHandler" sourcefilename="XMLHandler.java"><method name="&lt;init&gt;" desc="()V" line="26"><counter type="INSTRUCTION" missed="3" covered="20"/><counter type="LINE" missed="2" covered="7"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="createXMLFile" desc="(Lorg/w3c/dom/Document;Ljava/lang/String;)V" line="41"><counter type="INSTRUCTION" missed="3" covered="20"/><counter type="LINE" missed="2" covered="5"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="createXMLDocument" desc="()Lorg/w3c/dom/Document;" line="57"><counter type="INSTRUCTION" missed="0" covered="4"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="parseXMLFile" desc="(Ljava/lang/String;)Lorg/w3c/dom/NodeList;" line="61"><counter type="INSTRUCTION" missed="0" covered="22"/><counter type="LINE" missed="0" covered="8"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="6" covered="66"/><counter type="LINE" missed="4" covered="21"/><counter type="COMPLEXITY" missed="0" covered="4"/><counter type="METHOD" missed="0" covered="4"/><counter type="CLASS" missed="0" covered="1"/></class><class name="musichub/util/Policy" sourcefilename="Policy.java"><method name="&lt;init&gt;" desc="()V" line="21"><counter type="INSTRUCTION" missed="7" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="showTerm" desc="()V" line="27"><counter type="INSTRUCTION" missed="39" covered="0"/><counter type="BRANCH" missed="5" covered="0"/><counter type="LINE" missed="15" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="printAgreement" desc="()V" line="128"><counter type="INSTRUCTION" missed="7" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="53" covered="0"/><counter type="BRANCH" missed="5" covered="0"/><counter type="LINE" missed="20" covered="0"/><counter type="COMPLEXITY" missed="6" covered="0"/><counter type="METHOD" missed="3" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><sourcefile name="PathValidation.java"><line nr="23" mi="0" ci="2" mb="0" cb="0"/><line nr="24" mi="0" ci="5" mb="0" cb="0"/><line nr="35" mi="0" ci="2" mb="0" cb="0"/><line nr="37" mi="0" ci="4" mb="0" cb="0"/><line nr="38" mi="0" ci="2" mb="0" cb="2"/><line nr="39" mi="0" ci="6" mb="0" cb="0"/><line nr="40" mi="0" ci="4" mb="0" cb="2"/><line nr="41" mi="0" ci="2" mb="0" cb="0"/><line nr="45" mi="0" ci="5" mb="0" cb="0"/><line nr="46" mi="0" ci="7" mb="0" cb="0"/><counter type="INSTRUCTION" missed="0" covered="39"/><counter type="BRANCH" missed="0" covered="4"/><counter type="LINE" missed="0" covered="10"/><counter type="COMPLEXITY" missed="0" covered="4"/><counter type="METHOD" missed="0" covered="2"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="LogHandler.java"><line nr="25" mi="0" ci="2" mb="0" cb="0"/><line nr="26" mi="0" ci="5" mb="0" cb="0"/><line nr="38" mi="0" ci="5" mb="0" cb="0"/><line nr="41" mi="0" ci="5" mb="0" cb="0"/><line nr="44" mi="0" ci="5" mb="0" cb="0"/><line nr="47" mi="0" ci="10" mb="0" cb="0"/><line nr="50" mi="0" ci="1" mb="0" cb="0"/><line nr="58" mi="0" ci="5" mb="0" cb="0"/><line nr="61" mi="0" ci="3" mb="0" cb="0"/><line nr="64" mi="0" ci="4" mb="0" cb="0"/><line nr="66" mi="0" ci="1" mb="0" cb="0"/><counter type="INSTRUCTION" missed="0" covered="46"/><counter type="LINE" missed="0" covered="11"/><counter type="COMPLEXITY" missed="0" covered="3"/><counter type="METHOD" missed="0" covered="3"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="XMLHandler.java"><line nr="26" mi="0" ci="2" mb="0" cb="0"/><line nr="28" mi="0" ci="3" mb="0" cb="0"/><line nr="29" mi="0" ci="5" mb="0" cb="0"/><line nr="30" mi="0" ci="3" mb="0" cb="0"/><line nr="31" mi="0" ci="5" mb="0" cb="0"/><line nr="32" mi="1" ci="0" mb="0" cb="0"/><line nr="33" mi="2" ci="0" mb="0" cb="0"/><line nr="34" mi="0" ci="1" mb="0" cb="0"/><line nr="35" mi="0" ci="1" mb="0" cb="0"/><line nr="41" mi="0" ci="5" mb="0" cb="0"/><line nr="42" mi="0" ci="8" mb="0" cb="0"/><line nr="49" mi="0" ci="5" mb="0" cb="0"/><line nr="51" mi="1" ci="0" mb="0" cb="0"/><line nr="52" mi="2" ci="0" mb="0" cb="0"/><line nr="53" mi="0" ci="1" mb="0" cb="0"/><line nr="54" mi="0" ci="1" mb="0" cb="0"/><line nr="57" mi="0" ci="4" mb="0" cb="0"/><line nr="61" mi="0" ci="2" mb="0" cb="0"/><line nr="63" mi="0" ci="8" mb="0" cb="0"/><line nr="64" mi="0" ci="3" mb="0" cb="0"/><line nr="66" mi="0" ci="3" mb="0" cb="0"/><line nr="67" mi="0" ci="1" mb="0" cb="0"/><line nr="68" mi="0" ci="2" mb="0" cb="0"/><line nr="69" mi="0" ci="1" mb="0" cb="0"/><line nr="70" mi="0" ci="2" mb="0" cb="0"/><counter type="INSTRUCTION" missed="6" covered="66"/><counter type="LINE" missed="4" covered="21"/><counter type="COMPLEXITY" missed="0" covered="4"/><counter type="METHOD" missed="0" covered="4"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="Policy.java"><line nr="21" mi="2" ci="0" mb="0" cb="0"/><line nr="22" mi="5" ci="0" mb="0" cb="0"/><line nr="27" mi="2" ci="0" mb="0" cb="0"/><line nr="107" mi="1" ci="0" mb="0" cb="0"/><line nr="108" mi="5" ci="0" mb="0" cb="0"/><line nr="109" mi="4" ci="0" mb="0" cb="0"/><line nr="111" mi="4" ci="0" mb="2" cb="0"/><line nr="112" mi="4" ci="0" mb="3" cb="0"/><line nr="113" mi="3" ci="0" mb="0" cb="0"/><line nr="114" mi="1" ci="0" mb="0" cb="0"/><line nr="115" mi="3" ci="0" mb="0" cb="0"/><line nr="116" mi="1" ci="0" mb="0" cb="0"/><line nr="117" mi="4" ci="0" mb="0" cb="0"/><line nr="119" mi="1" ci="0" mb="0" cb="0"/><line nr="120" mi="1" ci="0" mb="0" cb="0"/><line nr="121" mi="4" ci="0" mb="0" cb="0"/><line nr="125" mi="1" ci="0" mb="0" cb="0"/><line nr="128" mi="3" ci="0" mb="0" cb="0"/><line nr="129" mi="3" ci="0" mb="0" cb="0"/><line nr="130" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="53" covered="0"/><counter type="BRANCH" missed="5" covered="0"/><counter type="LINE" missed="20" covered="0"/><counter type="COMPLEXITY" missed="6" covered="0"/><counter type="METHOD" missed="3" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><counter type="INSTRUCTION" missed="59" covered="151"/><counter type="BRANCH" missed="5" covered="4"/><counter type="LINE" missed="24" covered="42"/><counter type="COMPLEXITY" missed="6" covered="11"/><counter type="METHOD" missed="3" covered="9"/><counter type="CLASS" missed="1" covered="3"/></package><package name="musichub/business"><class name="musichub/business/Album" sourcefilename="Album.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/util/ArrayList;)V" line="21"><counter type="INSTRUCTION" missed="33" covered="0"/><counter type="LINE" missed="12" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V" line="35"><counter type="INSTRUCTION" missed="34" covered="0"/><counter type="LINE" missed="12" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;init&gt;" desc="(Lorg/w3c/dom/Element;)V" line="49"><counter type="INSTRUCTION" missed="112" covered="0"/><counter type="BRANCH" missed="12" covered="0"/><counter type="LINE" missed="26" covered="0"/><counter type="COMPLEXITY" missed="7" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="addSong" desc="(Ljava/util/UUID;)V" line="89"><counter type="INSTRUCTION" missed="6" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getSongs" desc="()Ljava/util/List;" line="94"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getSongsRandomly" desc="()Ljava/util/ArrayList;" line="98"><counter type="INSTRUCTION" missed="7" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getTitle" desc="()Ljava/lang/String;" line="104"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getDate" desc="()Ljava/util/Date;" line="108"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="createXMLElement" desc="(Lorg/w3c/dom/Document;Lorg/w3c/dom/Element;)V" line="112"><counter type="INSTRUCTION" missed="129" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="26" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="330" covered="0"/><counter type="BRANCH" missed="14" covered="0"/><counter type="LINE" missed="84" covered="0"/><counter type="COMPLEXITY" missed="16" covered="0"/><counter type="METHOD" missed="9" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="musichub/business/SortByAuthor" sourcefilename="MusicHub.java"><method name="&lt;init&gt;" desc="()V" line="27"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="compare" desc="(Lmusichub/business/AudioElement;Lmusichub/business/AudioElement;)I" line="29"><counter type="INSTRUCTION" missed="6" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="9" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="2" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="musichub/business/NoAlbumFoundException" sourcefilename="NoAlbumFoundException.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;)V" line="6"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="musichub/business/Language" sourcefilename="Language.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;ILjava/lang/String;)V" line="7"><counter type="INSTRUCTION" missed="0" covered="8"/><counter type="LINE" missed="0" covered="3"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getLanguage" desc="()Ljava/lang/String;" line="12"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;clinit&gt;" desc="()V" line="3"><counter type="INSTRUCTION" missed="0" covered="38"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="3" covered="46"/><counter type="LINE" missed="1" covered="5"/><counter type="COMPLEXITY" missed="1" covered="2"/><counter type="METHOD" missed="1" covered="2"/><counter type="CLASS" missed="0" covered="1"/></class><class name="musichub/business/SortByDate" sourcefilename="MusicHub.java"><method name="&lt;init&gt;" desc="()V" line="15"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="compare" desc="(Lmusichub/business/Album;Lmusichub/business/Album;)I" line="17"><counter type="INSTRUCTION" missed="6" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="9" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="2" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="musichub/business/MusicHub" sourcefilename="MusicHub.java"><method name="&lt;init&gt;" desc="()V" line="41"><counter type="INSTRUCTION" missed="29" covered="0"/><counter type="LINE" missed="9" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="addElement" desc="(Lmusichub/business/AudioElement;)V" line="53"><counter type="INSTRUCTION" missed="6" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="addAlbum" desc="(Lmusichub/business/Album;)V" line="57"><counter type="INSTRUCTION" missed="6" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="addPlaylist" desc="(Lmusichub/business/PlayList;)V" line="61"><counter type="INSTRUCTION" missed="6" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="deletePlayList" desc="(Ljava/lang/String;)V" line="66"><counter type="INSTRUCTION" missed="40" covered="0"/><counter type="BRANCH" missed="8" covered="0"/><counter type="LINE" missed="11" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="albums" desc="()Ljava/util/Iterator;" line="81"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="playlists" desc="()Ljava/util/Iterator;" line="85"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="elements" desc="()Ljava/util/Iterator;" line="89"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getAlbumsTitlesSortedByDate" desc="()Ljava/lang/String;" line="93"><counter type="INSTRUCTION" missed="32" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getAudiobooksTitlesSortedByAuthor" desc="()Ljava/lang/String;" line="101"><counter type="INSTRUCTION" missed="53" covered="0"/><counter type="BRANCH" missed="6" covered="0"/><counter type="LINE" missed="9" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getAlbumSongs" desc="(Ljava/lang/String;)Ljava/util/List;" line="113"><counter type="INSTRUCTION" missed="73" covered="0"/><counter type="BRANCH" missed="14" covered="0"/><counter type="LINE" missed="15" covered="0"/><counter type="COMPLEXITY" missed="8" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getAlbumSongsSortedByGenre" desc="(Ljava/lang/String;)Ljava/util/List;" line="135"><counter type="INSTRUCTION" missed="79" covered="0"/><counter type="BRANCH" missed="14" covered="0"/><counter type="LINE" missed="16" covered="0"/><counter type="COMPLEXITY" missed="8" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="addElementToAlbum" desc="(Ljava/lang/String;Ljava/lang/String;)V" line="158"><counter type="INSTRUCTION" missed="82" covered="0"/><counter type="BRANCH" missed="12" covered="0"/><counter type="LINE" missed="20" covered="0"/><counter type="COMPLEXITY" missed="7" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="addElementToPlayList" desc="(Ljava/lang/String;Ljava/lang/String;)V" line="187"><counter type="INSTRUCTION" missed="82" covered="0"/><counter type="BRANCH" missed="12" covered="0"/><counter type="LINE" missed="20" covered="0"/><counter type="COMPLEXITY" missed="7" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="loadAlbums" desc="()V" line="218"><counter type="INSTRUCTION" missed="44" covered="0"/><counter type="BRANCH" missed="8" covered="0"/><counter type="LINE" missed="11" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="loadPlaylists" desc="()V" line="236"><counter type="INSTRUCTION" missed="44" covered="0"/><counter type="BRANCH" missed="8" covered="0"/><counter type="LINE" missed="11" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="loadElements" desc="()V" line="254"><counter type="INSTRUCTION" missed="64" covered="0"/><counter type="BRANCH" missed="10" covered="0"/><counter type="LINE" missed="18" covered="0"/><counter type="COMPLEXITY" missed="6" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="saveAlbums" desc="()V" line="282"><counter type="INSTRUCTION" missed="36" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="10" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="savePlayLists" desc="()V" line="298"><counter type="INSTRUCTION" missed="36" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="10" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="saveElements" desc="()V" line="314"><counter type="INSTRUCTION" missed="47" covered="0"/><counter type="BRANCH" missed="8" covered="0"/><counter type="LINE" missed="12" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getAudioElement" desc="(Ljava/util/List;Ljava/lang/String;)V" line="335"><counter type="INSTRUCTION" missed="19" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="searchAudioElement" desc="()V" line="344"><counter type="INSTRUCTION" missed="71" covered="0"/><counter type="BRANCH" missed="10" covered="0"/><counter type="LINE" missed="14" covered="0"/><counter type="COMPLEXITY" missed="6" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;clinit&gt;" desc="()V" line="34"><counter type="INSTRUCTION" missed="13" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="874" covered="0"/><counter type="BRANCH" missed="124" covered="0"/><counter type="LINE" missed="209" covered="0"/><counter type="COMPLEXITY" missed="85" covered="0"/><counter type="METHOD" missed="23" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="musichub/business/Category" sourcefilename="Category.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;ILjava/lang/String;)V" line="7"><counter type="INSTRUCTION" missed="0" covered="8"/><counter type="LINE" missed="0" covered="3"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getCategory" desc="()Ljava/lang/String;" line="12"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;clinit&gt;" desc="()V" line="3"><counter type="INSTRUCTION" missed="0" covered="38"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="3" covered="46"/><counter type="LINE" missed="1" covered="5"/><counter type="COMPLEXITY" missed="1" covered="2"/><counter type="METHOD" missed="1" covered="2"/><counter type="CLASS" missed="0" covered="1"/></class><class name="musichub/business/Song" sourcefilename="Song.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V" line="11"><counter type="INSTRUCTION" missed="0" covered="11"/><counter type="LINE" missed="0" covered="3"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V" line="16"><counter type="INSTRUCTION" missed="0" covered="10"/><counter type="LINE" missed="0" covered="3"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;init&gt;" desc="(Lorg/w3c/dom/Element;)V" line="21"><counter type="INSTRUCTION" missed="0" covered="12"/><counter type="LINE" missed="0" covered="3"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getGenre" desc="()Ljava/lang/String;" line="26"><counter type="INSTRUCTION" missed="0" covered="4"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="setGenre" desc="(Ljava/lang/String;)V" line="30"><counter type="INSTRUCTION" missed="0" covered="33"/><counter type="BRANCH" missed="0" covered="6"/><counter type="LINE" missed="0" covered="8"/><counter type="COMPLEXITY" missed="0" covered="6"/><counter type="METHOD" missed="0" covered="1"/></method><method name="toString" desc="()Ljava/lang/String;" line="41"><counter type="INSTRUCTION" missed="0" covered="6"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="createXMLElement" desc="(Lorg/w3c/dom/Document;Lorg/w3c/dom/Element;)V" line="46"><counter type="INSTRUCTION" missed="0" covered="29"/><counter type="LINE" missed="0" covered="7"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="0" covered="105"/><counter type="BRANCH" missed="0" covered="6"/><counter type="LINE" missed="0" covered="26"/><counter type="COMPLEXITY" missed="0" covered="12"/><counter type="METHOD" missed="0" covered="7"/><counter type="CLASS" missed="0" covered="1"/></class><class name="musichub/business/NoPlayListFoundException" sourcefilename="NoPlayListFoundException.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;)V" line="6"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="musichub/business/PlayList" sourcefilename="PlayList.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;Ljava/util/ArrayList;)V" line="16"><counter type="INSTRUCTION" missed="0" covered="13"/><counter type="LINE" missed="0" covered="5"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;init&gt;" desc="(Ljava/lang/String;)V" line="22"><counter type="INSTRUCTION" missed="0" covered="14"/><counter type="LINE" missed="0" covered="5"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;init&gt;" desc="(Lorg/w3c/dom/Element;)V" line="28"><counter type="INSTRUCTION" missed="12" covered="76"/><counter type="BRANCH" missed="4" covered="8"/><counter type="LINE" missed="5" covered="18"/><counter type="COMPLEXITY" missed="4" covered="3"/><counter type="METHOD" missed="0" covered="1"/></method><method name="addElement" desc="(Ljava/util/UUID;)V" line="66"><counter type="INSTRUCTION" missed="0" covered="6"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getElements" desc="()Ljava/util/ArrayList;" line="70"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getTitle" desc="()Ljava/lang/String;" line="74"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="createXMLElement" desc="(Lorg/w3c/dom/Document;Lorg/w3c/dom/Element;)V" line="78"><counter type="INSTRUCTION" missed="20" covered="55"/><counter type="BRANCH" missed="1" covered="1"/><counter type="LINE" missed="4" covered="12"/><counter type="COMPLEXITY" missed="1" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="32" covered="170"/><counter type="BRANCH" missed="5" covered="9"/><counter type="LINE" missed="9" covered="44"/><counter type="COMPLEXITY" missed="5" covered="9"/><counter type="METHOD" missed="0" covered="7"/><counter type="CLASS" missed="0" covered="1"/></class><class name="musichub/business/AudioBook" sourcefilename="AudioBook.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V" line="11"><counter type="INSTRUCTION" missed="14" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V" line="17"><counter type="INSTRUCTION" missed="0" covered="13"/><counter type="LINE" missed="0" covered="4"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;init&gt;" desc="(Lorg/w3c/dom/Element;)V" line="23"><counter type="INSTRUCTION" missed="20" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getLanguage" desc="()Lmusichub/business/Language;" line="29"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="setLanguage" desc="(Ljava/lang/String;)V" line="33"><counter type="INSTRUCTION" missed="15" covered="14"/><counter type="BRANCH" missed="4" covered="1"/><counter type="LINE" missed="4" covered="3"/><counter type="COMPLEXITY" missed="4" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getCategory" desc="()Lmusichub/business/Category;" line="43"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="setCategory" desc="(Ljava/lang/String;)V" line="47"><counter type="INSTRUCTION" missed="15" covered="14"/><counter type="BRANCH" missed="4" covered="1"/><counter type="LINE" missed="4" covered="3"/><counter type="COMPLEXITY" missed="4" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="toString" desc="()Ljava/lang/String;" line="58"><counter type="INSTRUCTION" missed="8" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="createXMLElement" desc="(Lorg/w3c/dom/Document;Lorg/w3c/dom/Element;)V" line="64"><counter type="INSTRUCTION" missed="45" covered="0"/><counter type="LINE" missed="10" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="117" covered="47"/><counter type="BRANCH" missed="8" covered="2"/><counter type="LINE" missed="27" covered="12"/><counter type="COMPLEXITY" missed="12" covered="5"/><counter type="METHOD" missed="4" covered="5"/><counter type="CLASS" missed="0" covered="1"/></class><class name="musichub/business/SortByGenre" sourcefilename="MusicHub.java"><method name="&lt;init&gt;" desc="()V" line="21"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="compare" desc="(Lmusichub/business/Song;Lmusichub/business/Song;)I" line="23"><counter type="INSTRUCTION" missed="6" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="9" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="2" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="musichub/business/NoElementFoundException" sourcefilename="NoElementFoundException.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;)V" line="6"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="musichub/business/Genre" sourcefilename="Genre.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;ILjava/lang/String;)V" line="7"><counter type="INSTRUCTION" missed="0" covered="8"/><counter type="LINE" missed="0" covered="3"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getGenre" desc="()Ljava/lang/String;" line="12"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;clinit&gt;" desc="()V" line="3"><counter type="INSTRUCTION" missed="0" covered="45"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="0" covered="56"/><counter type="LINE" missed="0" covered="6"/><counter type="COMPLEXITY" missed="0" covered="3"/><counter type="METHOD" missed="0" covered="3"/><counter type="CLASS" missed="0" covered="1"/></class><class name="musichub/business/AudioElement" sourcefilename="AudioElement.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V" line="24"><counter type="INSTRUCTION" missed="0" covered="19"/><counter type="LINE" missed="0" covered="7"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V" line="32"><counter type="INSTRUCTION" missed="0" covered="18"/><counter type="LINE" missed="0" covered="7"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;init&gt;" desc="(Lorg/w3c/dom/Element;)V" line="40"><counter type="INSTRUCTION" missed="8" covered="55"/><counter type="BRANCH" missed="2" covered="2"/><counter type="LINE" missed="3" covered="11"/><counter type="COMPLEXITY" missed="2" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getUUID" desc="()Ljava/util/UUID;" line="59"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getArtist" desc="()Ljava/lang/String;" line="63"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getTitle" desc="()Ljava/lang/String;" line="67"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="toString" desc="()Ljava/lang/String;" line="71"><counter type="INSTRUCTION" missed="0" covered="10"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="createXMLElement" desc="(Lorg/w3c/dom/Document;Lorg/w3c/dom/Element;)V" line="75"><counter type="INSTRUCTION" missed="0" covered="79"/><counter type="LINE" missed="0" covered="16"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="manageAudioElement" desc="()V" line="99"><counter type="INSTRUCTION" missed="68" covered="0"/><counter type="BRANCH" missed="7" covered="0"/><counter type="LINE" missed="24" covered="0"/><counter type="COMPLEXITY" missed="6" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="85" covered="181"/><counter type="BRANCH" missed="9" covered="2"/><counter type="LINE" missed="30" covered="42"/><counter type="COMPLEXITY" missed="11" covered="5"/><counter type="METHOD" missed="4" covered="5"/><counter type="CLASS" missed="0" covered="1"/></class><sourcefile name="MusicHub.java"><line nr="15" mi="3" ci="0" mb="0" cb="0"/><line nr="17" mi="6" ci="0" mb="0" cb="0"/><line nr="21" mi="3" ci="0" mb="0" cb="0"/><line nr="23" mi="6" ci="0" mb="0" cb="0"/><line nr="27" mi="3" ci="0" mb="0" cb="0"/><line nr="29" mi="6" ci="0" mb="0" cb="0"/><line nr="34" mi="3" ci="0" mb="0" cb="0"/><line nr="35" mi="3" ci="0" mb="0" cb="0"/><line nr="36" mi="3" ci="0" mb="0" cb="0"/><line nr="37" mi="4" ci="0" mb="0" cb="0"/><line nr="41" mi="5" ci="0" mb="0" cb="0"/><line nr="43" mi="2" ci="0" mb="0" cb="0"/><line nr="44" mi="5" ci="0" mb="0" cb="0"/><line nr="45" mi="5" ci="0" mb="0" cb="0"/><line nr="46" mi="5" ci="0" mb="0" cb="0"/><line nr="47" mi="2" ci="0" mb="0" cb="0"/><line nr="48" mi="2" ci="0" mb="0" cb="0"/><line nr="49" mi="2" ci="0" mb="0" cb="0"/><line nr="50" mi="1" ci="0" mb="0" cb="0"/><line nr="53" mi="5" ci="0" mb="0" cb="0"/><line nr="54" mi="1" ci="0" mb="0" cb="0"/><line nr="57" mi="5" ci="0" mb="0" cb="0"/><line nr="58" mi="1" ci="0" mb="0" cb="0"/><line nr="61" mi="5" ci="0" mb="0" cb="0"/><line nr="62" mi="1" ci="0" mb="0" cb="0"/><line nr="66" mi="2" ci="0" mb="0" cb="0"/><line nr="67" mi="2" ci="0" mb="0" cb="0"/><line nr="68" mi="11" ci="0" mb="2" cb="0"/><line nr="69" mi="5" ci="0" mb="2" cb="0"/><line nr="70" mi="2" ci="0" mb="0" cb="0"/><line nr="71" mi="1" ci="0" mb="0" cb="0"/><line nr="73" mi="1" ci="0" mb="0" cb="0"/><line nr="75" mi="2" ci="0" mb="2" cb="0"/><line nr="76" mi="5" ci="0" mb="0" cb="0"/><line nr="77" mi="8" ci="0" mb="2" cb="0"/><line nr="78" mi="1" ci="0" mb="0" cb="0"/><line nr="81" mi="4" ci="0" mb="0" cb="0"/><line nr="85" mi="4" ci="0" mb="0" cb="0"/><line nr="89" mi="4" ci="0" mb="0" cb="0"/><line nr="93" mi="4" ci="0" mb="0" cb="0"/><line nr="94" mi="6" ci="0" mb="0" cb="0"/><line nr="95" mi="11" ci="0" mb="2" cb="0"/><line nr="96" mi="8" ci="0" mb="0" cb="0"/><line nr="97" mi="3" ci="0" mb="0" cb="0"/><line nr="101" mi="4" ci="0" mb="0" cb="0"/><line nr="102" mi="4" ci="0" mb="0" cb="0"/><line nr="103" mi="11" ci="0" mb="2" cb="0"/><line nr="104" mi="4" ci="0" mb="2" cb="0"/><line nr="105" mi="4" ci="0" mb="0" cb="0"/><line nr="106" mi="5" ci="0" mb="0" cb="0"/><line nr="107" mi="10" ci="0" mb="2" cb="0"/><line nr="108" mi="8" ci="0" mb="0" cb="0"/><line nr="109" mi="3" ci="0" mb="0" cb="0"/><line nr="113" mi="2" ci="0" mb="0" cb="0"/><line nr="114" mi="4" ci="0" mb="0" cb="0"/><line nr="115" mi="11" ci="0" mb="2" cb="0"/><line nr="116" mi="5" ci="0" mb="2" cb="0"/><line nr="117" mi="2" ci="0" mb="0" cb="0"/><line nr="118" mi="1" ci="0" mb="0" cb="0"/><line nr="120" mi="1" ci="0" mb="0" cb="0"/><line nr="121" mi="7" ci="0" mb="2" cb="0"/><line nr="123" mi="3" ci="0" mb="0" cb="0"/><line nr="124" mi="10" ci="0" mb="2" cb="0"/><line nr="125" mi="12" ci="0" mb="2" cb="0"/><line nr="126" mi="3" ci="0" mb="2" cb="0"/><line nr="127" mi="9" ci="0" mb="2" cb="0"/><line nr="129" mi="1" ci="0" mb="0" cb="0"/><line nr="130" mi="2" ci="0" mb="0" cb="0"/><line nr="135" mi="2" ci="0" mb="0" cb="0"/><line nr="136" mi="4" ci="0" mb="0" cb="0"/><line nr="137" mi="11" ci="0" mb="2" cb="0"/><line nr="138" mi="5" ci="0" mb="2" cb="0"/><line nr="139" mi="2" ci="0" mb="0" cb="0"/><line nr="140" mi="1" ci="0" mb="0" cb="0"/><line nr="142" mi="1" ci="0" mb="0" cb="0"/><line nr="143" mi="7" ci="0" mb="2" cb="0"/><line nr="145" mi="3" ci="0" mb="0" cb="0"/><line nr="146" mi="10" ci="0" mb="2" cb="0"/><line nr="147" mi="12" ci="0" mb="2" cb="0"/><line nr="148" mi="3" ci="0" mb="2" cb="0"/><line nr="149" mi="10" ci="0" mb="2" cb="0"/><line nr="151" mi="1" ci="0" mb="0" cb="0"/><line nr="152" mi="5" ci="0" mb="0" cb="0"/><line nr="153" mi="2" ci="0" mb="0" cb="0"/><line nr="158" mi="2" ci="0" mb="0" cb="0"/><line nr="160" mi="2" ci="0" mb="0" cb="0"/><line nr="161" mi="9" ci="0" mb="2" cb="0"/><line nr="162" mi="9" ci="0" mb="2" cb="0"/><line nr="163" mi="6" ci="0" mb="0" cb="0"/><line nr="164" mi="2" ci="0" mb="0" cb="0"/><line nr="165" mi="1" ci="0" mb="0" cb="0"/><line nr="169" mi="2" ci="0" mb="2" cb="0"/><line nr="170" mi="2" ci="0" mb="0" cb="0"/><line nr="171" mi="11" ci="0" mb="2" cb="0"/><line nr="172" mi="5" ci="0" mb="2" cb="0"/><line nr="173" mi="2" ci="0" mb="0" cb="0"/><line nr="174" mi="1" ci="0" mb="0" cb="0"/><line nr="176" mi="1" ci="0" mb="0" cb="0"/><line nr="177" mi="2" ci="0" mb="2" cb="0"/><line nr="178" mi="4" ci="0" mb="0" cb="0"/><line nr="180" mi="7" ci="0" mb="0" cb="0"/><line nr="181" mi="6" ci="0" mb="0" cb="0"/><line nr="182" mi="7" ci="0" mb="0" cb="0"/><line nr="184" mi="1" ci="0" mb="0" cb="0"/><line nr="187" mi="2" ci="0" mb="0" cb="0"/><line nr="189" mi="2" ci="0" mb="0" cb="0"/><line nr="191" mi="9" ci="0" mb="2" cb="0"/><line nr="192" mi="9" ci="0" mb="2" cb="0"/><line nr="193" mi="6" ci="0" mb="0" cb="0"/><line nr="194" mi="2" ci="0" mb="0" cb="0"/><line nr="195" mi="1" ci="0" mb="0" cb="0"/><line nr="199" mi="2" ci="0" mb="2" cb="0"/><line nr="200" mi="2" ci="0" mb="0" cb="0"/><line nr="201" mi="11" ci="0" mb="2" cb="0"/><line nr="202" mi="5" ci="0" mb="2" cb="0"/><line nr="203" mi="2" ci="0" mb="0" cb="0"/><line nr="204" mi="1" ci="0" mb="0" cb="0"/><line nr="206" mi="1" ci="0" mb="0" cb="0"/><line nr="207" mi="2" ci="0" mb="2" cb="0"/><line nr="208" mi="4" ci="0" mb="0" cb="0"/><line nr="210" mi="7" ci="0" mb="0" cb="0"/><line nr="211" mi="6" ci="0" mb="0" cb="0"/><line nr="213" mi="7" ci="0" mb="0" cb="0"/><line nr="215" mi="1" ci="0" mb="0" cb="0"/><line nr="218" mi="5" ci="0" mb="0" cb="0"/><line nr="219" mi="3" ci="0" mb="2" cb="0"/><line nr="221" mi="8" ci="0" mb="2" cb="0"/><line nr="222" mi="6" ci="0" mb="2" cb="0"/><line nr="223" mi="5" ci="0" mb="0" cb="0"/><line nr="224" mi="5" ci="0" mb="2" cb="0"/><line nr="226" mi="6" ci="0" mb="0" cb="0"/><line nr="227" mi="1" ci="0" mb="0" cb="0"/><line nr="228" mi="3" ci="0" mb="0" cb="0"/><line nr="229" mi="1" ci="0" mb="0" cb="0"/><line nr="233" mi="1" ci="0" mb="0" cb="0"/><line nr="236" mi="5" ci="0" mb="0" cb="0"/><line nr="237" mi="3" ci="0" mb="2" cb="0"/><line nr="239" mi="8" ci="0" mb="2" cb="0"/><line nr="240" mi="6" ci="0" mb="2" cb="0"/><line nr="241" mi="5" ci="0" mb="0" cb="0"/><line nr="242" mi="5" ci="0" mb="2" cb="0"/><line nr="244" mi="6" ci="0" mb="0" cb="0"/><line nr="245" mi="1" ci="0" mb="0" cb="0"/><line nr="246" mi="3" ci="0" mb="0" cb="0"/><line nr="247" mi="1" ci="0" mb="0" cb="0"/><line nr="251" mi="1" ci="0" mb="0" cb="0"/><line nr="254" mi="5" ci="0" mb="0" cb="0"/><line nr="255" mi="3" ci="0" mb="2" cb="0"/><line nr="257" mi="8" ci="0" mb="2" cb="0"/><line nr="258" mi="6" ci="0" mb="2" cb="0"/><line nr="259" mi="5" ci="0" mb="0" cb="0"/><line nr="260" mi="5" ci="0" mb="2" cb="0"/><line nr="262" mi="5" ci="0" mb="0" cb="0"/><line nr="263" mi="3" ci="0" mb="0" cb="0"/><line nr="264" mi="1" ci="0" mb="0" cb="0"/><line nr="265" mi="3" ci="0" mb="0" cb="0"/><line nr="266" mi="1" ci="0" mb="0" cb="0"/><line nr="268" mi="5" ci="0" mb="2" cb="0"/><line nr="270" mi="5" ci="0" mb="0" cb="0"/><line nr="271" mi="3" ci="0" mb="0" cb="0"/><line nr="272" mi="1" ci="0" mb="0" cb="0"/><line nr="273" mi="3" ci="0" mb="0" cb="0"/><line nr="274" mi="1" ci="0" mb="0" cb="0"/><line nr="278" mi="1" ci="0" mb="0" cb="0"/><line nr="282" mi="4" ci="0" mb="0" cb="0"/><line nr="283" mi="3" ci="0" mb="2" cb="0"/><line nr="286" mi="4" ci="0" mb="0" cb="0"/><line nr="287" mi="4" ci="0" mb="0" cb="0"/><line nr="290" mi="6" ci="0" mb="2" cb="0"/><line nr="291" mi="4" ci="0" mb="0" cb="0"/><line nr="292" mi="4" ci="0" mb="0" cb="0"/><line nr="293" mi="1" ci="0" mb="0" cb="0"/><line nr="294" mi="5" ci="0" mb="0" cb="0"/><line nr="295" mi="1" ci="0" mb="0" cb="0"/><line nr="298" mi="4" ci="0" mb="0" cb="0"/><line nr="299" mi="3" ci="0" mb="2" cb="0"/><line nr="302" mi="4" ci="0" mb="0" cb="0"/><line nr="303" mi="4" ci="0" mb="0" cb="0"/><line nr="306" mi="6" ci="0" mb="2" cb="0"/><line nr="307" mi="4" ci="0" mb="0" cb="0"/><line nr="308" mi="4" ci="0" mb="0" cb="0"/><line nr="309" mi="1" ci="0" mb="0" cb="0"/><line nr="310" mi="5" ci="0" mb="0" cb="0"/><line nr="311" mi="1" ci="0" mb="0" cb="0"/><line nr="314" mi="4" ci="0" mb="0" cb="0"/><line nr="315" mi="3" ci="0" mb="2" cb="0"/><line nr="318" mi="4" ci="0" mb="0" cb="0"/><line nr="319" mi="4" ci="0" mb="0" cb="0"/><line nr="322" mi="11" ci="0" mb="2" cb="0"/><line nr="324" mi="3" ci="0" mb="2" cb="0"/><line nr="325" mi="4" ci="0" mb="0" cb="0"/><line nr="327" mi="3" ci="0" mb="2" cb="0"/><line nr="328" mi="4" ci="0" mb="0" cb="0"/><line nr="330" mi="1" ci="0" mb="0" cb="0"/><line nr="331" mi="5" ci="0" mb="0" cb="0"/><line nr="332" mi="1" ci="0" mb="0" cb="0"/><line nr="335" mi="10" ci="0" mb="2" cb="0"/><line nr="336" mi="5" ci="0" mb="2" cb="0"/><line nr="337" mi="2" ci="0" mb="0" cb="0"/><line nr="339" mi="1" ci="0" mb="0" cb="0"/><line nr="341" mi="1" ci="0" mb="0" cb="0"/><line nr="344" mi="5" ci="0" mb="0" cb="0"/><line nr="345" mi="3" ci="0" mb="0" cb="0"/><line nr="346" mi="5" ci="0" mb="0" cb="0"/><line nr="347" mi="4" ci="0" mb="0" cb="0"/><line nr="348" mi="11" ci="0" mb="2" cb="0"/><line nr="349" mi="14" ci="0" mb="4" cb="0"/><line nr="350" mi="4" ci="0" mb="0" cb="0"/><line nr="351" mi="3" ci="0" mb="0" cb="0"/><line nr="353" mi="1" ci="0" mb="0" cb="0"/><line nr="355" mi="3" ci="0" mb="2" cb="0"/><line nr="356" mi="5" ci="0" mb="0" cb="0"/><line nr="358" mi="4" ci="0" mb="2" cb="0"/><line nr="359" mi="8" ci="0" mb="0" cb="0"/><line nr="361" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="901" covered="0"/><counter type="BRANCH" missed="124" covered="0"/><counter type="LINE" missed="215" covered="0"/><counter type="COMPLEXITY" missed="91" covered="0"/><counter type="METHOD" missed="29" covered="0"/><counter type="CLASS" missed="4" covered="0"/></sourcefile><sourcefile name="PlayList.java"><line nr="16" mi="0" ci="2" mb="0" cb="0"/><line nr="17" mi="0" ci="3" mb="0" cb="0"/><line nr="18" mi="0" ci="4" mb="0" cb="0"/><line nr="19" mi="0" ci="3" mb="0" cb="0"/><line nr="20" mi="0" ci="1" mb="0" cb="0"/><line nr="22" mi="0" ci="2" mb="0" cb="0"/><line nr="23" mi="0" ci="3" mb="0" cb="0"/><line nr="24" mi="0" ci="3" mb="0" cb="0"/><line nr="25" mi="0" ci="5" mb="0" cb="0"/><line nr="26" mi="0" ci="1" mb="0" cb="0"/><line nr="28" mi="0" ci="2" mb="0" cb="0"/><line nr="30" mi="0" ci="8" mb="0" cb="0"/><line nr="32" mi="0" ci="2" mb="0" cb="0"/><line nr="34" mi="0" ci="7" mb="0" cb="0"/><line nr="35" mi="1" ci="0" mb="0" cb="0"/><line nr="36" mi="3" ci="0" mb="0" cb="0"/><line nr="37" mi="0" ci="1" mb="0" cb="0"/><line nr="38" mi="0" ci="5" mb="2" cb="2"/><line nr="39" mi="4" ci="0" mb="0" cb="0"/><line nr="40" mi="0" ci="4" mb="0" cb="0"/><line nr="43" mi="0" ci="6" mb="0" cb="0"/><line nr="44" mi="0" ci="3" mb="0" cb="0"/><line nr="45" mi="1" ci="2" mb="1" cb="1"/><line nr="47" mi="0" ci="5" mb="0" cb="0"/><line nr="50" mi="0" ci="8" mb="0" cb="2"/><line nr="51" mi="0" ci="6" mb="0" cb="2"/><line nr="52" mi="0" ci="5" mb="0" cb="0"/><line nr="53" mi="0" ci="5" mb="1" cb="1"/><line nr="55" mi="0" ci="5" mb="0" cb="0"/><line nr="56" mi="1" ci="0" mb="0" cb="0"/><line nr="57" mi="2" ci="0" mb="0" cb="0"/><line nr="58" mi="0" ci="1" mb="0" cb="0"/><line nr="63" mi="0" ci="1" mb="0" cb="0"/><line nr="66" mi="0" ci="5" mb="0" cb="0"/><line nr="67" mi="0" ci="1" mb="0" cb="0"/><line nr="70" mi="0" ci="3" mb="0" cb="0"/><line nr="74" mi="0" ci="3" mb="0" cb="0"/><line nr="78" mi="0" ci="4" mb="0" cb="0"/><line nr="79" mi="0" ci="4" mb="0" cb="0"/><line nr="81" mi="0" ci="4" mb="0" cb="0"/><line nr="82" mi="0" ci="7" mb="0" cb="0"/><line nr="83" mi="0" ci="4" mb="0" cb="0"/><line nr="85" mi="0" ci="4" mb="0" cb="0"/><line nr="86" mi="0" ci="8" mb="0" cb="0"/><line nr="87" mi="0" ci="4" mb="0" cb="0"/><line nr="90" mi="0" ci="4" mb="0" cb="0"/><line nr="91" mi="4" ci="7" mb="1" cb="1"/><line nr="93" mi="4" ci="0" mb="0" cb="0"/><line nr="94" mi="7" ci="0" mb="0" cb="0"/><line nr="95" mi="4" ci="0" mb="0" cb="0"/><line nr="96" mi="1" ci="0" mb="0" cb="0"/><line nr="97" mi="0" ci="4" mb="0" cb="0"/><line nr="98" mi="0" ci="1" mb="0" cb="0"/><counter type="INSTRUCTION" missed="32" covered="170"/><counter type="BRANCH" missed="5" covered="9"/><counter type="LINE" missed="9" covered="44"/><counter type="COMPLEXITY" missed="5" covered="9"/><counter type="METHOD" missed="0" covered="7"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="NoAlbumFoundException.java"><line nr="6" mi="3" ci="0" mb="0" cb="0"/><line nr="7" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><sourcefile name="Album.java"><line nr="21" mi="2" ci="0" mb="0" cb="0"/><line nr="22" mi="3" ci="0" mb="0" cb="0"/><line nr="23" mi="3" ci="0" mb="0" cb="0"/><line nr="24" mi="3" ci="0" mb="0" cb="0"/><line nr="25" mi="4" ci="0" mb="0" cb="0"/><line nr="27" mi="5" ci="0" mb="0" cb="0"/><line nr="28" mi="5" ci="0" mb="0" cb="0"/><line nr="29" mi="1" ci="0" mb="0" cb="0"/><line nr="30" mi="2" ci="0" mb="0" cb="0"/><line nr="31" mi="1" ci="0" mb="0" cb="0"/><line nr="32" mi="3" ci="0" mb="0" cb="0"/><line nr="33" mi="1" ci="0" mb="0" cb="0"/><line nr="35" mi="2" ci="0" mb="0" cb="0"/><line nr="36" mi="3" ci="0" mb="0" cb="0"/><line nr="37" mi="3" ci="0" mb="0" cb="0"/><line nr="38" mi="3" ci="0" mb="0" cb="0"/><line nr="39" mi="3" ci="0" mb="0" cb="0"/><line nr="41" mi="5" ci="0" mb="0" cb="0"/><line nr="42" mi="5" ci="0" mb="0" cb="0"/><line nr="43" mi="1" ci="0" mb="0" cb="0"/><line nr="44" mi="2" ci="0" mb="0" cb="0"/><line nr="45" mi="1" ci="0" mb="0" cb="0"/><line nr="46" mi="5" ci="0" mb="0" cb="0"/><line nr="47" mi="1" ci="0" mb="0" cb="0"/><line nr="49" mi="2" ci="0" mb="0" cb="0"/><line nr="51" mi="8" ci="0" mb="0" cb="0"/><line nr="52" mi="9" ci="0" mb="0" cb="0"/><line nr="53" mi="2" ci="0" mb="0" cb="0"/><line nr="55" mi="7" ci="0" mb="0" cb="0"/><line nr="56" mi="1" ci="0" mb="0" cb="0"/><line nr="57" mi="3" ci="0" mb="0" cb="0"/><line nr="58" mi="1" ci="0" mb="0" cb="0"/><line nr="59" mi="5" ci="0" mb="4" cb="0"/><line nr="60" mi="4" ci="0" mb="0" cb="0"/><line nr="61" mi="4" ci="0" mb="0" cb="0"/><line nr="63" mi="5" ci="0" mb="0" cb="0"/><line nr="64" mi="10" ci="0" mb="0" cb="0"/><line nr="66" mi="6" ci="0" mb="0" cb="0"/><line nr="67" mi="3" ci="0" mb="0" cb="0"/><line nr="68" mi="3" ci="0" mb="2" cb="0"/><line nr="70" mi="5" ci="0" mb="0" cb="0"/><line nr="72" mi="8" ci="0" mb="2" cb="0"/><line nr="73" mi="6" ci="0" mb="2" cb="0"/><line nr="74" mi="5" ci="0" mb="0" cb="0"/><line nr="75" mi="5" ci="0" mb="2" cb="0"/><line nr="77" mi="5" ci="0" mb="0" cb="0"/><line nr="78" mi="1" ci="0" mb="0" cb="0"/><line nr="79" mi="2" ci="0" mb="0" cb="0"/><line nr="80" mi="1" ci="0" mb="0" cb="0"/><line nr="85" mi="1" ci="0" mb="0" cb="0"/><line nr="89" mi="5" ci="0" mb="0" cb="0"/><line nr="90" mi="1" ci="0" mb="0" cb="0"/><line nr="94" mi="3" ci="0" mb="0" cb="0"/><line nr="98" mi="3" ci="0" mb="0" cb="0"/><line nr="99" mi="2" ci="0" mb="0" cb="0"/><line nr="100" mi="2" ci="0" mb="0" cb="0"/><line nr="104" mi="3" ci="0" mb="0" cb="0"/><line nr="108" mi="3" ci="0" mb="0" cb="0"/><line nr="112" mi="4" ci="0" mb="0" cb="0"/><line nr="113" mi="4" ci="0" mb="0" cb="0"/><line nr="115" mi="4" ci="0" mb="0" cb="0"/><line nr="116" mi="7" ci="0" mb="0" cb="0"/><line nr="117" mi="4" ci="0" mb="0" cb="0"/><line nr="119" mi="4" ci="0" mb="0" cb="0"/><line nr="120" mi="7" ci="0" mb="0" cb="0"/><line nr="121" mi="4" ci="0" mb="0" cb="0"/><line nr="123" mi="4" ci="0" mb="0" cb="0"/><line nr="124" mi="9" ci="0" mb="0" cb="0"/><line nr="125" mi="4" ci="0" mb="0" cb="0"/><line nr="127" mi="4" ci="0" mb="0" cb="0"/><line nr="128" mi="8" ci="0" mb="0" cb="0"/><line nr="129" mi="4" ci="0" mb="0" cb="0"/><line nr="131" mi="4" ci="0" mb="0" cb="0"/><line nr="132" mi="5" ci="0" mb="0" cb="0"/><line nr="133" mi="9" ci="0" mb="0" cb="0"/><line nr="134" mi="4" ci="0" mb="0" cb="0"/><line nr="136" mi="4" ci="0" mb="0" cb="0"/><line nr="137" mi="11" ci="0" mb="2" cb="0"/><line nr="138" mi="4" ci="0" mb="0" cb="0"/><line nr="139" mi="7" ci="0" mb="0" cb="0"/><line nr="140" mi="4" ci="0" mb="0" cb="0"/><line nr="141" mi="1" ci="0" mb="0" cb="0"/><line nr="142" mi="4" ci="0" mb="0" cb="0"/><line nr="144" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="330" covered="0"/><counter type="BRANCH" missed="14" covered="0"/><counter type="LINE" missed="84" covered="0"/><counter type="COMPLEXITY" missed="16" covered="0"/><counter type="METHOD" missed="9" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><sourcefile name="Language.java"><line nr="3" mi="0" ci="3" mb="0" cb="0"/><line nr="4" mi="0" ci="35" mb="0" cb="0"/><line nr="7" mi="0" ci="4" mb="0" cb="0"/><line nr="8" mi="0" ci="3" mb="0" cb="0"/><line nr="9" mi="0" ci="1" mb="0" cb="0"/><line nr="12" mi="3" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="3" covered="46"/><counter type="LINE" missed="1" covered="5"/><counter type="COMPLEXITY" missed="1" covered="2"/><counter type="METHOD" missed="1" covered="2"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="Genre.java"><line nr="3" mi="0" ci="3" mb="0" cb="0"/><line nr="4" mi="0" ci="42" mb="0" cb="0"/><line nr="7" mi="0" ci="4" mb="0" cb="0"/><line nr="8" mi="0" ci="3" mb="0" cb="0"/><line nr="9" mi="0" ci="1" mb="0" cb="0"/><line nr="12" mi="0" ci="3" mb="0" cb="0"/><counter type="INSTRUCTION" missed="0" covered="56"/><counter type="LINE" missed="0" covered="6"/><counter type="COMPLEXITY" missed="0" covered="3"/><counter type="METHOD" missed="0" covered="3"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="NoPlayListFoundException.java"><line nr="6" mi="3" ci="0" mb="0" cb="0"/><line nr="7" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><sourcefile name="AudioElement.java"><line nr="24" mi="0" ci="2" mb="0" cb="0"/><line nr="25" mi="0" ci="3" mb="0" cb="0"/><line nr="26" mi="0" ci="3" mb="0" cb="0"/><line nr="27" mi="0" ci="3" mb="0" cb="0"/><line nr="28" mi="0" ci="4" mb="0" cb="0"/><line nr="29" mi="0" ci="3" mb="0" cb="0"/><line nr="30" mi="0" ci="1" mb="0" cb="0"/><line nr="32" mi="0" ci="2" mb="0" cb="0"/><line nr="33" mi="0" ci="3" mb="0" cb="0"/><line nr="34" mi="0" ci="3" mb="0" cb="0"/><line nr="35" mi="0" ci="3" mb="0" cb="0"/><line nr="36" mi="0" ci="3" mb="0" cb="0"/><line nr="37" mi="0" ci="3" mb="0" cb="0"/><line nr="38" mi="0" ci="1" mb="0" cb="0"/><line nr="40" mi="0" ci="2" mb="0" cb="0"/><line nr="42" mi="0" ci="8" mb="0" cb="0"/><line nr="43" mi="0" ci="8" mb="0" cb="0"/><line nr="44" mi="0" ci="9" mb="0" cb="0"/><line nr="45" mi="0" ci="8" mb="0" cb="0"/><line nr="46" mi="0" ci="2" mb="0" cb="0"/><line nr="48" mi="0" ci="7" mb="0" cb="0"/><line nr="49" mi="1" ci="0" mb="0" cb="0"/><line nr="50" mi="3" ci="0" mb="0" cb="0"/><line nr="51" mi="0" ci="1" mb="0" cb="0"/><line nr="52" mi="0" ci="5" mb="2" cb="2"/><line nr="53" mi="4" ci="0" mb="0" cb="0"/><line nr="54" mi="0" ci="4" mb="0" cb="0"/><line nr="56" mi="0" ci="1" mb="0" cb="0"/><line nr="59" mi="3" ci="0" mb="0" cb="0"/><line nr="63" mi="3" ci="0" mb="0" cb="0"/><line nr="67" mi="3" ci="0" mb="0" cb="0"/><line nr="71" mi="0" ci="10" mb="0" cb="0"/><line nr="75" mi="0" ci="4" mb="0" cb="0"/><line nr="76" mi="0" ci="7" mb="0" cb="0"/><line nr="77" mi="0" ci="4" mb="0" cb="0"/><line nr="79" mi="0" ci="4" mb="0" cb="0"/><line nr="80" mi="0" ci="7" mb="0" cb="0"/><line nr="81" mi="0" ci="4" mb="0" cb="0"/><line nr="83" mi="0" ci="4" mb="0" cb="0"/><line nr="84" mi="0" ci="9" mb="0" cb="0"/><line nr="85" mi="0" ci="4" mb="0" cb="0"/><line nr="87" mi="0" ci="4" mb="0" cb="0"/><line nr="88" mi="0" ci="8" mb="0" cb="0"/><line nr="89" mi="0" ci="4" mb="0" cb="0"/><line nr="91" mi="0" ci="4" mb="0" cb="0"/><line nr="92" mi="0" ci="7" mb="0" cb="0"/><line nr="93" mi="0" ci="4" mb="0" cb="0"/><line nr="95" mi="0" ci="1" mb="0" cb="0"/><line nr="99" mi="5" ci="0" mb="0" cb="0"/><line nr="101" mi="6" ci="0" mb="0" cb="0"/><line nr="102" mi="3" ci="0" mb="0" cb="0"/><line nr="103" mi="2" ci="0" mb="0" cb="0"/><line nr="104" mi="3" ci="0" mb="0" cb="0"/><line nr="106" mi="2" ci="0" mb="0" cb="0"/><line nr="108" mi="4" ci="0" mb="2" cb="0"/><line nr="109" mi="3" ci="0" mb="0" cb="0"/><line nr="110" mi="3" ci="0" mb="0" cb="0"/><line nr="111" mi="3" ci="0" mb="0" cb="0"/><line nr="112" mi="3" ci="0" mb="0" cb="0"/><line nr="114" mi="8" ci="0" mb="5" cb="0"/><line nr="115" mi="2" ci="0" mb="0" cb="0"/><line nr="116" mi="1" ci="0" mb="0" cb="0"/><line nr="117" mi="2" ci="0" mb="0" cb="0"/><line nr="118" mi="1" ci="0" mb="0" cb="0"/><line nr="119" mi="3" ci="0" mb="0" cb="0"/><line nr="120" mi="1" ci="0" mb="0" cb="0"/><line nr="121" mi="2" ci="0" mb="0" cb="0"/><line nr="122" mi="1" ci="0" mb="0" cb="0"/><line nr="123" mi="3" ci="0" mb="0" cb="0"/><line nr="125" mi="4" ci="0" mb="0" cb="0"/><line nr="128" mi="2" ci="0" mb="0" cb="0"/><line nr="130" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="85" covered="181"/><counter type="BRANCH" missed="9" covered="2"/><counter type="LINE" missed="30" covered="42"/><counter type="COMPLEXITY" missed="11" covered="5"/><counter type="METHOD" missed="4" covered="5"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="NoElementFoundException.java"><line nr="6" mi="3" ci="0" mb="0" cb="0"/><line nr="7" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><sourcefile name="Category.java"><line nr="3" mi="0" ci="3" mb="0" cb="0"/><line nr="4" mi="0" ci="35" mb="0" cb="0"/><line nr="7" mi="0" ci="4" mb="0" cb="0"/><line nr="8" mi="0" ci="3" mb="0" cb="0"/><line nr="9" mi="0" ci="1" mb="0" cb="0"/><line nr="12" mi="3" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="3" covered="46"/><counter type="LINE" missed="1" covered="5"/><counter type="COMPLEXITY" missed="1" covered="2"/><counter type="METHOD" missed="1" covered="2"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="AudioBook.java"><line nr="11" mi="7" ci="0" mb="0" cb="0"/><line nr="12" mi="3" ci="0" mb="0" cb="0"/><line nr="13" mi="3" ci="0" mb="0" cb="0"/><line nr="14" mi="1" ci="0" mb="0" cb="0"/><line nr="17" mi="0" ci="6" mb="0" cb="0"/><line nr="18" mi="0" ci="3" mb="0" cb="0"/><line nr="19" mi="0" ci="3" mb="0" cb="0"/><line nr="20" mi="0" ci="1" mb="0" cb="0"/><line nr="23" mi="3" ci="0" mb="0" cb="0"/><line nr="24" mi="8" ci="0" mb="0" cb="0"/><line nr="25" mi="8" ci="0" mb="0" cb="0"/><line nr="26" mi="1" ci="0" mb="0" cb="0"/><line nr="29" mi="0" ci="3" mb="0" cb="0"/><line nr="33" mi="0" ci="9" mb="4" cb="1"/><line nr="34" mi="4" ci="0" mb="0" cb="0"/><line nr="35" mi="0" ci="4" mb="0" cb="0"/><line nr="36" mi="4" ci="0" mb="0" cb="0"/><line nr="37" mi="4" ci="0" mb="0" cb="0"/><line nr="38" mi="3" ci="0" mb="0" cb="0"/><line nr="40" mi="0" ci="1" mb="0" cb="0"/><line nr="43" mi="0" ci="3" mb="0" cb="0"/><line nr="47" mi="0" ci="9" mb="4" cb="1"/><line nr="48" mi="4" ci="0" mb="0" cb="0"/><line nr="49" mi="0" ci="4" mb="0" cb="0"/><line nr="50" mi="4" ci="0" mb="0" cb="0"/><line nr="51" mi="4" ci="0" mb="0" cb="0"/><line nr="52" mi="3" ci="0" mb="0" cb="0"/><line nr="54" mi="0" ci="1" mb="0" cb="0"/><line nr="58" mi="8" ci="0" mb="0" cb="0"/><line nr="64" mi="4" ci="0" mb="0" cb="0"/><line nr="66" mi="4" ci="0" mb="0" cb="0"/><line nr="68" mi="4" ci="0" mb="0" cb="0"/><line nr="69" mi="8" ci="0" mb="0" cb="0"/><line nr="70" mi="4" ci="0" mb="0" cb="0"/><line nr="72" mi="4" ci="0" mb="0" cb="0"/><line nr="73" mi="8" ci="0" mb="0" cb="0"/><line nr="74" mi="4" ci="0" mb="0" cb="0"/><line nr="76" mi="4" ci="0" mb="0" cb="0"/><line nr="77" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="117" covered="47"/><counter type="BRANCH" missed="8" covered="2"/><counter type="LINE" missed="27" covered="12"/><counter type="COMPLEXITY" missed="12" covered="5"/><counter type="METHOD" missed="4" covered="5"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="Song.java"><line nr="11" mi="0" ci="7" mb="0" cb="0"/><line nr="12" mi="0" ci="3" mb="0" cb="0"/><line nr="13" mi="0" ci="1" mb="0" cb="0"/><line nr="16" mi="0" ci="6" mb="0" cb="0"/><line nr="17" mi="0" ci="3" mb="0" cb="0"/><line nr="18" mi="0" ci="1" mb="0" cb="0"/><line nr="21" mi="0" ci="3" mb="0" cb="0"/><line nr="22" mi="0" ci="8" mb="0" cb="0"/><line nr="23" mi="0" ci="1" mb="0" cb="0"/><line nr="26" mi="0" ci="4" mb="0" cb="0"/><line nr="30" mi="0" ci="9" mb="0" cb="6"/><line nr="31" mi="0" ci="4" mb="0" cb="0"/><line nr="32" mi="0" ci="4" mb="0" cb="0"/><line nr="33" mi="0" ci="4" mb="0" cb="0"/><line nr="34" mi="0" ci="4" mb="0" cb="0"/><line nr="35" mi="0" ci="4" mb="0" cb="0"/><line nr="36" mi="0" ci="3" mb="0" cb="0"/><line nr="38" mi="0" ci="1" mb="0" cb="0"/><line nr="41" mi="0" ci="6" mb="0" cb="0"/><line nr="46" mi="0" ci="4" mb="0" cb="0"/><line nr="48" mi="0" ci="4" mb="0" cb="0"/><line nr="50" mi="0" ci="4" mb="0" cb="0"/><line nr="51" mi="0" ci="8" mb="0" cb="0"/><line nr="52" mi="0" ci="4" mb="0" cb="0"/><line nr="54" mi="0" ci="4" mb="0" cb="0"/><line nr="55" mi="0" ci="1" mb="0" cb="0"/><counter type="INSTRUCTION" missed="0" covered="105"/><counter type="BRANCH" missed="0" covered="6"/><counter type="LINE" missed="0" covered="26"/><counter type="COMPLEXITY" missed="0" covered="12"/><counter type="METHOD" missed="0" covered="7"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><counter type="INSTRUCTION" missed="1483" covered="651"/><counter type="BRANCH" missed="160" covered="19"/><counter type="LINE" missed="373" covered="140"/><counter type="COMPLEXITY" missed="140" covered="38"/><counter type="METHOD" missed="51" covered="31"/><counter type="CLASS" missed="8" covered="7"/></package><package name="musichub/main"><class name="musichub/main/Main" sourcefilename="Main.java"><method name="&lt;init&gt;" desc="()V" line="16"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="main" desc="([Ljava/lang/String;)V" line="19"><counter type="INSTRUCTION" missed="579" covered="0"/><counter type="BRANCH" missed="42" covered="0"/><counter type="LINE" missed="199" covered="0"/><counter type="COMPLEXITY" missed="29" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="printAvailableCommands" desc="()V" line="276"><counter type="INSTRUCTION" missed="43" covered="0"/><counter type="LINE" missed="15" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="625" covered="0"/><counter type="BRANCH" missed="42" covered="0"/><counter type="LINE" missed="215" covered="0"/><counter type="COMPLEXITY" missed="31" covered="0"/><counter type="METHOD" missed="3" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><sourcefile name="Main.java"><line nr="16" mi="3" ci="0" mb="0" cb="0"/><line nr="19" mi="1" ci="0" mb="0" cb="0"/><line nr="21" mi="4" ci="0" mb="0" cb="0"/><line nr="23" mi="3" ci="0" mb="0" cb="0"/><line nr="26" mi="5" ci="0" mb="0" cb="0"/><line nr="27" mi="3" ci="0" mb="0" cb="0"/><line nr="31" mi="5" ci="0" mb="2" cb="0"/><line nr="33" mi="4" ci="0" mb="2" cb="0"/><line nr="34" mi="4" ci="0" mb="16" cb="0"/><line nr="36" mi="2" ci="0" mb="0" cb="0"/><line nr="38" mi="1" ci="0" mb="0" cb="0"/><line nr="39" mi="3" ci="0" mb="0" cb="0"/><line nr="40" mi="1" ci="0" mb="0" cb="0"/><line nr="43" mi="4" ci="0" mb="0" cb="0"/><line nr="44" mi="1" ci="0" mb="0" cb="0"/><line nr="45" mi="3" ci="0" mb="0" cb="0"/><line nr="46" mi="1" ci="0" mb="0" cb="0"/><line nr="49" mi="3" ci="0" mb="0" cb="0"/><line nr="50" mi="4" ci="0" mb="0" cb="0"/><line nr="52" mi="3" ci="0" mb="0" cb="0"/><line nr="54" mi="4" ci="0" mb="0" cb="0"/><line nr="55" mi="3" ci="0" mb="0" cb="0"/><line nr="56" mi="1" ci="0" mb="0" cb="0"/><line nr="57" mi="5" ci="0" mb="0" cb="0"/><line nr="58" mi="1" ci="0" mb="0" cb="0"/><line nr="59" mi="1" ci="0" mb="0" cb="0"/><line nr="60" mi="3" ci="0" mb="0" cb="0"/><line nr="61" mi="1" ci="0" mb="0" cb="0"/><line nr="64" mi="3" ci="0" mb="0" cb="0"/><line nr="65" mi="4" ci="0" mb="0" cb="0"/><line nr="67" mi="3" ci="0" mb="0" cb="0"/><line nr="69" mi="4" ci="0" mb="0" cb="0"/><line nr="70" mi="5" ci="0" mb="0" cb="0"/><line nr="71" mi="3" ci="0" mb="0" cb="0"/><line nr="72" mi="4" ci="0" mb="0" cb="0"/><line nr="73" mi="1" ci="0" mb="0" cb="0"/><line nr="74" mi="5" ci="0" mb="0" cb="0"/><line nr="75" mi="1" ci="0" mb="0" cb="0"/><line nr="76" mi="1" ci="0" mb="0" cb="0"/><line nr="77" mi="3" ci="0" mb="0" cb="0"/><line nr="78" mi="1" ci="0" mb="0" cb="0"/><line nr="81" mi="4" ci="0" mb="0" cb="0"/><line nr="82" mi="1" ci="0" mb="0" cb="0"/><line nr="83" mi="3" ci="0" mb="0" cb="0"/><line nr="84" mi="1" ci="0" mb="0" cb="0"/><line nr="87" mi="3" ci="0" mb="0" cb="0"/><line nr="88" mi="3" ci="0" mb="0" cb="0"/><line nr="89" mi="3" ci="0" mb="0" cb="0"/><line nr="90" mi="3" ci="0" mb="0" cb="0"/><line nr="91" mi="3" ci="0" mb="0" cb="0"/><line nr="92" mi="3" ci="0" mb="0" cb="0"/><line nr="93" mi="3" ci="0" mb="0" cb="0"/><line nr="94" mi="3" ci="0" mb="0" cb="0"/><line nr="95" mi="4" ci="0" mb="0" cb="0"/><line nr="97" mi="3" ci="0" mb="0" cb="0"/><line nr="98" mi="3" ci="0" mb="0" cb="0"/><line nr="99" mi="3" ci="0" mb="2" cb="0"/><line nr="100" mi="2" ci="0" mb="0" cb="0"/><line nr="101" mi="3" ci="0" mb="0" cb="0"/><line nr="102" mi="4" ci="0" mb="0" cb="0"/><line nr="103" mi="3" ci="0" mb="0" cb="0"/><line nr="104" mi="1" ci="0" mb="0" cb="0"/><line nr="107" mi="9" ci="0" mb="0" cb="0"/><line nr="108" mi="3" ci="0" mb="0" cb="0"/><line nr="109" mi="3" ci="0" mb="0" cb="0"/><line nr="110" mi="3" ci="0" mb="0" cb="0"/><line nr="111" mi="10" ci="0" mb="2" cb="0"/><line nr="112" mi="3" ci="0" mb="0" cb="0"/><line nr="113" mi="1" ci="0" mb="0" cb="0"/><line nr="114" mi="3" ci="0" mb="0" cb="0"/><line nr="115" mi="1" ci="0" mb="0" cb="0"/><line nr="118" mi="3" ci="0" mb="0" cb="0"/><line nr="119" mi="3" ci="0" mb="0" cb="0"/><line nr="120" mi="3" ci="0" mb="0" cb="0"/><line nr="121" mi="3" ci="0" mb="0" cb="0"/><line nr="122" mi="3" ci="0" mb="0" cb="0"/><line nr="123" mi="3" ci="0" mb="0" cb="0"/><line nr="124" mi="4" ci="0" mb="0" cb="0"/><line nr="125" mi="3" ci="0" mb="0" cb="0"/><line nr="126" mi="3" ci="0" mb="0" cb="0"/><line nr="127" mi="8" ci="0" mb="0" cb="0"/><line nr="128" mi="3" ci="0" mb="0" cb="0"/><line nr="129" mi="3" ci="0" mb="0" cb="0"/><line nr="130" mi="3" ci="0" mb="0" cb="0"/><line nr="131" mi="10" ci="0" mb="2" cb="0"/><line nr="132" mi="3" ci="0" mb="0" cb="0"/><line nr="133" mi="1" ci="0" mb="0" cb="0"/><line nr="134" mi="3" ci="0" mb="0" cb="0"/><line nr="135" mi="1" ci="0" mb="0" cb="0"/><line nr="138" mi="3" ci="0" mb="0" cb="0"/><line nr="139" mi="3" ci="0" mb="0" cb="0"/><line nr="140" mi="3" ci="0" mb="0" cb="0"/><line nr="141" mi="3" ci="0" mb="2" cb="0"/><line nr="142" mi="4" ci="0" mb="0" cb="0"/><line nr="143" mi="7" ci="0" mb="2" cb="0"/><line nr="144" mi="1" ci="0" mb="0" cb="0"/><line nr="145" mi="3" ci="0" mb="0" cb="0"/><line nr="147" mi="3" ci="0" mb="0" cb="0"/><line nr="148" mi="3" ci="0" mb="0" cb="0"/><line nr="149" mi="3" ci="0" mb="2" cb="0"/><line nr="150" mi="4" ci="0" mb="0" cb="0"/><line nr="151" mi="4" ci="0" mb="0" cb="0"/><line nr="152" mi="1" ci="0" mb="0" cb="0"/><line nr="153" mi="3" ci="0" mb="0" cb="0"/><line nr="155" mi="4" ci="0" mb="0" cb="0"/><line nr="156" mi="1" ci="0" mb="0" cb="0"/><line nr="157" mi="4" ci="0" mb="0" cb="0"/><line nr="158" mi="1" ci="0" mb="0" cb="0"/><line nr="159" mi="3" ci="0" mb="0" cb="0"/><line nr="160" mi="1" ci="0" mb="0" cb="0"/><line nr="161" mi="3" ci="0" mb="0" cb="0"/><line nr="162" mi="1" ci="0" mb="0" cb="0"/><line nr="165" mi="3" ci="0" mb="0" cb="0"/><line nr="166" mi="3" ci="0" mb="0" cb="0"/><line nr="167" mi="3" ci="0" mb="0" cb="0"/><line nr="168" mi="3" ci="0" mb="0" cb="0"/><line nr="169" mi="3" ci="0" mb="0" cb="0"/><line nr="170" mi="3" ci="0" mb="0" cb="0"/><line nr="171" mi="3" ci="0" mb="0" cb="0"/><line nr="172" mi="3" ci="0" mb="0" cb="0"/><line nr="173" mi="4" ci="0" mb="0" cb="0"/><line nr="174" mi="3" ci="0" mb="0" cb="0"/><line nr="175" mi="3" ci="0" mb="0" cb="0"/><line nr="176" mi="3" ci="0" mb="0" cb="0"/><line nr="177" mi="3" ci="0" mb="0" cb="0"/><line nr="178" mi="10" ci="0" mb="0" cb="0"/><line nr="179" mi="3" ci="0" mb="0" cb="0"/><line nr="180" mi="3" ci="0" mb="0" cb="0"/><line nr="181" mi="3" ci="0" mb="0" cb="0"/><line nr="182" mi="10" ci="0" mb="2" cb="0"/><line nr="183" mi="1" ci="0" mb="0" cb="0"/><line nr="184" mi="3" ci="0" mb="0" cb="0"/><line nr="185" mi="1" ci="0" mb="0" cb="0"/><line nr="188" mi="3" ci="0" mb="0" cb="0"/><line nr="189" mi="3" ci="0" mb="0" cb="0"/><line nr="190" mi="3" ci="0" mb="0" cb="0"/><line nr="191" mi="3" ci="0" mb="2" cb="0"/><line nr="192" mi="4" ci="0" mb="0" cb="0"/><line nr="193" mi="4" ci="0" mb="0" cb="0"/><line nr="194" mi="1" ci="0" mb="0" cb="0"/><line nr="195" mi="3" ci="0" mb="0" cb="0"/><line nr="196" mi="3" ci="0" mb="0" cb="0"/><line nr="197" mi="5" ci="0" mb="0" cb="0"/><line nr="198" mi="3" ci="0" mb="0" cb="0"/><line nr="199" mi="3" ci="0" mb="0" cb="0"/><line nr="201" mi="3" ci="0" mb="0" cb="0"/><line nr="202" mi="3" ci="0" mb="2" cb="0"/><line nr="203" mi="4" ci="0" mb="0" cb="0"/><line nr="204" mi="4" ci="0" mb="0" cb="0"/><line nr="205" mi="1" ci="0" mb="0" cb="0"/><line nr="206" mi="5" ci="0" mb="2" cb="0"/><line nr="207" mi="3" ci="0" mb="0" cb="0"/><line nr="208" mi="3" ci="0" mb="0" cb="0"/><line nr="210" mi="4" ci="0" mb="0" cb="0"/><line nr="211" mi="1" ci="0" mb="0" cb="0"/><line nr="212" mi="4" ci="0" mb="0" cb="0"/><line nr="213" mi="1" ci="0" mb="0" cb="0"/><line nr="215" mi="3" ci="0" mb="0" cb="0"/><line nr="216" mi="3" ci="0" mb="0" cb="0"/><line nr="217" mi="1" ci="0" mb="0" cb="0"/><line nr="218" mi="3" ci="0" mb="0" cb="0"/><line nr="219" mi="1" ci="0" mb="0" cb="0"/><line nr="220" mi="3" ci="0" mb="0" cb="0"/><line nr="221" mi="1" ci="0" mb="0" cb="0"/><line nr="224" mi="3" ci="0" mb="0" cb="0"/><line nr="225" mi="3" ci="0" mb="0" cb="0"/><line nr="226" mi="3" ci="0" mb="2" cb="0"/><line nr="227" mi="4" ci="0" mb="0" cb="0"/><line nr="228" mi="4" ci="0" mb="0" cb="0"/><line nr="229" mi="1" ci="0" mb="0" cb="0"/><line nr="230" mi="3" ci="0" mb="0" cb="0"/><line nr="232" mi="3" ci="0" mb="0" cb="0"/><line nr="233" mi="1" ci="0" mb="0" cb="0"/><line nr="234" mi="4" ci="0" mb="0" cb="0"/><line nr="235" mi="1" ci="0" mb="0" cb="0"/><line nr="236" mi="3" ci="0" mb="0" cb="0"/><line nr="237" mi="1" ci="0" mb="0" cb="0"/><line nr="238" mi="3" ci="0" mb="0" cb="0"/><line nr="239" mi="1" ci="0" mb="0" cb="0"/><line nr="242" mi="2" ci="0" mb="0" cb="0"/><line nr="243" mi="2" ci="0" mb="0" cb="0"/><line nr="244" mi="2" ci="0" mb="0" cb="0"/><line nr="245" mi="3" ci="0" mb="0" cb="0"/><line nr="246" mi="1" ci="0" mb="0" cb="0"/><line nr="247" mi="3" ci="0" mb="0" cb="0"/><line nr="248" mi="1" ci="0" mb="0" cb="0"/><line nr="252" mi="2" ci="0" mb="0" cb="0"/><line nr="254" mi="1" ci="0" mb="0" cb="0"/><line nr="255" mi="4" ci="0" mb="0" cb="0"/><line nr="257" mi="1" ci="0" mb="0" cb="0"/><line nr="258" mi="5" ci="0" mb="0" cb="0"/><line nr="259" mi="2" ci="0" mb="0" cb="0"/><line nr="260" mi="1" ci="0" mb="0" cb="0"/><line nr="263" mi="1" ci="0" mb="0" cb="0"/><line nr="264" mi="3" ci="0" mb="0" cb="0"/><line nr="265" mi="3" ci="0" mb="0" cb="0"/><line nr="266" mi="1" ci="0" mb="0" cb="0"/><line nr="269" mi="1" ci="0" mb="0" cb="0"/><line nr="272" mi="2" ci="0" mb="0" cb="0"/><line nr="273" mi="1" ci="0" mb="0" cb="0"/><line nr="276" mi="3" ci="0" mb="0" cb="0"/><line nr="277" mi="3" ci="0" mb="0" cb="0"/><line nr="278" mi="3" ci="0" mb="0" cb="0"/><line nr="279" mi="3" ci="0" mb="0" cb="0"/><line nr="280" mi="3" ci="0" mb="0" cb="0"/><line nr="281" mi="3" ci="0" mb="0" cb="0"/><line nr="282" mi="3" ci="0" mb="0" cb="0"/><line nr="283" mi="3" ci="0" mb="0" cb="0"/><line nr="284" mi="3" ci="0" mb="0" cb="0"/><line nr="285" mi="3" ci="0" mb="0" cb="0"/><line nr="286" mi="3" ci="0" mb="0" cb="0"/><line nr="287" mi="3" ci="0" mb="0" cb="0"/><line nr="288" mi="3" ci="0" mb="0" cb="0"/><line nr="289" mi="3" ci="0" mb="0" cb="0"/><line nr="290" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="625" covered="0"/><counter type="BRANCH" missed="42" covered="0"/><counter type="LINE" missed="215" covered="0"/><counter type="COMPLEXITY" missed="31" covered="0"/><counter type="METHOD" missed="3" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><counter type="INSTRUCTION" missed="625" covered="0"/><counter type="BRANCH" missed="42" covered="0"/><counter type="LINE" missed="215" covered="0"/><counter type="COMPLEXITY" missed="31" covered="0"/><counter type="METHOD" missed="3" covered="0"/><counter type="CLASS" missed="1" covered="0"/></package><counter type="INSTRUCTION" missed="2167" covered="802"/><counter type="BRANCH" missed="207" covered="23"/><counter type="LINE" missed="612" covered="182"/><counter type="COMPLEXITY" missed="177" covered="49"/><counter type="METHOD" missed="57" covered="40"/><counter type="CLASS" missed="10" covered="10"/></report> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?><!DOCTYPE report PUBLIC "-//JACOCO//DTD Report 1.1//EN" "report.dtd"><report name="spoteezer"><sessioninfo id="DESKTOP-M4INQND-91a7872b" start="1624793019797" dump="1624793020432"/><sessioninfo id="DESKTOP-M4INQND-11e0a096" start="1624813022092" dump="1624813022803"/><sessioninfo id="DESKTOP-M4INQND-7357f010" start="1624825407091" dump="1624825407773"/><sessioninfo id="DESKTOP-M4INQND-811f3cc5" start="1624915847905" dump="1624915848700"/><sessioninfo id="DESKTOP-M4INQND-b70e9563" start="1624915918971" dump="1624915919702"/><sessioninfo id="DESKTOP-M4INQND-a94600a7" start="1624916186303" dump="1624916187008"/><sessioninfo id="DESKTOP-M4INQND-cbfb49a8" start="1624916191408" dump="1624916192082"/><package name="musichub/util"><class name="musichub/util/PathValidation" sourcefilename="PathValidation.java"><method name="&lt;init&gt;" desc="()V" line="23"><counter type="INSTRUCTION" missed="0" covered="7"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="isPathValid" desc="(Ljava/lang/String;)Z" line="35"><counter type="INSTRUCTION" missed="0" covered="32"/><counter type="BRANCH" missed="0" covered="4"/><counter type="LINE" missed="0" covered="8"/><counter type="COMPLEXITY" missed="0" covered="3"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="0" covered="39"/><counter type="BRANCH" missed="0" covered="4"/><counter type="LINE" missed="0" covered="10"/><counter type="COMPLEXITY" missed="0" covered="4"/><counter type="METHOD" missed="0" covered="2"/><counter type="CLASS" missed="0" covered="1"/></class><class name="musichub/util/LogHandler" sourcefilename="LogHandler.java"><method name="&lt;init&gt;" desc="()V" line="25"><counter type="INSTRUCTION" missed="0" covered="7"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="write" desc="(Ljava/lang/String;Ljava/lang/String;)V" line="38"><counter type="INSTRUCTION" missed="0" covered="26"/><counter type="LINE" missed="0" covered="5"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="read" desc="()V" line="58"><counter type="INSTRUCTION" missed="0" covered="13"/><counter type="LINE" missed="0" covered="4"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="0" covered="46"/><counter type="LINE" missed="0" covered="11"/><counter type="COMPLEXITY" missed="0" covered="3"/><counter type="METHOD" missed="0" covered="3"/><counter type="CLASS" missed="0" covered="1"/></class><class name="musichub/util/XMLHandler" sourcefilename="XMLHandler.java"><method name="&lt;init&gt;" desc="()V" line="26"><counter type="INSTRUCTION" missed="3" covered="20"/><counter type="LINE" missed="2" covered="7"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="createXMLFile" desc="(Lorg/w3c/dom/Document;Ljava/lang/String;)V" line="41"><counter type="INSTRUCTION" missed="3" covered="20"/><counter type="LINE" missed="2" covered="5"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="createXMLDocument" desc="()Lorg/w3c/dom/Document;" line="57"><counter type="INSTRUCTION" missed="0" covered="4"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="parseXMLFile" desc="(Ljava/lang/String;)Lorg/w3c/dom/NodeList;" line="61"><counter type="INSTRUCTION" missed="0" covered="22"/><counter type="LINE" missed="0" covered="8"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="6" covered="66"/><counter type="LINE" missed="4" covered="21"/><counter type="COMPLEXITY" missed="0" covered="4"/><counter type="METHOD" missed="0" covered="4"/><counter type="CLASS" missed="0" covered="1"/></class><class name="musichub/util/Policy" sourcefilename="Policy.java"><method name="&lt;init&gt;" desc="()V" line="22"><counter type="INSTRUCTION" missed="7" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="showTerm" desc="()V" line="33"><counter type="INSTRUCTION" missed="46" covered="0"/><counter type="BRANCH" missed="5" covered="0"/><counter type="LINE" missed="19" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="printAgreement" desc="()V" line="73"><counter type="INSTRUCTION" missed="7" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="60" covered="0"/><counter type="BRANCH" missed="5" covered="0"/><counter type="LINE" missed="24" covered="0"/><counter type="COMPLEXITY" missed="6" covered="0"/><counter type="METHOD" missed="3" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><sourcefile name="PathValidation.java"><line nr="23" mi="0" ci="2" mb="0" cb="0"/><line nr="24" mi="0" ci="5" mb="0" cb="0"/><line nr="35" mi="0" ci="2" mb="0" cb="0"/><line nr="37" mi="0" ci="4" mb="0" cb="0"/><line nr="38" mi="0" ci="2" mb="0" cb="2"/><line nr="39" mi="0" ci="6" mb="0" cb="0"/><line nr="40" mi="0" ci="4" mb="0" cb="2"/><line nr="41" mi="0" ci="2" mb="0" cb="0"/><line nr="45" mi="0" ci="5" mb="0" cb="0"/><line nr="46" mi="0" ci="7" mb="0" cb="0"/><counter type="INSTRUCTION" missed="0" covered="39"/><counter type="BRANCH" missed="0" covered="4"/><counter type="LINE" missed="0" covered="10"/><counter type="COMPLEXITY" missed="0" covered="4"/><counter type="METHOD" missed="0" covered="2"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="LogHandler.java"><line nr="25" mi="0" ci="2" mb="0" cb="0"/><line nr="26" mi="0" ci="5" mb="0" cb="0"/><line nr="38" mi="0" ci="5" mb="0" cb="0"/><line nr="41" mi="0" ci="5" mb="0" cb="0"/><line nr="44" mi="0" ci="5" mb="0" cb="0"/><line nr="47" mi="0" ci="10" mb="0" cb="0"/><line nr="50" mi="0" ci="1" mb="0" cb="0"/><line nr="58" mi="0" ci="5" mb="0" cb="0"/><line nr="61" mi="0" ci="3" mb="0" cb="0"/><line nr="64" mi="0" ci="4" mb="0" cb="0"/><line nr="66" mi="0" ci="1" mb="0" cb="0"/><counter type="INSTRUCTION" missed="0" covered="46"/><counter type="LINE" missed="0" covered="11"/><counter type="COMPLEXITY" missed="0" covered="3"/><counter type="METHOD" missed="0" covered="3"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="XMLHandler.java"><line nr="26" mi="0" ci="2" mb="0" cb="0"/><line nr="28" mi="0" ci="3" mb="0" cb="0"/><line nr="29" mi="0" ci="5" mb="0" cb="0"/><line nr="30" mi="0" ci="3" mb="0" cb="0"/><line nr="31" mi="0" ci="5" mb="0" cb="0"/><line nr="32" mi="1" ci="0" mb="0" cb="0"/><line nr="33" mi="2" ci="0" mb="0" cb="0"/><line nr="34" mi="0" ci="1" mb="0" cb="0"/><line nr="35" mi="0" ci="1" mb="0" cb="0"/><line nr="41" mi="0" ci="5" mb="0" cb="0"/><line nr="42" mi="0" ci="8" mb="0" cb="0"/><line nr="49" mi="0" ci="5" mb="0" cb="0"/><line nr="51" mi="1" ci="0" mb="0" cb="0"/><line nr="52" mi="2" ci="0" mb="0" cb="0"/><line nr="53" mi="0" ci="1" mb="0" cb="0"/><line nr="54" mi="0" ci="1" mb="0" cb="0"/><line nr="57" mi="0" ci="4" mb="0" cb="0"/><line nr="61" mi="0" ci="2" mb="0" cb="0"/><line nr="63" mi="0" ci="8" mb="0" cb="0"/><line nr="64" mi="0" ci="3" mb="0" cb="0"/><line nr="66" mi="0" ci="3" mb="0" cb="0"/><line nr="67" mi="0" ci="1" mb="0" cb="0"/><line nr="68" mi="0" ci="2" mb="0" cb="0"/><line nr="69" mi="0" ci="1" mb="0" cb="0"/><line nr="70" mi="0" ci="2" mb="0" cb="0"/><counter type="INSTRUCTION" missed="6" covered="66"/><counter type="LINE" missed="4" covered="21"/><counter type="COMPLEXITY" missed="0" covered="4"/><counter type="METHOD" missed="0" covered="4"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="Policy.java"><line nr="22" mi="2" ci="0" mb="0" cb="0"/><line nr="23" mi="5" ci="0" mb="0" cb="0"/><line nr="33" mi="2" ci="0" mb="0" cb="0"/><line nr="42" mi="1" ci="0" mb="0" cb="0"/><line nr="43" mi="5" ci="0" mb="0" cb="0"/><line nr="44" mi="4" ci="0" mb="0" cb="0"/><line nr="46" mi="4" ci="0" mb="2" cb="0"/><line nr="47" mi="4" ci="0" mb="3" cb="0"/><line nr="48" mi="3" ci="0" mb="0" cb="0"/><line nr="49" mi="1" ci="0" mb="0" cb="0"/><line nr="50" mi="3" ci="0" mb="0" cb="0"/><line nr="51" mi="1" ci="0" mb="0" cb="0"/><line nr="52" mi="4" ci="0" mb="0" cb="0"/><line nr="54" mi="1" ci="0" mb="0" cb="0"/><line nr="55" mi="1" ci="0" mb="0" cb="0"/><line nr="56" mi="4" ci="0" mb="0" cb="0"/><line nr="61" mi="3" ci="0" mb="0" cb="0"/><line nr="62" mi="1" ci="0" mb="0" cb="0"/><line nr="63" mi="2" ci="0" mb="0" cb="0"/><line nr="64" mi="1" ci="0" mb="0" cb="0"/><line nr="65" mi="1" ci="0" mb="0" cb="0"/><line nr="73" mi="3" ci="0" mb="0" cb="0"/><line nr="74" mi="3" ci="0" mb="0" cb="0"/><line nr="75" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="60" covered="0"/><counter type="BRANCH" missed="5" covered="0"/><counter type="LINE" missed="24" covered="0"/><counter type="COMPLEXITY" missed="6" covered="0"/><counter type="METHOD" missed="3" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><counter type="INSTRUCTION" missed="66" covered="151"/><counter type="BRANCH" missed="5" covered="4"/><counter type="LINE" missed="28" covered="42"/><counter type="COMPLEXITY" missed="6" covered="11"/><counter type="METHOD" missed="3" covered="9"/><counter type="CLASS" missed="1" covered="3"/></package><package name="musichub/business"><class name="musichub/business/Album" sourcefilename="Album.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/util/ArrayList;)V" line="21"><counter type="INSTRUCTION" missed="33" covered="0"/><counter type="LINE" missed="12" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V" line="35"><counter type="INSTRUCTION" missed="34" covered="0"/><counter type="LINE" missed="12" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;init&gt;" desc="(Lorg/w3c/dom/Element;)V" line="49"><counter type="INSTRUCTION" missed="112" covered="0"/><counter type="BRANCH" missed="12" covered="0"/><counter type="LINE" missed="26" covered="0"/><counter type="COMPLEXITY" missed="7" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="addSong" desc="(Ljava/util/UUID;)V" line="89"><counter type="INSTRUCTION" missed="6" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getSongs" desc="()Ljava/util/List;" line="94"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getSongsRandomly" desc="()Ljava/util/ArrayList;" line="98"><counter type="INSTRUCTION" missed="7" covered="0"/><counter type="LINE" missed="3" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getTitle" desc="()Ljava/lang/String;" line="104"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getDate" desc="()Ljava/util/Date;" line="108"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="createXMLElement" desc="(Lorg/w3c/dom/Document;Lorg/w3c/dom/Element;)V" line="112"><counter type="INSTRUCTION" missed="129" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="26" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="330" covered="0"/><counter type="BRANCH" missed="14" covered="0"/><counter type="LINE" missed="84" covered="0"/><counter type="COMPLEXITY" missed="16" covered="0"/><counter type="METHOD" missed="9" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="musichub/business/SortByAuthor" sourcefilename="MusicHub.java"><method name="&lt;init&gt;" desc="()V" line="26"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="compare" desc="(Lmusichub/business/AudioElement;Lmusichub/business/AudioElement;)I" line="28"><counter type="INSTRUCTION" missed="6" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="9" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="2" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="musichub/business/NoAlbumFoundException" sourcefilename="NoAlbumFoundException.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;)V" line="6"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="musichub/business/Language" sourcefilename="Language.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;ILjava/lang/String;)V" line="7"><counter type="INSTRUCTION" missed="0" covered="8"/><counter type="LINE" missed="0" covered="3"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getLanguage" desc="()Ljava/lang/String;" line="12"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;clinit&gt;" desc="()V" line="3"><counter type="INSTRUCTION" missed="0" covered="38"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="3" covered="46"/><counter type="LINE" missed="1" covered="5"/><counter type="COMPLEXITY" missed="1" covered="2"/><counter type="METHOD" missed="1" covered="2"/><counter type="CLASS" missed="0" covered="1"/></class><class name="musichub/business/SortByDate" sourcefilename="MusicHub.java"><method name="&lt;init&gt;" desc="()V" line="14"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="compare" desc="(Lmusichub/business/Album;Lmusichub/business/Album;)I" line="16"><counter type="INSTRUCTION" missed="6" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="9" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="2" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="musichub/business/MusicHub" sourcefilename="MusicHub.java"><method name="&lt;init&gt;" desc="()V" line="40"><counter type="INSTRUCTION" missed="29" covered="0"/><counter type="LINE" missed="9" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="addElement" desc="(Lmusichub/business/AudioElement;)V" line="52"><counter type="INSTRUCTION" missed="6" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="addAlbum" desc="(Lmusichub/business/Album;)V" line="56"><counter type="INSTRUCTION" missed="6" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="addPlaylist" desc="(Lmusichub/business/PlayList;)V" line="60"><counter type="INSTRUCTION" missed="6" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="deletePlayList" desc="(Ljava/lang/String;)V" line="65"><counter type="INSTRUCTION" missed="40" covered="0"/><counter type="BRANCH" missed="8" covered="0"/><counter type="LINE" missed="11" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="albums" desc="()Ljava/util/Iterator;" line="80"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="playlists" desc="()Ljava/util/Iterator;" line="84"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="elements" desc="()Ljava/util/Iterator;" line="88"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getAlbumsTitlesSortedByDate" desc="()Ljava/lang/String;" line="92"><counter type="INSTRUCTION" missed="32" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getAudiobooksTitlesSortedByAuthor" desc="()Ljava/lang/String;" line="100"><counter type="INSTRUCTION" missed="53" covered="0"/><counter type="BRANCH" missed="6" covered="0"/><counter type="LINE" missed="9" covered="0"/><counter type="COMPLEXITY" missed="4" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getAlbumSongs" desc="(Ljava/lang/String;)Ljava/util/List;" line="112"><counter type="INSTRUCTION" missed="73" covered="0"/><counter type="BRANCH" missed="14" covered="0"/><counter type="LINE" missed="15" covered="0"/><counter type="COMPLEXITY" missed="8" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getAlbumSongsSortedByGenre" desc="(Ljava/lang/String;)Ljava/util/List;" line="134"><counter type="INSTRUCTION" missed="79" covered="0"/><counter type="BRANCH" missed="14" covered="0"/><counter type="LINE" missed="16" covered="0"/><counter type="COMPLEXITY" missed="8" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="addElementToAlbum" desc="(Ljava/lang/String;Ljava/lang/String;)V" line="157"><counter type="INSTRUCTION" missed="82" covered="0"/><counter type="BRANCH" missed="12" covered="0"/><counter type="LINE" missed="20" covered="0"/><counter type="COMPLEXITY" missed="7" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="addElementToPlayList" desc="(Ljava/lang/String;Ljava/lang/String;)V" line="186"><counter type="INSTRUCTION" missed="82" covered="0"/><counter type="BRANCH" missed="12" covered="0"/><counter type="LINE" missed="20" covered="0"/><counter type="COMPLEXITY" missed="7" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="loadAlbums" desc="()V" line="217"><counter type="INSTRUCTION" missed="44" covered="0"/><counter type="BRANCH" missed="8" covered="0"/><counter type="LINE" missed="11" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="loadPlaylists" desc="()V" line="235"><counter type="INSTRUCTION" missed="44" covered="0"/><counter type="BRANCH" missed="8" covered="0"/><counter type="LINE" missed="11" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="loadElements" desc="()V" line="253"><counter type="INSTRUCTION" missed="64" covered="0"/><counter type="BRANCH" missed="10" covered="0"/><counter type="LINE" missed="18" covered="0"/><counter type="COMPLEXITY" missed="6" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="saveAlbums" desc="()V" line="281"><counter type="INSTRUCTION" missed="36" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="10" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="savePlayLists" desc="()V" line="297"><counter type="INSTRUCTION" missed="36" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="10" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="saveElements" desc="()V" line="313"><counter type="INSTRUCTION" missed="47" covered="0"/><counter type="BRANCH" missed="8" covered="0"/><counter type="LINE" missed="12" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getAudioElement" desc="(Ljava/util/List;Ljava/lang/String;)V" line="334"><counter type="INSTRUCTION" missed="19" covered="0"/><counter type="BRANCH" missed="4" covered="0"/><counter type="LINE" missed="5" covered="0"/><counter type="COMPLEXITY" missed="3" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="searchAudioElement" desc="()V" line="343"><counter type="INSTRUCTION" missed="71" covered="0"/><counter type="BRANCH" missed="10" covered="0"/><counter type="LINE" missed="14" covered="0"/><counter type="COMPLEXITY" missed="6" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getPlayListsTitles" desc="()Ljava/lang/String;" line="369"><counter type="INSTRUCTION" missed="26" covered="0"/><counter type="BRANCH" missed="2" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getPlayListSongs" desc="(Ljava/lang/String;)Ljava/util/List;" line="385"><counter type="INSTRUCTION" missed="73" covered="0"/><counter type="BRANCH" missed="14" covered="0"/><counter type="LINE" missed="15" covered="0"/><counter type="COMPLEXITY" missed="8" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;clinit&gt;" desc="()V" line="33"><counter type="INSTRUCTION" missed="13" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="973" covered="0"/><counter type="BRANCH" missed="140" covered="0"/><counter type="LINE" missed="228" covered="0"/><counter type="COMPLEXITY" missed="95" covered="0"/><counter type="METHOD" missed="25" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="musichub/business/Category" sourcefilename="Category.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;ILjava/lang/String;)V" line="7"><counter type="INSTRUCTION" missed="0" covered="8"/><counter type="LINE" missed="0" covered="3"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getCategory" desc="()Ljava/lang/String;" line="12"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;clinit&gt;" desc="()V" line="3"><counter type="INSTRUCTION" missed="0" covered="38"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="3" covered="46"/><counter type="LINE" missed="1" covered="5"/><counter type="COMPLEXITY" missed="1" covered="2"/><counter type="METHOD" missed="1" covered="2"/><counter type="CLASS" missed="0" covered="1"/></class><class name="musichub/business/Song" sourcefilename="Song.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V" line="11"><counter type="INSTRUCTION" missed="0" covered="11"/><counter type="LINE" missed="0" covered="3"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V" line="16"><counter type="INSTRUCTION" missed="0" covered="10"/><counter type="LINE" missed="0" covered="3"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;init&gt;" desc="(Lorg/w3c/dom/Element;)V" line="21"><counter type="INSTRUCTION" missed="0" covered="12"/><counter type="LINE" missed="0" covered="3"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getGenre" desc="()Ljava/lang/String;" line="26"><counter type="INSTRUCTION" missed="0" covered="4"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="setGenre" desc="(Ljava/lang/String;)V" line="30"><counter type="INSTRUCTION" missed="0" covered="33"/><counter type="BRANCH" missed="0" covered="6"/><counter type="LINE" missed="0" covered="8"/><counter type="COMPLEXITY" missed="0" covered="6"/><counter type="METHOD" missed="0" covered="1"/></method><method name="toString" desc="()Ljava/lang/String;" line="41"><counter type="INSTRUCTION" missed="0" covered="6"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="createXMLElement" desc="(Lorg/w3c/dom/Document;Lorg/w3c/dom/Element;)V" line="46"><counter type="INSTRUCTION" missed="0" covered="29"/><counter type="LINE" missed="0" covered="7"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="0" covered="105"/><counter type="BRANCH" missed="0" covered="6"/><counter type="LINE" missed="0" covered="26"/><counter type="COMPLEXITY" missed="0" covered="12"/><counter type="METHOD" missed="0" covered="7"/><counter type="CLASS" missed="0" covered="1"/></class><class name="musichub/business/NoPlayListFoundException" sourcefilename="NoPlayListFoundException.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;)V" line="6"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="musichub/business/PlayList" sourcefilename="PlayList.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;Ljava/util/ArrayList;)V" line="16"><counter type="INSTRUCTION" missed="0" covered="13"/><counter type="LINE" missed="0" covered="5"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;init&gt;" desc="(Ljava/lang/String;)V" line="22"><counter type="INSTRUCTION" missed="0" covered="14"/><counter type="LINE" missed="0" covered="5"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;init&gt;" desc="(Lorg/w3c/dom/Element;)V" line="28"><counter type="INSTRUCTION" missed="12" covered="76"/><counter type="BRANCH" missed="4" covered="8"/><counter type="LINE" missed="5" covered="18"/><counter type="COMPLEXITY" missed="4" covered="3"/><counter type="METHOD" missed="0" covered="1"/></method><method name="addElement" desc="(Ljava/util/UUID;)V" line="66"><counter type="INSTRUCTION" missed="0" covered="6"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getElements" desc="()Ljava/util/ArrayList;" line="70"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getTitle" desc="()Ljava/lang/String;" line="74"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="createXMLElement" desc="(Lorg/w3c/dom/Document;Lorg/w3c/dom/Element;)V" line="78"><counter type="INSTRUCTION" missed="20" covered="55"/><counter type="BRANCH" missed="1" covered="1"/><counter type="LINE" missed="4" covered="12"/><counter type="COMPLEXITY" missed="1" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="32" covered="170"/><counter type="BRANCH" missed="5" covered="9"/><counter type="LINE" missed="9" covered="44"/><counter type="COMPLEXITY" missed="5" covered="9"/><counter type="METHOD" missed="0" covered="7"/><counter type="CLASS" missed="0" covered="1"/></class><class name="musichub/business/AudioBook" sourcefilename="AudioBook.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V" line="11"><counter type="INSTRUCTION" missed="14" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V" line="17"><counter type="INSTRUCTION" missed="0" covered="13"/><counter type="LINE" missed="0" covered="4"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;init&gt;" desc="(Lorg/w3c/dom/Element;)V" line="23"><counter type="INSTRUCTION" missed="20" covered="0"/><counter type="LINE" missed="4" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getLanguage" desc="()Lmusichub/business/Language;" line="29"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="setLanguage" desc="(Ljava/lang/String;)V" line="33"><counter type="INSTRUCTION" missed="15" covered="14"/><counter type="BRANCH" missed="4" covered="1"/><counter type="LINE" missed="4" covered="3"/><counter type="COMPLEXITY" missed="4" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getCategory" desc="()Lmusichub/business/Category;" line="43"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="setCategory" desc="(Ljava/lang/String;)V" line="47"><counter type="INSTRUCTION" missed="15" covered="14"/><counter type="BRANCH" missed="4" covered="1"/><counter type="LINE" missed="4" covered="3"/><counter type="COMPLEXITY" missed="4" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="toString" desc="()Ljava/lang/String;" line="58"><counter type="INSTRUCTION" missed="8" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="createXMLElement" desc="(Lorg/w3c/dom/Document;Lorg/w3c/dom/Element;)V" line="64"><counter type="INSTRUCTION" missed="45" covered="0"/><counter type="LINE" missed="10" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="117" covered="47"/><counter type="BRANCH" missed="8" covered="2"/><counter type="LINE" missed="27" covered="12"/><counter type="COMPLEXITY" missed="12" covered="5"/><counter type="METHOD" missed="4" covered="5"/><counter type="CLASS" missed="0" covered="1"/></class><class name="musichub/business/SortByGenre" sourcefilename="MusicHub.java"><method name="&lt;init&gt;" desc="()V" line="20"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="compare" desc="(Lmusichub/business/Song;Lmusichub/business/Song;)I" line="22"><counter type="INSTRUCTION" missed="6" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="9" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="2" covered="0"/><counter type="METHOD" missed="2" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="musichub/business/NoElementFoundException" sourcefilename="NoElementFoundException.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;)V" line="6"><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><class name="musichub/business/Genre" sourcefilename="Genre.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;ILjava/lang/String;)V" line="7"><counter type="INSTRUCTION" missed="0" covered="8"/><counter type="LINE" missed="0" covered="3"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getGenre" desc="()Ljava/lang/String;" line="12"><counter type="INSTRUCTION" missed="0" covered="3"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;clinit&gt;" desc="()V" line="3"><counter type="INSTRUCTION" missed="0" covered="45"/><counter type="LINE" missed="0" covered="2"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><counter type="INSTRUCTION" missed="0" covered="56"/><counter type="LINE" missed="0" covered="6"/><counter type="COMPLEXITY" missed="0" covered="3"/><counter type="METHOD" missed="0" covered="3"/><counter type="CLASS" missed="0" covered="1"/></class><class name="musichub/business/AudioElement" sourcefilename="AudioElement.java"><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V" line="20"><counter type="INSTRUCTION" missed="0" covered="19"/><counter type="LINE" missed="0" covered="7"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;init&gt;" desc="(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)V" line="28"><counter type="INSTRUCTION" missed="0" covered="18"/><counter type="LINE" missed="0" covered="7"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="&lt;init&gt;" desc="(Lorg/w3c/dom/Element;)V" line="36"><counter type="INSTRUCTION" missed="8" covered="55"/><counter type="BRANCH" missed="2" covered="2"/><counter type="LINE" missed="3" covered="11"/><counter type="COMPLEXITY" missed="2" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="getUUID" desc="()Ljava/util/UUID;" line="55"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getArtist" desc="()Ljava/lang/String;" line="59"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="getTitle" desc="()Ljava/lang/String;" line="63"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="toString" desc="()Ljava/lang/String;" line="67"><counter type="INSTRUCTION" missed="0" covered="10"/><counter type="LINE" missed="0" covered="1"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="createXMLElement" desc="(Lorg/w3c/dom/Document;Lorg/w3c/dom/Element;)V" line="71"><counter type="INSTRUCTION" missed="0" covered="79"/><counter type="LINE" missed="0" covered="16"/><counter type="COMPLEXITY" missed="0" covered="1"/><counter type="METHOD" missed="0" covered="1"/></method><method name="manageAudioElement" desc="()V" line="95"><counter type="INSTRUCTION" missed="74" covered="0"/><counter type="BRANCH" missed="6" covered="0"/><counter type="LINE" missed="25" covered="0"/><counter type="COMPLEXITY" missed="5" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="91" covered="181"/><counter type="BRANCH" missed="8" covered="2"/><counter type="LINE" missed="31" covered="42"/><counter type="COMPLEXITY" missed="10" covered="5"/><counter type="METHOD" missed="4" covered="5"/><counter type="CLASS" missed="0" covered="1"/></class><sourcefile name="MusicHub.java"><line nr="14" mi="3" ci="0" mb="0" cb="0"/><line nr="16" mi="6" ci="0" mb="0" cb="0"/><line nr="20" mi="3" ci="0" mb="0" cb="0"/><line nr="22" mi="6" ci="0" mb="0" cb="0"/><line nr="26" mi="3" ci="0" mb="0" cb="0"/><line nr="28" mi="6" ci="0" mb="0" cb="0"/><line nr="33" mi="3" ci="0" mb="0" cb="0"/><line nr="34" mi="3" ci="0" mb="0" cb="0"/><line nr="35" mi="3" ci="0" mb="0" cb="0"/><line nr="36" mi="4" ci="0" mb="0" cb="0"/><line nr="40" mi="5" ci="0" mb="0" cb="0"/><line nr="42" mi="2" ci="0" mb="0" cb="0"/><line nr="43" mi="5" ci="0" mb="0" cb="0"/><line nr="44" mi="5" ci="0" mb="0" cb="0"/><line nr="45" mi="5" ci="0" mb="0" cb="0"/><line nr="46" mi="2" ci="0" mb="0" cb="0"/><line nr="47" mi="2" ci="0" mb="0" cb="0"/><line nr="48" mi="2" ci="0" mb="0" cb="0"/><line nr="49" mi="1" ci="0" mb="0" cb="0"/><line nr="52" mi="5" ci="0" mb="0" cb="0"/><line nr="53" mi="1" ci="0" mb="0" cb="0"/><line nr="56" mi="5" ci="0" mb="0" cb="0"/><line nr="57" mi="1" ci="0" mb="0" cb="0"/><line nr="60" mi="5" ci="0" mb="0" cb="0"/><line nr="61" mi="1" ci="0" mb="0" cb="0"/><line nr="65" mi="2" ci="0" mb="0" cb="0"/><line nr="66" mi="2" ci="0" mb="0" cb="0"/><line nr="67" mi="11" ci="0" mb="2" cb="0"/><line nr="68" mi="5" ci="0" mb="2" cb="0"/><line nr="69" mi="2" ci="0" mb="0" cb="0"/><line nr="70" mi="1" ci="0" mb="0" cb="0"/><line nr="72" mi="1" ci="0" mb="0" cb="0"/><line nr="74" mi="2" ci="0" mb="2" cb="0"/><line nr="75" mi="5" ci="0" mb="0" cb="0"/><line nr="76" mi="8" ci="0" mb="2" cb="0"/><line nr="77" mi="1" ci="0" mb="0" cb="0"/><line nr="80" mi="4" ci="0" mb="0" cb="0"/><line nr="84" mi="4" ci="0" mb="0" cb="0"/><line nr="88" mi="4" ci="0" mb="0" cb="0"/><line nr="92" mi="4" ci="0" mb="0" cb="0"/><line nr="93" mi="6" ci="0" mb="0" cb="0"/><line nr="94" mi="11" ci="0" mb="2" cb="0"/><line nr="95" mi="8" ci="0" mb="0" cb="0"/><line nr="96" mi="3" ci="0" mb="0" cb="0"/><line nr="100" mi="4" ci="0" mb="0" cb="0"/><line nr="101" mi="4" ci="0" mb="0" cb="0"/><line nr="102" mi="11" ci="0" mb="2" cb="0"/><line nr="103" mi="4" ci="0" mb="2" cb="0"/><line nr="104" mi="4" ci="0" mb="0" cb="0"/><line nr="105" mi="5" ci="0" mb="0" cb="0"/><line nr="106" mi="10" ci="0" mb="2" cb="0"/><line nr="107" mi="8" ci="0" mb="0" cb="0"/><line nr="108" mi="3" ci="0" mb="0" cb="0"/><line nr="112" mi="2" ci="0" mb="0" cb="0"/><line nr="113" mi="4" ci="0" mb="0" cb="0"/><line nr="114" mi="11" ci="0" mb="2" cb="0"/><line nr="115" mi="5" ci="0" mb="2" cb="0"/><line nr="116" mi="2" ci="0" mb="0" cb="0"/><line nr="117" mi="1" ci="0" mb="0" cb="0"/><line nr="119" mi="1" ci="0" mb="0" cb="0"/><line nr="120" mi="7" ci="0" mb="2" cb="0"/><line nr="122" mi="3" ci="0" mb="0" cb="0"/><line nr="123" mi="10" ci="0" mb="2" cb="0"/><line nr="124" mi="12" ci="0" mb="2" cb="0"/><line nr="125" mi="3" ci="0" mb="2" cb="0"/><line nr="126" mi="9" ci="0" mb="2" cb="0"/><line nr="128" mi="1" ci="0" mb="0" cb="0"/><line nr="129" mi="2" ci="0" mb="0" cb="0"/><line nr="134" mi="2" ci="0" mb="0" cb="0"/><line nr="135" mi="4" ci="0" mb="0" cb="0"/><line nr="136" mi="11" ci="0" mb="2" cb="0"/><line nr="137" mi="5" ci="0" mb="2" cb="0"/><line nr="138" mi="2" ci="0" mb="0" cb="0"/><line nr="139" mi="1" ci="0" mb="0" cb="0"/><line nr="141" mi="1" ci="0" mb="0" cb="0"/><line nr="142" mi="7" ci="0" mb="2" cb="0"/><line nr="144" mi="3" ci="0" mb="0" cb="0"/><line nr="145" mi="10" ci="0" mb="2" cb="0"/><line nr="146" mi="12" ci="0" mb="2" cb="0"/><line nr="147" mi="3" ci="0" mb="2" cb="0"/><line nr="148" mi="10" ci="0" mb="2" cb="0"/><line nr="150" mi="1" ci="0" mb="0" cb="0"/><line nr="151" mi="5" ci="0" mb="0" cb="0"/><line nr="152" mi="2" ci="0" mb="0" cb="0"/><line nr="157" mi="2" ci="0" mb="0" cb="0"/><line nr="159" mi="2" ci="0" mb="0" cb="0"/><line nr="160" mi="9" ci="0" mb="2" cb="0"/><line nr="161" mi="9" ci="0" mb="2" cb="0"/><line nr="162" mi="6" ci="0" mb="0" cb="0"/><line nr="163" mi="2" ci="0" mb="0" cb="0"/><line nr="164" mi="1" ci="0" mb="0" cb="0"/><line nr="168" mi="2" ci="0" mb="2" cb="0"/><line nr="169" mi="2" ci="0" mb="0" cb="0"/><line nr="170" mi="11" ci="0" mb="2" cb="0"/><line nr="171" mi="5" ci="0" mb="2" cb="0"/><line nr="172" mi="2" ci="0" mb="0" cb="0"/><line nr="173" mi="1" ci="0" mb="0" cb="0"/><line nr="175" mi="1" ci="0" mb="0" cb="0"/><line nr="176" mi="2" ci="0" mb="2" cb="0"/><line nr="177" mi="4" ci="0" mb="0" cb="0"/><line nr="179" mi="7" ci="0" mb="0" cb="0"/><line nr="180" mi="6" ci="0" mb="0" cb="0"/><line nr="181" mi="7" ci="0" mb="0" cb="0"/><line nr="183" mi="1" ci="0" mb="0" cb="0"/><line nr="186" mi="2" ci="0" mb="0" cb="0"/><line nr="188" mi="2" ci="0" mb="0" cb="0"/><line nr="190" mi="9" ci="0" mb="2" cb="0"/><line nr="191" mi="9" ci="0" mb="2" cb="0"/><line nr="192" mi="6" ci="0" mb="0" cb="0"/><line nr="193" mi="2" ci="0" mb="0" cb="0"/><line nr="194" mi="1" ci="0" mb="0" cb="0"/><line nr="198" mi="2" ci="0" mb="2" cb="0"/><line nr="199" mi="2" ci="0" mb="0" cb="0"/><line nr="200" mi="11" ci="0" mb="2" cb="0"/><line nr="201" mi="5" ci="0" mb="2" cb="0"/><line nr="202" mi="2" ci="0" mb="0" cb="0"/><line nr="203" mi="1" ci="0" mb="0" cb="0"/><line nr="205" mi="1" ci="0" mb="0" cb="0"/><line nr="206" mi="2" ci="0" mb="2" cb="0"/><line nr="207" mi="4" ci="0" mb="0" cb="0"/><line nr="209" mi="7" ci="0" mb="0" cb="0"/><line nr="210" mi="6" ci="0" mb="0" cb="0"/><line nr="212" mi="7" ci="0" mb="0" cb="0"/><line nr="214" mi="1" ci="0" mb="0" cb="0"/><line nr="217" mi="5" ci="0" mb="0" cb="0"/><line nr="218" mi="3" ci="0" mb="2" cb="0"/><line nr="220" mi="8" ci="0" mb="2" cb="0"/><line nr="221" mi="6" ci="0" mb="2" cb="0"/><line nr="222" mi="5" ci="0" mb="0" cb="0"/><line nr="223" mi="5" ci="0" mb="2" cb="0"/><line nr="225" mi="6" ci="0" mb="0" cb="0"/><line nr="226" mi="1" ci="0" mb="0" cb="0"/><line nr="227" mi="3" ci="0" mb="0" cb="0"/><line nr="228" mi="1" ci="0" mb="0" cb="0"/><line nr="232" mi="1" ci="0" mb="0" cb="0"/><line nr="235" mi="5" ci="0" mb="0" cb="0"/><line nr="236" mi="3" ci="0" mb="2" cb="0"/><line nr="238" mi="8" ci="0" mb="2" cb="0"/><line nr="239" mi="6" ci="0" mb="2" cb="0"/><line nr="240" mi="5" ci="0" mb="0" cb="0"/><line nr="241" mi="5" ci="0" mb="2" cb="0"/><line nr="243" mi="6" ci="0" mb="0" cb="0"/><line nr="244" mi="1" ci="0" mb="0" cb="0"/><line nr="245" mi="3" ci="0" mb="0" cb="0"/><line nr="246" mi="1" ci="0" mb="0" cb="0"/><line nr="250" mi="1" ci="0" mb="0" cb="0"/><line nr="253" mi="5" ci="0" mb="0" cb="0"/><line nr="254" mi="3" ci="0" mb="2" cb="0"/><line nr="256" mi="8" ci="0" mb="2" cb="0"/><line nr="257" mi="6" ci="0" mb="2" cb="0"/><line nr="258" mi="5" ci="0" mb="0" cb="0"/><line nr="259" mi="5" ci="0" mb="2" cb="0"/><line nr="261" mi="5" ci="0" mb="0" cb="0"/><line nr="262" mi="3" ci="0" mb="0" cb="0"/><line nr="263" mi="1" ci="0" mb="0" cb="0"/><line nr="264" mi="3" ci="0" mb="0" cb="0"/><line nr="265" mi="1" ci="0" mb="0" cb="0"/><line nr="267" mi="5" ci="0" mb="2" cb="0"/><line nr="269" mi="5" ci="0" mb="0" cb="0"/><line nr="270" mi="3" ci="0" mb="0" cb="0"/><line nr="271" mi="1" ci="0" mb="0" cb="0"/><line nr="272" mi="3" ci="0" mb="0" cb="0"/><line nr="273" mi="1" ci="0" mb="0" cb="0"/><line nr="277" mi="1" ci="0" mb="0" cb="0"/><line nr="281" mi="4" ci="0" mb="0" cb="0"/><line nr="282" mi="3" ci="0" mb="2" cb="0"/><line nr="285" mi="4" ci="0" mb="0" cb="0"/><line nr="286" mi="4" ci="0" mb="0" cb="0"/><line nr="289" mi="6" ci="0" mb="2" cb="0"/><line nr="290" mi="4" ci="0" mb="0" cb="0"/><line nr="291" mi="4" ci="0" mb="0" cb="0"/><line nr="292" mi="1" ci="0" mb="0" cb="0"/><line nr="293" mi="5" ci="0" mb="0" cb="0"/><line nr="294" mi="1" ci="0" mb="0" cb="0"/><line nr="297" mi="4" ci="0" mb="0" cb="0"/><line nr="298" mi="3" ci="0" mb="2" cb="0"/><line nr="301" mi="4" ci="0" mb="0" cb="0"/><line nr="302" mi="4" ci="0" mb="0" cb="0"/><line nr="305" mi="6" ci="0" mb="2" cb="0"/><line nr="306" mi="4" ci="0" mb="0" cb="0"/><line nr="307" mi="4" ci="0" mb="0" cb="0"/><line nr="308" mi="1" ci="0" mb="0" cb="0"/><line nr="309" mi="5" ci="0" mb="0" cb="0"/><line nr="310" mi="1" ci="0" mb="0" cb="0"/><line nr="313" mi="4" ci="0" mb="0" cb="0"/><line nr="314" mi="3" ci="0" mb="2" cb="0"/><line nr="317" mi="4" ci="0" mb="0" cb="0"/><line nr="318" mi="4" ci="0" mb="0" cb="0"/><line nr="321" mi="11" ci="0" mb="2" cb="0"/><line nr="323" mi="3" ci="0" mb="2" cb="0"/><line nr="324" mi="4" ci="0" mb="0" cb="0"/><line nr="326" mi="3" ci="0" mb="2" cb="0"/><line nr="327" mi="4" ci="0" mb="0" cb="0"/><line nr="329" mi="1" ci="0" mb="0" cb="0"/><line nr="330" mi="5" ci="0" mb="0" cb="0"/><line nr="331" mi="1" ci="0" mb="0" cb="0"/><line nr="334" mi="10" ci="0" mb="2" cb="0"/><line nr="335" mi="5" ci="0" mb="2" cb="0"/><line nr="336" mi="2" ci="0" mb="0" cb="0"/><line nr="338" mi="1" ci="0" mb="0" cb="0"/><line nr="340" mi="1" ci="0" mb="0" cb="0"/><line nr="343" mi="5" ci="0" mb="0" cb="0"/><line nr="344" mi="3" ci="0" mb="0" cb="0"/><line nr="345" mi="5" ci="0" mb="0" cb="0"/><line nr="346" mi="4" ci="0" mb="0" cb="0"/><line nr="347" mi="11" ci="0" mb="2" cb="0"/><line nr="348" mi="14" ci="0" mb="4" cb="0"/><line nr="349" mi="4" ci="0" mb="0" cb="0"/><line nr="350" mi="3" ci="0" mb="0" cb="0"/><line nr="352" mi="1" ci="0" mb="0" cb="0"/><line nr="354" mi="3" ci="0" mb="2" cb="0"/><line nr="355" mi="5" ci="0" mb="0" cb="0"/><line nr="357" mi="4" ci="0" mb="2" cb="0"/><line nr="358" mi="8" ci="0" mb="0" cb="0"/><line nr="360" mi="1" ci="0" mb="0" cb="0"/><line nr="369" mi="4" ci="0" mb="0" cb="0"/><line nr="371" mi="11" ci="0" mb="2" cb="0"/><line nr="372" mi="8" ci="0" mb="0" cb="0"/><line nr="373" mi="3" ci="0" mb="0" cb="0"/><line nr="385" mi="2" ci="0" mb="0" cb="0"/><line nr="386" mi="4" ci="0" mb="0" cb="0"/><line nr="387" mi="11" ci="0" mb="2" cb="0"/><line nr="388" mi="5" ci="0" mb="2" cb="0"/><line nr="389" mi="2" ci="0" mb="0" cb="0"/><line nr="390" mi="1" ci="0" mb="0" cb="0"/><line nr="392" mi="1" ci="0" mb="0" cb="0"/><line nr="393" mi="7" ci="0" mb="2" cb="0"/><line nr="395" mi="3" ci="0" mb="0" cb="0"/><line nr="396" mi="10" ci="0" mb="2" cb="0"/><line nr="397" mi="12" ci="0" mb="2" cb="0"/><line nr="398" mi="3" ci="0" mb="2" cb="0"/><line nr="399" mi="9" ci="0" mb="2" cb="0"/><line nr="401" mi="1" ci="0" mb="0" cb="0"/><line nr="402" mi="2" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="1000" covered="0"/><counter type="BRANCH" missed="140" covered="0"/><counter type="LINE" missed="234" covered="0"/><counter type="COMPLEXITY" missed="101" covered="0"/><counter type="METHOD" missed="31" covered="0"/><counter type="CLASS" missed="4" covered="0"/></sourcefile><sourcefile name="PlayList.java"><line nr="16" mi="0" ci="2" mb="0" cb="0"/><line nr="17" mi="0" ci="3" mb="0" cb="0"/><line nr="18" mi="0" ci="4" mb="0" cb="0"/><line nr="19" mi="0" ci="3" mb="0" cb="0"/><line nr="20" mi="0" ci="1" mb="0" cb="0"/><line nr="22" mi="0" ci="2" mb="0" cb="0"/><line nr="23" mi="0" ci="3" mb="0" cb="0"/><line nr="24" mi="0" ci="3" mb="0" cb="0"/><line nr="25" mi="0" ci="5" mb="0" cb="0"/><line nr="26" mi="0" ci="1" mb="0" cb="0"/><line nr="28" mi="0" ci="2" mb="0" cb="0"/><line nr="30" mi="0" ci="8" mb="0" cb="0"/><line nr="32" mi="0" ci="2" mb="0" cb="0"/><line nr="34" mi="0" ci="7" mb="0" cb="0"/><line nr="35" mi="1" ci="0" mb="0" cb="0"/><line nr="36" mi="3" ci="0" mb="0" cb="0"/><line nr="37" mi="0" ci="1" mb="0" cb="0"/><line nr="38" mi="0" ci="5" mb="2" cb="2"/><line nr="39" mi="4" ci="0" mb="0" cb="0"/><line nr="40" mi="0" ci="4" mb="0" cb="0"/><line nr="43" mi="0" ci="6" mb="0" cb="0"/><line nr="44" mi="0" ci="3" mb="0" cb="0"/><line nr="45" mi="1" ci="2" mb="1" cb="1"/><line nr="47" mi="0" ci="5" mb="0" cb="0"/><line nr="50" mi="0" ci="8" mb="0" cb="2"/><line nr="51" mi="0" ci="6" mb="0" cb="2"/><line nr="52" mi="0" ci="5" mb="0" cb="0"/><line nr="53" mi="0" ci="5" mb="1" cb="1"/><line nr="55" mi="0" ci="5" mb="0" cb="0"/><line nr="56" mi="1" ci="0" mb="0" cb="0"/><line nr="57" mi="2" ci="0" mb="0" cb="0"/><line nr="58" mi="0" ci="1" mb="0" cb="0"/><line nr="63" mi="0" ci="1" mb="0" cb="0"/><line nr="66" mi="0" ci="5" mb="0" cb="0"/><line nr="67" mi="0" ci="1" mb="0" cb="0"/><line nr="70" mi="0" ci="3" mb="0" cb="0"/><line nr="74" mi="0" ci="3" mb="0" cb="0"/><line nr="78" mi="0" ci="4" mb="0" cb="0"/><line nr="79" mi="0" ci="4" mb="0" cb="0"/><line nr="81" mi="0" ci="4" mb="0" cb="0"/><line nr="82" mi="0" ci="7" mb="0" cb="0"/><line nr="83" mi="0" ci="4" mb="0" cb="0"/><line nr="85" mi="0" ci="4" mb="0" cb="0"/><line nr="86" mi="0" ci="8" mb="0" cb="0"/><line nr="87" mi="0" ci="4" mb="0" cb="0"/><line nr="90" mi="0" ci="4" mb="0" cb="0"/><line nr="91" mi="4" ci="7" mb="1" cb="1"/><line nr="93" mi="4" ci="0" mb="0" cb="0"/><line nr="94" mi="7" ci="0" mb="0" cb="0"/><line nr="95" mi="4" ci="0" mb="0" cb="0"/><line nr="96" mi="1" ci="0" mb="0" cb="0"/><line nr="97" mi="0" ci="4" mb="0" cb="0"/><line nr="98" mi="0" ci="1" mb="0" cb="0"/><counter type="INSTRUCTION" missed="32" covered="170"/><counter type="BRANCH" missed="5" covered="9"/><counter type="LINE" missed="9" covered="44"/><counter type="COMPLEXITY" missed="5" covered="9"/><counter type="METHOD" missed="0" covered="7"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="NoAlbumFoundException.java"><line nr="6" mi="3" ci="0" mb="0" cb="0"/><line nr="7" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><sourcefile name="Album.java"><line nr="21" mi="2" ci="0" mb="0" cb="0"/><line nr="22" mi="3" ci="0" mb="0" cb="0"/><line nr="23" mi="3" ci="0" mb="0" cb="0"/><line nr="24" mi="3" ci="0" mb="0" cb="0"/><line nr="25" mi="4" ci="0" mb="0" cb="0"/><line nr="27" mi="5" ci="0" mb="0" cb="0"/><line nr="28" mi="5" ci="0" mb="0" cb="0"/><line nr="29" mi="1" ci="0" mb="0" cb="0"/><line nr="30" mi="2" ci="0" mb="0" cb="0"/><line nr="31" mi="1" ci="0" mb="0" cb="0"/><line nr="32" mi="3" ci="0" mb="0" cb="0"/><line nr="33" mi="1" ci="0" mb="0" cb="0"/><line nr="35" mi="2" ci="0" mb="0" cb="0"/><line nr="36" mi="3" ci="0" mb="0" cb="0"/><line nr="37" mi="3" ci="0" mb="0" cb="0"/><line nr="38" mi="3" ci="0" mb="0" cb="0"/><line nr="39" mi="3" ci="0" mb="0" cb="0"/><line nr="41" mi="5" ci="0" mb="0" cb="0"/><line nr="42" mi="5" ci="0" mb="0" cb="0"/><line nr="43" mi="1" ci="0" mb="0" cb="0"/><line nr="44" mi="2" ci="0" mb="0" cb="0"/><line nr="45" mi="1" ci="0" mb="0" cb="0"/><line nr="46" mi="5" ci="0" mb="0" cb="0"/><line nr="47" mi="1" ci="0" mb="0" cb="0"/><line nr="49" mi="2" ci="0" mb="0" cb="0"/><line nr="51" mi="8" ci="0" mb="0" cb="0"/><line nr="52" mi="9" ci="0" mb="0" cb="0"/><line nr="53" mi="2" ci="0" mb="0" cb="0"/><line nr="55" mi="7" ci="0" mb="0" cb="0"/><line nr="56" mi="1" ci="0" mb="0" cb="0"/><line nr="57" mi="3" ci="0" mb="0" cb="0"/><line nr="58" mi="1" ci="0" mb="0" cb="0"/><line nr="59" mi="5" ci="0" mb="4" cb="0"/><line nr="60" mi="4" ci="0" mb="0" cb="0"/><line nr="61" mi="4" ci="0" mb="0" cb="0"/><line nr="63" mi="5" ci="0" mb="0" cb="0"/><line nr="64" mi="10" ci="0" mb="0" cb="0"/><line nr="66" mi="6" ci="0" mb="0" cb="0"/><line nr="67" mi="3" ci="0" mb="0" cb="0"/><line nr="68" mi="3" ci="0" mb="2" cb="0"/><line nr="70" mi="5" ci="0" mb="0" cb="0"/><line nr="72" mi="8" ci="0" mb="2" cb="0"/><line nr="73" mi="6" ci="0" mb="2" cb="0"/><line nr="74" mi="5" ci="0" mb="0" cb="0"/><line nr="75" mi="5" ci="0" mb="2" cb="0"/><line nr="77" mi="5" ci="0" mb="0" cb="0"/><line nr="78" mi="1" ci="0" mb="0" cb="0"/><line nr="79" mi="2" ci="0" mb="0" cb="0"/><line nr="80" mi="1" ci="0" mb="0" cb="0"/><line nr="85" mi="1" ci="0" mb="0" cb="0"/><line nr="89" mi="5" ci="0" mb="0" cb="0"/><line nr="90" mi="1" ci="0" mb="0" cb="0"/><line nr="94" mi="3" ci="0" mb="0" cb="0"/><line nr="98" mi="3" ci="0" mb="0" cb="0"/><line nr="99" mi="2" ci="0" mb="0" cb="0"/><line nr="100" mi="2" ci="0" mb="0" cb="0"/><line nr="104" mi="3" ci="0" mb="0" cb="0"/><line nr="108" mi="3" ci="0" mb="0" cb="0"/><line nr="112" mi="4" ci="0" mb="0" cb="0"/><line nr="113" mi="4" ci="0" mb="0" cb="0"/><line nr="115" mi="4" ci="0" mb="0" cb="0"/><line nr="116" mi="7" ci="0" mb="0" cb="0"/><line nr="117" mi="4" ci="0" mb="0" cb="0"/><line nr="119" mi="4" ci="0" mb="0" cb="0"/><line nr="120" mi="7" ci="0" mb="0" cb="0"/><line nr="121" mi="4" ci="0" mb="0" cb="0"/><line nr="123" mi="4" ci="0" mb="0" cb="0"/><line nr="124" mi="9" ci="0" mb="0" cb="0"/><line nr="125" mi="4" ci="0" mb="0" cb="0"/><line nr="127" mi="4" ci="0" mb="0" cb="0"/><line nr="128" mi="8" ci="0" mb="0" cb="0"/><line nr="129" mi="4" ci="0" mb="0" cb="0"/><line nr="131" mi="4" ci="0" mb="0" cb="0"/><line nr="132" mi="5" ci="0" mb="0" cb="0"/><line nr="133" mi="9" ci="0" mb="0" cb="0"/><line nr="134" mi="4" ci="0" mb="0" cb="0"/><line nr="136" mi="4" ci="0" mb="0" cb="0"/><line nr="137" mi="11" ci="0" mb="2" cb="0"/><line nr="138" mi="4" ci="0" mb="0" cb="0"/><line nr="139" mi="7" ci="0" mb="0" cb="0"/><line nr="140" mi="4" ci="0" mb="0" cb="0"/><line nr="141" mi="1" ci="0" mb="0" cb="0"/><line nr="142" mi="4" ci="0" mb="0" cb="0"/><line nr="144" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="330" covered="0"/><counter type="BRANCH" missed="14" covered="0"/><counter type="LINE" missed="84" covered="0"/><counter type="COMPLEXITY" missed="16" covered="0"/><counter type="METHOD" missed="9" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><sourcefile name="Language.java"><line nr="3" mi="0" ci="3" mb="0" cb="0"/><line nr="4" mi="0" ci="35" mb="0" cb="0"/><line nr="7" mi="0" ci="4" mb="0" cb="0"/><line nr="8" mi="0" ci="3" mb="0" cb="0"/><line nr="9" mi="0" ci="1" mb="0" cb="0"/><line nr="12" mi="3" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="3" covered="46"/><counter type="LINE" missed="1" covered="5"/><counter type="COMPLEXITY" missed="1" covered="2"/><counter type="METHOD" missed="1" covered="2"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="Genre.java"><line nr="3" mi="0" ci="3" mb="0" cb="0"/><line nr="4" mi="0" ci="42" mb="0" cb="0"/><line nr="7" mi="0" ci="4" mb="0" cb="0"/><line nr="8" mi="0" ci="3" mb="0" cb="0"/><line nr="9" mi="0" ci="1" mb="0" cb="0"/><line nr="12" mi="0" ci="3" mb="0" cb="0"/><counter type="INSTRUCTION" missed="0" covered="56"/><counter type="LINE" missed="0" covered="6"/><counter type="COMPLEXITY" missed="0" covered="3"/><counter type="METHOD" missed="0" covered="3"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="NoPlayListFoundException.java"><line nr="6" mi="3" ci="0" mb="0" cb="0"/><line nr="7" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><sourcefile name="AudioElement.java"><line nr="20" mi="0" ci="2" mb="0" cb="0"/><line nr="21" mi="0" ci="3" mb="0" cb="0"/><line nr="22" mi="0" ci="3" mb="0" cb="0"/><line nr="23" mi="0" ci="3" mb="0" cb="0"/><line nr="24" mi="0" ci="4" mb="0" cb="0"/><line nr="25" mi="0" ci="3" mb="0" cb="0"/><line nr="26" mi="0" ci="1" mb="0" cb="0"/><line nr="28" mi="0" ci="2" mb="0" cb="0"/><line nr="29" mi="0" ci="3" mb="0" cb="0"/><line nr="30" mi="0" ci="3" mb="0" cb="0"/><line nr="31" mi="0" ci="3" mb="0" cb="0"/><line nr="32" mi="0" ci="3" mb="0" cb="0"/><line nr="33" mi="0" ci="3" mb="0" cb="0"/><line nr="34" mi="0" ci="1" mb="0" cb="0"/><line nr="36" mi="0" ci="2" mb="0" cb="0"/><line nr="38" mi="0" ci="8" mb="0" cb="0"/><line nr="39" mi="0" ci="8" mb="0" cb="0"/><line nr="40" mi="0" ci="9" mb="0" cb="0"/><line nr="41" mi="0" ci="8" mb="0" cb="0"/><line nr="42" mi="0" ci="2" mb="0" cb="0"/><line nr="44" mi="0" ci="7" mb="0" cb="0"/><line nr="45" mi="1" ci="0" mb="0" cb="0"/><line nr="46" mi="3" ci="0" mb="0" cb="0"/><line nr="47" mi="0" ci="1" mb="0" cb="0"/><line nr="48" mi="0" ci="5" mb="2" cb="2"/><line nr="49" mi="4" ci="0" mb="0" cb="0"/><line nr="50" mi="0" ci="4" mb="0" cb="0"/><line nr="52" mi="0" ci="1" mb="0" cb="0"/><line nr="55" mi="3" ci="0" mb="0" cb="0"/><line nr="59" mi="3" ci="0" mb="0" cb="0"/><line nr="63" mi="3" ci="0" mb="0" cb="0"/><line nr="67" mi="0" ci="10" mb="0" cb="0"/><line nr="71" mi="0" ci="4" mb="0" cb="0"/><line nr="72" mi="0" ci="7" mb="0" cb="0"/><line nr="73" mi="0" ci="4" mb="0" cb="0"/><line nr="75" mi="0" ci="4" mb="0" cb="0"/><line nr="76" mi="0" ci="7" mb="0" cb="0"/><line nr="77" mi="0" ci="4" mb="0" cb="0"/><line nr="79" mi="0" ci="4" mb="0" cb="0"/><line nr="80" mi="0" ci="9" mb="0" cb="0"/><line nr="81" mi="0" ci="4" mb="0" cb="0"/><line nr="83" mi="0" ci="4" mb="0" cb="0"/><line nr="84" mi="0" ci="8" mb="0" cb="0"/><line nr="85" mi="0" ci="4" mb="0" cb="0"/><line nr="87" mi="0" ci="4" mb="0" cb="0"/><line nr="88" mi="0" ci="7" mb="0" cb="0"/><line nr="89" mi="0" ci="4" mb="0" cb="0"/><line nr="91" mi="0" ci="1" mb="0" cb="0"/><line nr="95" mi="5" ci="0" mb="0" cb="0"/><line nr="97" mi="6" ci="0" mb="0" cb="0"/><line nr="98" mi="3" ci="0" mb="0" cb="0"/><line nr="99" mi="2" ci="0" mb="0" cb="0"/><line nr="100" mi="3" ci="0" mb="0" cb="0"/><line nr="102" mi="2" ci="0" mb="0" cb="0"/><line nr="104" mi="4" ci="0" mb="2" cb="0"/><line nr="105" mi="3" ci="0" mb="0" cb="0"/><line nr="106" mi="3" ci="0" mb="0" cb="0"/><line nr="107" mi="3" ci="0" mb="0" cb="0"/><line nr="108" mi="3" ci="0" mb="0" cb="0"/><line nr="110" mi="8" ci="0" mb="4" cb="0"/><line nr="111" mi="1" ci="0" mb="0" cb="0"/><line nr="112" mi="2" ci="0" mb="0" cb="0"/><line nr="113" mi="3" ci="0" mb="0" cb="0"/><line nr="115" mi="1" ci="0" mb="0" cb="0"/><line nr="116" mi="2" ci="0" mb="0" cb="0"/><line nr="117" mi="3" ci="0" mb="0" cb="0"/><line nr="119" mi="1" ci="0" mb="0" cb="0"/><line nr="120" mi="3" ci="0" mb="0" cb="0"/><line nr="121" mi="3" ci="0" mb="0" cb="0"/><line nr="123" mi="3" ci="0" mb="0" cb="0"/><line nr="125" mi="4" ci="0" mb="0" cb="0"/><line nr="128" mi="2" ci="0" mb="0" cb="0"/><line nr="130" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="91" covered="181"/><counter type="BRANCH" missed="8" covered="2"/><counter type="LINE" missed="31" covered="42"/><counter type="COMPLEXITY" missed="10" covered="5"/><counter type="METHOD" missed="4" covered="5"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="NoElementFoundException.java"><line nr="6" mi="3" ci="0" mb="0" cb="0"/><line nr="7" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="4" covered="0"/><counter type="LINE" missed="2" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><sourcefile name="Category.java"><line nr="3" mi="0" ci="3" mb="0" cb="0"/><line nr="4" mi="0" ci="35" mb="0" cb="0"/><line nr="7" mi="0" ci="4" mb="0" cb="0"/><line nr="8" mi="0" ci="3" mb="0" cb="0"/><line nr="9" mi="0" ci="1" mb="0" cb="0"/><line nr="12" mi="3" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="3" covered="46"/><counter type="LINE" missed="1" covered="5"/><counter type="COMPLEXITY" missed="1" covered="2"/><counter type="METHOD" missed="1" covered="2"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="AudioBook.java"><line nr="11" mi="7" ci="0" mb="0" cb="0"/><line nr="12" mi="3" ci="0" mb="0" cb="0"/><line nr="13" mi="3" ci="0" mb="0" cb="0"/><line nr="14" mi="1" ci="0" mb="0" cb="0"/><line nr="17" mi="0" ci="6" mb="0" cb="0"/><line nr="18" mi="0" ci="3" mb="0" cb="0"/><line nr="19" mi="0" ci="3" mb="0" cb="0"/><line nr="20" mi="0" ci="1" mb="0" cb="0"/><line nr="23" mi="3" ci="0" mb="0" cb="0"/><line nr="24" mi="8" ci="0" mb="0" cb="0"/><line nr="25" mi="8" ci="0" mb="0" cb="0"/><line nr="26" mi="1" ci="0" mb="0" cb="0"/><line nr="29" mi="0" ci="3" mb="0" cb="0"/><line nr="33" mi="0" ci="9" mb="4" cb="1"/><line nr="34" mi="4" ci="0" mb="0" cb="0"/><line nr="35" mi="0" ci="4" mb="0" cb="0"/><line nr="36" mi="4" ci="0" mb="0" cb="0"/><line nr="37" mi="4" ci="0" mb="0" cb="0"/><line nr="38" mi="3" ci="0" mb="0" cb="0"/><line nr="40" mi="0" ci="1" mb="0" cb="0"/><line nr="43" mi="0" ci="3" mb="0" cb="0"/><line nr="47" mi="0" ci="9" mb="4" cb="1"/><line nr="48" mi="4" ci="0" mb="0" cb="0"/><line nr="49" mi="0" ci="4" mb="0" cb="0"/><line nr="50" mi="4" ci="0" mb="0" cb="0"/><line nr="51" mi="4" ci="0" mb="0" cb="0"/><line nr="52" mi="3" ci="0" mb="0" cb="0"/><line nr="54" mi="0" ci="1" mb="0" cb="0"/><line nr="58" mi="8" ci="0" mb="0" cb="0"/><line nr="64" mi="4" ci="0" mb="0" cb="0"/><line nr="66" mi="4" ci="0" mb="0" cb="0"/><line nr="68" mi="4" ci="0" mb="0" cb="0"/><line nr="69" mi="8" ci="0" mb="0" cb="0"/><line nr="70" mi="4" ci="0" mb="0" cb="0"/><line nr="72" mi="4" ci="0" mb="0" cb="0"/><line nr="73" mi="8" ci="0" mb="0" cb="0"/><line nr="74" mi="4" ci="0" mb="0" cb="0"/><line nr="76" mi="4" ci="0" mb="0" cb="0"/><line nr="77" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="117" covered="47"/><counter type="BRANCH" missed="8" covered="2"/><counter type="LINE" missed="27" covered="12"/><counter type="COMPLEXITY" missed="12" covered="5"/><counter type="METHOD" missed="4" covered="5"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><sourcefile name="Song.java"><line nr="11" mi="0" ci="7" mb="0" cb="0"/><line nr="12" mi="0" ci="3" mb="0" cb="0"/><line nr="13" mi="0" ci="1" mb="0" cb="0"/><line nr="16" mi="0" ci="6" mb="0" cb="0"/><line nr="17" mi="0" ci="3" mb="0" cb="0"/><line nr="18" mi="0" ci="1" mb="0" cb="0"/><line nr="21" mi="0" ci="3" mb="0" cb="0"/><line nr="22" mi="0" ci="8" mb="0" cb="0"/><line nr="23" mi="0" ci="1" mb="0" cb="0"/><line nr="26" mi="0" ci="4" mb="0" cb="0"/><line nr="30" mi="0" ci="9" mb="0" cb="6"/><line nr="31" mi="0" ci="4" mb="0" cb="0"/><line nr="32" mi="0" ci="4" mb="0" cb="0"/><line nr="33" mi="0" ci="4" mb="0" cb="0"/><line nr="34" mi="0" ci="4" mb="0" cb="0"/><line nr="35" mi="0" ci="4" mb="0" cb="0"/><line nr="36" mi="0" ci="3" mb="0" cb="0"/><line nr="38" mi="0" ci="1" mb="0" cb="0"/><line nr="41" mi="0" ci="6" mb="0" cb="0"/><line nr="46" mi="0" ci="4" mb="0" cb="0"/><line nr="48" mi="0" ci="4" mb="0" cb="0"/><line nr="50" mi="0" ci="4" mb="0" cb="0"/><line nr="51" mi="0" ci="8" mb="0" cb="0"/><line nr="52" mi="0" ci="4" mb="0" cb="0"/><line nr="54" mi="0" ci="4" mb="0" cb="0"/><line nr="55" mi="0" ci="1" mb="0" cb="0"/><counter type="INSTRUCTION" missed="0" covered="105"/><counter type="BRANCH" missed="0" covered="6"/><counter type="LINE" missed="0" covered="26"/><counter type="COMPLEXITY" missed="0" covered="12"/><counter type="METHOD" missed="0" covered="7"/><counter type="CLASS" missed="0" covered="1"/></sourcefile><counter type="INSTRUCTION" missed="1588" covered="651"/><counter type="BRANCH" missed="175" covered="19"/><counter type="LINE" missed="393" covered="140"/><counter type="COMPLEXITY" missed="149" covered="38"/><counter type="METHOD" missed="53" covered="31"/><counter type="CLASS" missed="8" covered="7"/></package><package name="musichub/main"><class name="musichub/main/Main" sourcefilename="Main.java"><method name="&lt;init&gt;" desc="()V" line="16"><counter type="INSTRUCTION" missed="3" covered="0"/><counter type="LINE" missed="1" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="main" desc="([Ljava/lang/String;)V" line="19"><counter type="INSTRUCTION" missed="673" covered="0"/><counter type="BRANCH" missed="43" covered="0"/><counter type="LINE" missed="234" covered="0"/><counter type="COMPLEXITY" missed="30" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><method name="printAvailableCommands" desc="()V" line="318"><counter type="INSTRUCTION" missed="46" covered="0"/><counter type="LINE" missed="16" covered="0"/><counter type="COMPLEXITY" missed="1" covered="0"/><counter type="METHOD" missed="1" covered="0"/></method><counter type="INSTRUCTION" missed="722" covered="0"/><counter type="BRANCH" missed="43" covered="0"/><counter type="LINE" missed="251" covered="0"/><counter type="COMPLEXITY" missed="32" covered="0"/><counter type="METHOD" missed="3" covered="0"/><counter type="CLASS" missed="1" covered="0"/></class><sourcefile name="Main.java"><line nr="16" mi="3" ci="0" mb="0" cb="0"/><line nr="19" mi="1" ci="0" mb="0" cb="0"/><line nr="21" mi="4" ci="0" mb="0" cb="0"/><line nr="23" mi="3" ci="0" mb="0" cb="0"/><line nr="26" mi="5" ci="0" mb="0" cb="0"/><line nr="27" mi="3" ci="0" mb="0" cb="0"/><line nr="31" mi="5" ci="0" mb="2" cb="0"/><line nr="33" mi="4" ci="0" mb="2" cb="0"/><line nr="34" mi="4" ci="0" mb="17" cb="0"/><line nr="36" mi="2" ci="0" mb="0" cb="0"/><line nr="38" mi="1" ci="0" mb="0" cb="0"/><line nr="39" mi="3" ci="0" mb="0" cb="0"/><line nr="40" mi="1" ci="0" mb="0" cb="0"/><line nr="43" mi="4" ci="0" mb="0" cb="0"/><line nr="44" mi="1" ci="0" mb="0" cb="0"/><line nr="45" mi="3" ci="0" mb="0" cb="0"/><line nr="46" mi="1" ci="0" mb="0" cb="0"/><line nr="49" mi="3" ci="0" mb="0" cb="0"/><line nr="50" mi="4" ci="0" mb="0" cb="0"/><line nr="52" mi="3" ci="0" mb="0" cb="0"/><line nr="54" mi="4" ci="0" mb="0" cb="0"/><line nr="55" mi="3" ci="0" mb="0" cb="0"/><line nr="56" mi="1" ci="0" mb="0" cb="0"/><line nr="57" mi="3" ci="0" mb="0" cb="0"/><line nr="58" mi="5" ci="0" mb="0" cb="0"/><line nr="59" mi="1" ci="0" mb="0" cb="0"/><line nr="60" mi="1" ci="0" mb="0" cb="0"/><line nr="61" mi="3" ci="0" mb="0" cb="0"/><line nr="62" mi="1" ci="0" mb="0" cb="0"/><line nr="65" mi="3" ci="0" mb="0" cb="0"/><line nr="66" mi="4" ci="0" mb="0" cb="0"/><line nr="68" mi="3" ci="0" mb="0" cb="0"/><line nr="70" mi="4" ci="0" mb="0" cb="0"/><line nr="71" mi="5" ci="0" mb="0" cb="0"/><line nr="72" mi="3" ci="0" mb="0" cb="0"/><line nr="73" mi="4" ci="0" mb="0" cb="0"/><line nr="74" mi="1" ci="0" mb="0" cb="0"/><line nr="75" mi="3" ci="0" mb="0" cb="0"/><line nr="76" mi="5" ci="0" mb="0" cb="0"/><line nr="77" mi="1" ci="0" mb="0" cb="0"/><line nr="78" mi="1" ci="0" mb="0" cb="0"/><line nr="79" mi="3" ci="0" mb="0" cb="0"/><line nr="80" mi="1" ci="0" mb="0" cb="0"/><line nr="83" mi="4" ci="0" mb="0" cb="0"/><line nr="84" mi="1" ci="0" mb="0" cb="0"/><line nr="85" mi="3" ci="0" mb="0" cb="0"/><line nr="86" mi="1" ci="0" mb="0" cb="0"/><line nr="89" mi="3" ci="0" mb="0" cb="0"/><line nr="90" mi="3" ci="0" mb="0" cb="0"/><line nr="91" mi="3" ci="0" mb="0" cb="0"/><line nr="92" mi="3" ci="0" mb="0" cb="0"/><line nr="93" mi="3" ci="0" mb="0" cb="0"/><line nr="94" mi="3" ci="0" mb="0" cb="0"/><line nr="95" mi="3" ci="0" mb="0" cb="0"/><line nr="99" mi="3" ci="0" mb="0" cb="0"/><line nr="100" mi="4" ci="0" mb="0" cb="0"/><line nr="101" mi="1" ci="0" mb="0" cb="0"/><line nr="102" mi="2" ci="0" mb="0" cb="0"/><line nr="103" mi="3" ci="0" mb="0" cb="0"/><line nr="104" mi="3" ci="0" mb="0" cb="0"/><line nr="105" mi="3" ci="0" mb="0" cb="0"/><line nr="106" mi="3" ci="0" mb="0" cb="0"/><line nr="107" mi="1" ci="0" mb="0" cb="0"/><line nr="108" mi="1" ci="0" mb="0" cb="0"/><line nr="110" mi="3" ci="0" mb="0" cb="0"/><line nr="111" mi="3" ci="0" mb="0" cb="0"/><line nr="112" mi="3" ci="0" mb="2" cb="0"/><line nr="113" mi="2" ci="0" mb="0" cb="0"/><line nr="114" mi="3" ci="0" mb="0" cb="0"/><line nr="115" mi="3" ci="0" mb="0" cb="0"/><line nr="116" mi="3" ci="0" mb="0" cb="0"/><line nr="117" mi="3" ci="0" mb="0" cb="0"/><line nr="118" mi="1" ci="0" mb="0" cb="0"/><line nr="121" mi="9" ci="0" mb="0" cb="0"/><line nr="122" mi="3" ci="0" mb="0" cb="0"/><line nr="123" mi="3" ci="0" mb="0" cb="0"/><line nr="124" mi="3" ci="0" mb="0" cb="0"/><line nr="125" mi="10" ci="0" mb="2" cb="0"/><line nr="126" mi="3" ci="0" mb="0" cb="0"/><line nr="127" mi="3" ci="0" mb="0" cb="0"/><line nr="128" mi="1" ci="0" mb="0" cb="0"/><line nr="129" mi="3" ci="0" mb="0" cb="0"/><line nr="130" mi="1" ci="0" mb="0" cb="0"/><line nr="133" mi="3" ci="0" mb="0" cb="0"/><line nr="134" mi="3" ci="0" mb="0" cb="0"/><line nr="135" mi="3" ci="0" mb="0" cb="0"/><line nr="136" mi="3" ci="0" mb="0" cb="0"/><line nr="137" mi="3" ci="0" mb="0" cb="0"/><line nr="138" mi="3" ci="0" mb="0" cb="0"/><line nr="139" mi="4" ci="0" mb="0" cb="0"/><line nr="140" mi="3" ci="0" mb="0" cb="0"/><line nr="141" mi="3" ci="0" mb="0" cb="0"/><line nr="142" mi="8" ci="0" mb="0" cb="0"/><line nr="143" mi="3" ci="0" mb="0" cb="0"/><line nr="144" mi="3" ci="0" mb="0" cb="0"/><line nr="145" mi="3" ci="0" mb="0" cb="0"/><line nr="146" mi="10" ci="0" mb="2" cb="0"/><line nr="147" mi="3" ci="0" mb="0" cb="0"/><line nr="148" mi="3" ci="0" mb="0" cb="0"/><line nr="149" mi="1" ci="0" mb="0" cb="0"/><line nr="150" mi="3" ci="0" mb="0" cb="0"/><line nr="151" mi="1" ci="0" mb="0" cb="0"/><line nr="154" mi="3" ci="0" mb="0" cb="0"/><line nr="155" mi="3" ci="0" mb="0" cb="0"/><line nr="156" mi="3" ci="0" mb="0" cb="0"/><line nr="157" mi="3" ci="0" mb="2" cb="0"/><line nr="158" mi="4" ci="0" mb="0" cb="0"/><line nr="159" mi="7" ci="0" mb="2" cb="0"/><line nr="160" mi="1" ci="0" mb="0" cb="0"/><line nr="161" mi="3" ci="0" mb="0" cb="0"/><line nr="163" mi="3" ci="0" mb="0" cb="0"/><line nr="164" mi="3" ci="0" mb="0" cb="0"/><line nr="165" mi="3" ci="0" mb="2" cb="0"/><line nr="166" mi="4" ci="0" mb="0" cb="0"/><line nr="167" mi="4" ci="0" mb="0" cb="0"/><line nr="168" mi="1" ci="0" mb="0" cb="0"/><line nr="169" mi="3" ci="0" mb="0" cb="0"/><line nr="171" mi="4" ci="0" mb="0" cb="0"/><line nr="172" mi="1" ci="0" mb="0" cb="0"/><line nr="173" mi="4" ci="0" mb="0" cb="0"/><line nr="174" mi="1" ci="0" mb="0" cb="0"/><line nr="175" mi="3" ci="0" mb="0" cb="0"/><line nr="176" mi="3" ci="0" mb="0" cb="0"/><line nr="177" mi="1" ci="0" mb="0" cb="0"/><line nr="178" mi="3" ci="0" mb="0" cb="0"/><line nr="179" mi="1" ci="0" mb="0" cb="0"/><line nr="182" mi="3" ci="0" mb="0" cb="0"/><line nr="183" mi="3" ci="0" mb="0" cb="0"/><line nr="184" mi="3" ci="0" mb="0" cb="0"/><line nr="185" mi="3" ci="0" mb="0" cb="0"/><line nr="186" mi="3" ci="0" mb="0" cb="0"/><line nr="187" mi="3" ci="0" mb="0" cb="0"/><line nr="188" mi="3" ci="0" mb="0" cb="0"/><line nr="189" mi="3" ci="0" mb="0" cb="0"/><line nr="190" mi="4" ci="0" mb="0" cb="0"/><line nr="191" mi="3" ci="0" mb="0" cb="0"/><line nr="192" mi="3" ci="0" mb="0" cb="0"/><line nr="193" mi="3" ci="0" mb="0" cb="0"/><line nr="194" mi="3" ci="0" mb="0" cb="0"/><line nr="195" mi="10" ci="0" mb="0" cb="0"/><line nr="196" mi="3" ci="0" mb="0" cb="0"/><line nr="197" mi="3" ci="0" mb="0" cb="0"/><line nr="198" mi="3" ci="0" mb="0" cb="0"/><line nr="199" mi="3" ci="0" mb="0" cb="0"/><line nr="200" mi="10" ci="0" mb="2" cb="0"/><line nr="201" mi="1" ci="0" mb="0" cb="0"/><line nr="202" mi="3" ci="0" mb="0" cb="0"/><line nr="203" mi="1" ci="0" mb="0" cb="0"/><line nr="206" mi="3" ci="0" mb="0" cb="0"/><line nr="207" mi="3" ci="0" mb="0" cb="0"/><line nr="208" mi="3" ci="0" mb="0" cb="0"/><line nr="209" mi="3" ci="0" mb="2" cb="0"/><line nr="210" mi="4" ci="0" mb="0" cb="0"/><line nr="211" mi="4" ci="0" mb="0" cb="0"/><line nr="212" mi="1" ci="0" mb="0" cb="0"/><line nr="213" mi="3" ci="0" mb="0" cb="0"/><line nr="214" mi="3" ci="0" mb="0" cb="0"/><line nr="215" mi="5" ci="0" mb="0" cb="0"/><line nr="216" mi="3" ci="0" mb="0" cb="0"/><line nr="217" mi="3" ci="0" mb="0" cb="0"/><line nr="219" mi="3" ci="0" mb="0" cb="0"/><line nr="220" mi="3" ci="0" mb="2" cb="0"/><line nr="221" mi="4" ci="0" mb="0" cb="0"/><line nr="222" mi="4" ci="0" mb="0" cb="0"/><line nr="223" mi="1" ci="0" mb="0" cb="0"/><line nr="224" mi="5" ci="0" mb="2" cb="0"/><line nr="225" mi="3" ci="0" mb="0" cb="0"/><line nr="226" mi="3" ci="0" mb="0" cb="0"/><line nr="228" mi="4" ci="0" mb="0" cb="0"/><line nr="229" mi="1" ci="0" mb="0" cb="0"/><line nr="230" mi="4" ci="0" mb="0" cb="0"/><line nr="231" mi="1" ci="0" mb="0" cb="0"/><line nr="233" mi="3" ci="0" mb="0" cb="0"/><line nr="234" mi="3" ci="0" mb="0" cb="0"/><line nr="235" mi="1" ci="0" mb="0" cb="0"/><line nr="236" mi="3" ci="0" mb="0" cb="0"/><line nr="237" mi="3" ci="0" mb="0" cb="0"/><line nr="238" mi="1" ci="0" mb="0" cb="0"/><line nr="239" mi="3" ci="0" mb="0" cb="0"/><line nr="240" mi="1" ci="0" mb="0" cb="0"/><line nr="243" mi="3" ci="0" mb="0" cb="0"/><line nr="244" mi="3" ci="0" mb="0" cb="0"/><line nr="245" mi="3" ci="0" mb="2" cb="0"/><line nr="246" mi="4" ci="0" mb="0" cb="0"/><line nr="247" mi="4" ci="0" mb="0" cb="0"/><line nr="248" mi="1" ci="0" mb="0" cb="0"/><line nr="249" mi="3" ci="0" mb="0" cb="0"/><line nr="251" mi="3" ci="0" mb="0" cb="0"/><line nr="252" mi="1" ci="0" mb="0" cb="0"/><line nr="253" mi="4" ci="0" mb="0" cb="0"/><line nr="254" mi="1" ci="0" mb="0" cb="0"/><line nr="255" mi="3" ci="0" mb="0" cb="0"/><line nr="256" mi="3" ci="0" mb="0" cb="0"/><line nr="257" mi="1" ci="0" mb="0" cb="0"/><line nr="258" mi="3" ci="0" mb="0" cb="0"/><line nr="259" mi="1" ci="0" mb="0" cb="0"/><line nr="262" mi="2" ci="0" mb="0" cb="0"/><line nr="263" mi="2" ci="0" mb="0" cb="0"/><line nr="264" mi="2" ci="0" mb="0" cb="0"/><line nr="265" mi="3" ci="0" mb="0" cb="0"/><line nr="266" mi="3" ci="0" mb="0" cb="0"/><line nr="267" mi="1" ci="0" mb="0" cb="0"/><line nr="268" mi="3" ci="0" mb="0" cb="0"/><line nr="269" mi="1" ci="0" mb="0" cb="0"/><line nr="273" mi="2" ci="0" mb="0" cb="0"/><line nr="275" mi="1" ci="0" mb="0" cb="0"/><line nr="276" mi="4" ci="0" mb="0" cb="0"/><line nr="278" mi="1" ci="0" mb="0" cb="0"/><line nr="279" mi="3" ci="0" mb="0" cb="0"/><line nr="280" mi="5" ci="0" mb="0" cb="0"/><line nr="281" mi="2" ci="0" mb="0" cb="0"/><line nr="282" mi="1" ci="0" mb="0" cb="0"/><line nr="283" mi="3" ci="0" mb="0" cb="0"/><line nr="284" mi="1" ci="0" mb="0" cb="0"/><line nr="287" mi="1" ci="0" mb="0" cb="0"/><line nr="288" mi="3" ci="0" mb="0" cb="0"/><line nr="289" mi="3" ci="0" mb="0" cb="0"/><line nr="290" mi="1" ci="0" mb="0" cb="0"/><line nr="293" mi="3" ci="0" mb="0" cb="0"/><line nr="294" mi="4" ci="0" mb="0" cb="0"/><line nr="296" mi="3" ci="0" mb="0" cb="0"/><line nr="298" mi="4" ci="0" mb="0" cb="0"/><line nr="299" mi="5" ci="0" mb="0" cb="0"/><line nr="300" mi="3" ci="0" mb="0" cb="0"/><line nr="301" mi="4" ci="0" mb="0" cb="0"/><line nr="302" mi="1" ci="0" mb="0" cb="0"/><line nr="303" mi="3" ci="0" mb="0" cb="0"/><line nr="304" mi="5" ci="0" mb="0" cb="0"/><line nr="305" mi="1" ci="0" mb="0" cb="0"/><line nr="306" mi="1" ci="0" mb="0" cb="0"/><line nr="307" mi="3" ci="0" mb="0" cb="0"/><line nr="308" mi="1" ci="0" mb="0" cb="0"/><line nr="311" mi="1" ci="0" mb="0" cb="0"/><line nr="314" mi="2" ci="0" mb="0" cb="0"/><line nr="315" mi="1" ci="0" mb="0" cb="0"/><line nr="318" mi="3" ci="0" mb="0" cb="0"/><line nr="319" mi="3" ci="0" mb="0" cb="0"/><line nr="320" mi="3" ci="0" mb="0" cb="0"/><line nr="321" mi="3" ci="0" mb="0" cb="0"/><line nr="322" mi="3" ci="0" mb="0" cb="0"/><line nr="323" mi="3" ci="0" mb="0" cb="0"/><line nr="324" mi="3" ci="0" mb="0" cb="0"/><line nr="325" mi="3" ci="0" mb="0" cb="0"/><line nr="326" mi="3" ci="0" mb="0" cb="0"/><line nr="327" mi="3" ci="0" mb="0" cb="0"/><line nr="328" mi="3" ci="0" mb="0" cb="0"/><line nr="329" mi="3" ci="0" mb="0" cb="0"/><line nr="330" mi="3" ci="0" mb="0" cb="0"/><line nr="331" mi="3" ci="0" mb="0" cb="0"/><line nr="332" mi="3" ci="0" mb="0" cb="0"/><line nr="333" mi="1" ci="0" mb="0" cb="0"/><counter type="INSTRUCTION" missed="722" covered="0"/><counter type="BRANCH" missed="43" covered="0"/><counter type="LINE" missed="251" covered="0"/><counter type="COMPLEXITY" missed="32" covered="0"/><counter type="METHOD" missed="3" covered="0"/><counter type="CLASS" missed="1" covered="0"/></sourcefile><counter type="INSTRUCTION" missed="722" covered="0"/><counter type="BRANCH" missed="43" covered="0"/><counter type="LINE" missed="251" covered="0"/><counter type="COMPLEXITY" missed="32" covered="0"/><counter type="METHOD" missed="3" covered="0"/><counter type="CLASS" missed="1" covered="0"/></package><counter type="INSTRUCTION" missed="2376" covered="802"/><counter type="BRANCH" missed="223" covered="23"/><counter type="LINE" missed="672" covered="182"/><counter type="COMPLEXITY" missed="187" covered="49"/><counter type="METHOD" missed="59" covered="40"/><counter type="CLASS" missed="10" covered="10"/></report> \ No newline at end of file
diff --git a/target/site/jacoco/musichub.business/AudioElement.html b/target/site/jacoco/musichub.business/AudioElement.html
index 18f7368..6498736 100644
--- a/target/site/jacoco/musichub.business/AudioElement.html
+++ b/target/site/jacoco/musichub.business/AudioElement.html
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>AudioElement</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <a href="index.html" class="el_package">musichub.business</a> &gt; <span class="el_class">AudioElement</span></div><h1>AudioElement</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">85 of 266</td><td class="ctr2">68 %</td><td class="bar">9 of 11</td><td class="ctr2">18 %</td><td class="ctr1">11</td><td class="ctr2">16</td><td class="ctr1">30</td><td class="ctr2">72</td><td class="ctr1">4</td><td class="ctr2">9</td></tr></tfoot><tbody><tr><td id="a7"><a href="AudioElement.java.html#L99" class="el_method">manageAudioElement()</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="103" height="10" title="68" alt="68"/></td><td class="ctr2" id="c5">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="7" alt="7"/></td><td class="ctr2" id="e1">0 %</td><td class="ctr1" id="f0">6</td><td class="ctr2" id="g0">6</td><td class="ctr1" id="h0">24</td><td class="ctr2" id="i0">24</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a0"><a href="AudioElement.java.html#L40" class="el_method">AudioElement(Element)</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="12" height="10" title="8" alt="8"/><img src="../jacoco-resources/greenbar.gif" width="83" height="10" title="55" alt="55"/></td><td class="ctr2" id="c4">87 %</td><td class="bar" id="d1"><img src="../jacoco-resources/redbar.gif" width="34" height="10" title="2" alt="2"/><img src="../jacoco-resources/greenbar.gif" width="34" height="10" title="2" alt="2"/></td><td class="ctr2" id="e0">50 %</td><td class="ctr1" id="f1">2</td><td class="ctr2" id="g1">3</td><td class="ctr1" id="h1">3</td><td class="ctr2" id="i2">14</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a6"><a href="AudioElement.java.html#L59" class="el_method">getUUID()</a></td><td class="bar" id="b2"><img src="../jacoco-resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c6">0 %</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">1</td><td class="ctr2" id="i5">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a4"><a href="AudioElement.java.html#L63" class="el_method">getArtist()</a></td><td class="bar" id="b3"><img src="../jacoco-resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c7">0 %</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">1</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">1</td><td class="ctr2" id="i6">1</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a5"><a href="AudioElement.java.html#L67" class="el_method">getTitle()</a></td><td class="bar" id="b4"><img src="../jacoco-resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c8">0 %</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">1</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">1</td><td class="ctr2" id="i7">1</td><td class="ctr1" id="j3">1</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a3"><a href="AudioElement.java.html#L75" class="el_method">createXMLElement(Document, Element)</a></td><td class="bar" id="b5"><img src="../jacoco-resources/greenbar.gif" width="120" height="10" title="79" alt="79"/></td><td class="ctr2" id="c0">100 %</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f5">0</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h5">0</td><td class="ctr2" id="i1">16</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a2"><a href="AudioElement.java.html#L24" class="el_method">AudioElement(String, String, int, String, String)</a></td><td class="bar" id="b6"><img src="../jacoco-resources/greenbar.gif" width="28" height="10" title="19" alt="19"/></td><td class="ctr2" id="c1">100 %</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f6">0</td><td class="ctr2" id="g6">1</td><td class="ctr1" id="h6">0</td><td class="ctr2" id="i3">7</td><td class="ctr1" id="j6">0</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a1"><a href="AudioElement.java.html#L32" class="el_method">AudioElement(String, String, int, String)</a></td><td class="bar" id="b7"><img src="../jacoco-resources/greenbar.gif" width="27" height="10" title="18" alt="18"/></td><td class="ctr2" id="c2">100 %</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td class="ctr1" id="f7">0</td><td class="ctr2" id="g7">1</td><td class="ctr1" id="h7">0</td><td class="ctr2" id="i4">7</td><td class="ctr1" id="j7">0</td><td class="ctr2" id="k7">1</td></tr><tr><td id="a8"><a href="AudioElement.java.html#L71" class="el_method">toString()</a></td><td class="bar" id="b8"><img src="../jacoco-resources/greenbar.gif" width="15" height="10" title="10" alt="10"/></td><td class="ctr2" id="c3">100 %</td><td class="bar" id="d8"/><td class="ctr2" id="e8">n/a</td><td class="ctr1" id="f8">0</td><td class="ctr2" id="g8">1</td><td class="ctr1" id="h8">0</td><td class="ctr2" id="i8">1</td><td class="ctr1" id="j8">0</td><td class="ctr2" id="k8">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>AudioElement</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <a href="index.html" class="el_package">musichub.business</a> &gt; <span class="el_class">AudioElement</span></div><h1>AudioElement</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">91 of 272</td><td class="ctr2">66 %</td><td class="bar">8 of 10</td><td class="ctr2">20 %</td><td class="ctr1">10</td><td class="ctr2">15</td><td class="ctr1">31</td><td class="ctr2">73</td><td class="ctr1">4</td><td class="ctr2">9</td></tr></tfoot><tbody><tr><td id="a7"><a href="AudioElement.java.html#L95" class="el_method">manageAudioElement()</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="112" height="10" title="74" alt="74"/></td><td class="ctr2" id="c5">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="6" alt="6"/></td><td class="ctr2" id="e1">0 %</td><td class="ctr1" id="f0">5</td><td class="ctr2" id="g0">5</td><td class="ctr1" id="h0">25</td><td class="ctr2" id="i0">25</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a0"><a href="AudioElement.java.html#L36" class="el_method">AudioElement(Element)</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="12" height="10" title="8" alt="8"/><img src="../jacoco-resources/greenbar.gif" width="83" height="10" title="55" alt="55"/></td><td class="ctr2" id="c4">87 %</td><td class="bar" id="d1"><img src="../jacoco-resources/redbar.gif" width="40" height="10" title="2" alt="2"/><img src="../jacoco-resources/greenbar.gif" width="40" height="10" title="2" alt="2"/></td><td class="ctr2" id="e0">50 %</td><td class="ctr1" id="f1">2</td><td class="ctr2" id="g1">3</td><td class="ctr1" id="h1">3</td><td class="ctr2" id="i2">14</td><td class="ctr1" id="j4">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a6"><a href="AudioElement.java.html#L55" class="el_method">getUUID()</a></td><td class="bar" id="b2"><img src="../jacoco-resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c6">0 %</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">1</td><td class="ctr2" id="i5">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a4"><a href="AudioElement.java.html#L59" class="el_method">getArtist()</a></td><td class="bar" id="b3"><img src="../jacoco-resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c7">0 %</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f3">1</td><td class="ctr2" id="g3">1</td><td class="ctr1" id="h3">1</td><td class="ctr2" id="i6">1</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a5"><a href="AudioElement.java.html#L63" class="el_method">getTitle()</a></td><td class="bar" id="b4"><img src="../jacoco-resources/redbar.gif" width="4" height="10" title="3" alt="3"/></td><td class="ctr2" id="c8">0 %</td><td class="bar" id="d4"/><td class="ctr2" id="e4">n/a</td><td class="ctr1" id="f4">1</td><td class="ctr2" id="g4">1</td><td class="ctr1" id="h4">1</td><td class="ctr2" id="i7">1</td><td class="ctr1" id="j3">1</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a3"><a href="AudioElement.java.html#L71" class="el_method">createXMLElement(Document, Element)</a></td><td class="bar" id="b5"><img src="../jacoco-resources/greenbar.gif" width="120" height="10" title="79" alt="79"/></td><td class="ctr2" id="c0">100 %</td><td class="bar" id="d5"/><td class="ctr2" id="e5">n/a</td><td class="ctr1" id="f5">0</td><td class="ctr2" id="g5">1</td><td class="ctr1" id="h5">0</td><td class="ctr2" id="i1">16</td><td class="ctr1" id="j5">0</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a2"><a href="AudioElement.java.html#L20" class="el_method">AudioElement(String, String, int, String, String)</a></td><td class="bar" id="b6"><img src="../jacoco-resources/greenbar.gif" width="28" height="10" title="19" alt="19"/></td><td class="ctr2" id="c1">100 %</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f6">0</td><td class="ctr2" id="g6">1</td><td class="ctr1" id="h6">0</td><td class="ctr2" id="i3">7</td><td class="ctr1" id="j6">0</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a1"><a href="AudioElement.java.html#L28" class="el_method">AudioElement(String, String, int, String)</a></td><td class="bar" id="b7"><img src="../jacoco-resources/greenbar.gif" width="27" height="10" title="18" alt="18"/></td><td class="ctr2" id="c2">100 %</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td class="ctr1" id="f7">0</td><td class="ctr2" id="g7">1</td><td class="ctr1" id="h7">0</td><td class="ctr2" id="i4">7</td><td class="ctr1" id="j7">0</td><td class="ctr2" id="k7">1</td></tr><tr><td id="a8"><a href="AudioElement.java.html#L67" class="el_method">toString()</a></td><td class="bar" id="b8"><img src="../jacoco-resources/greenbar.gif" width="15" height="10" title="10" alt="10"/></td><td class="ctr2" id="c3">100 %</td><td class="bar" id="d8"/><td class="ctr2" id="e8">n/a</td><td class="ctr1" id="f8">0</td><td class="ctr2" id="g8">1</td><td class="ctr1" id="h8">0</td><td class="ctr2" id="i8">1</td><td class="ctr1" id="j8">0</td><td class="ctr2" id="k8">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
diff --git a/target/site/jacoco/musichub.business/AudioElement.java.html b/target/site/jacoco/musichub.business/AudioElement.java.html
index 7863e1a..34bbc3b 100644
--- a/target/site/jacoco/musichub.business/AudioElement.java.html
+++ b/target/site/jacoco/musichub.business/AudioElement.java.html
@@ -1,19 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>AudioElement.java</title><link rel="stylesheet" href="../jacoco-resources/prettify.css" type="text/css"/><script type="text/javascript" src="../jacoco-resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <a href="index.source.html" class="el_package">musichub.business</a> &gt; <span class="el_source">AudioElement.java</span></div><h1>AudioElement.java</h1><pre class="source lang-java linenums">package musichub.business;
+import musichub.util.LogHandler;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
+import javax.sound.sampled.*;
import java.io.File;
import java.io.IOException;
import java.util.Scanner;
import java.util.UUID;
-import javax.sound.sampled.AudioInputStream;
-import javax.sound.sampled.AudioSystem;
-import javax.sound.sampled.Clip;
-import javax.sound.sampled.LineUnavailableException;
-import javax.sound.sampled.UnsupportedAudioFileException;
-
public abstract class AudioElement {
protected String title;
protected String artist;
@@ -21,109 +17,113 @@ public abstract class AudioElement {
protected UUID uuid;
protected String content;
-<span class="fc" id="L24"> public AudioElement(String title, String artist, int lengthInSeconds, String id, String content) {</span>
-<span class="fc" id="L25"> this.title = title;</span>
-<span class="fc" id="L26"> this.artist = artist;</span>
-<span class="fc" id="L27"> this.lengthInSeconds = lengthInSeconds;</span>
-<span class="fc" id="L28"> this.uuid = UUID.fromString(id);</span>
-<span class="fc" id="L29"> this.content = content;</span>
-<span class="fc" id="L30"> }</span>
-
-<span class="fc" id="L32"> public AudioElement(String title, String artist, int lengthInSeconds, String content) {</span>
-<span class="fc" id="L33"> this.title = title;</span>
-<span class="fc" id="L34"> this.artist = artist;</span>
-<span class="fc" id="L35"> this.lengthInSeconds = lengthInSeconds;</span>
-<span class="fc" id="L36"> this.content = content;</span>
-<span class="fc" id="L37"> this.uuid = UUID.randomUUID();</span>
-<span class="fc" id="L38"> }</span>
-
-<span class="fc" id="L40"> public AudioElement(Element xmlElement) {</span>
+<span class="fc" id="L20"> public AudioElement(String title, String artist, int lengthInSeconds, String id, String content) {</span>
+<span class="fc" id="L21"> this.title = title;</span>
+<span class="fc" id="L22"> this.artist = artist;</span>
+<span class="fc" id="L23"> this.lengthInSeconds = lengthInSeconds;</span>
+<span class="fc" id="L24"> this.uuid = UUID.fromString(id);</span>
+<span class="fc" id="L25"> this.content = content;</span>
+<span class="fc" id="L26"> }</span>
+
+<span class="fc" id="L28"> public AudioElement(String title, String artist, int lengthInSeconds, String content) {</span>
+<span class="fc" id="L29"> this.title = title;</span>
+<span class="fc" id="L30"> this.artist = artist;</span>
+<span class="fc" id="L31"> this.lengthInSeconds = lengthInSeconds;</span>
+<span class="fc" id="L32"> this.content = content;</span>
+<span class="fc" id="L33"> this.uuid = UUID.randomUUID();</span>
+<span class="fc" id="L34"> }</span>
+
+<span class="fc" id="L36"> public AudioElement(Element xmlElement) {</span>
{
-<span class="fc" id="L42"> title = xmlElement.getElementsByTagName(&quot;title&quot;).item(0).getTextContent();</span>
-<span class="fc" id="L43"> artist = xmlElement.getElementsByTagName(&quot;artist&quot;).item(0).getTextContent();</span>
-<span class="fc" id="L44"> lengthInSeconds = Integer.parseInt(xmlElement.getElementsByTagName(&quot;length&quot;).item(0).getTextContent());</span>
-<span class="fc" id="L45"> content = xmlElement.getElementsByTagName(&quot;content&quot;).item(0).getTextContent();</span>
-<span class="fc" id="L46"> String uuid = null;</span>
+<span class="fc" id="L38"> title = xmlElement.getElementsByTagName(&quot;title&quot;).item(0).getTextContent();</span>
+<span class="fc" id="L39"> artist = xmlElement.getElementsByTagName(&quot;artist&quot;).item(0).getTextContent();</span>
+<span class="fc" id="L40"> lengthInSeconds = Integer.parseInt(xmlElement.getElementsByTagName(&quot;length&quot;).item(0).getTextContent());</span>
+<span class="fc" id="L41"> content = xmlElement.getElementsByTagName(&quot;content&quot;).item(0).getTextContent();</span>
+<span class="fc" id="L42"> String uuid = null;</span>
try {
-<span class="fc" id="L48"> uuid = xmlElement.getElementsByTagName(&quot;UUID&quot;).item(0).getTextContent();</span>
-<span class="nc" id="L49"> } catch (Exception ex) {</span>
-<span class="nc" id="L50"> System.out.println(&quot;Empty element UUID, will create a new one&quot;);</span>
-<span class="fc" id="L51"> }</span>
-<span class="pc bpc" id="L52" title="2 of 4 branches missed."> if ((uuid == null) || (uuid.isEmpty()))</span>
-<span class="nc" id="L53"> this.uuid = UUID.randomUUID();</span>
-<span class="fc" id="L54"> else this.uuid = UUID.fromString(uuid);</span>
+<span class="fc" id="L44"> uuid = xmlElement.getElementsByTagName(&quot;UUID&quot;).item(0).getTextContent();</span>
+<span class="nc" id="L45"> } catch (Exception ex) {</span>
+<span class="nc" id="L46"> System.out.println(&quot;Empty element UUID, will create a new one&quot;);</span>
+<span class="fc" id="L47"> }</span>
+<span class="pc bpc" id="L48" title="2 of 4 branches missed."> if ((uuid == null) || (uuid.isEmpty()))</span>
+<span class="nc" id="L49"> this.uuid = UUID.randomUUID();</span>
+<span class="fc" id="L50"> else this.uuid = UUID.fromString(uuid);</span>
}
-<span class="fc" id="L56"> }</span>
+<span class="fc" id="L52"> }</span>
public UUID getUUID() {
-<span class="nc" id="L59"> return this.uuid;</span>
+<span class="nc" id="L55"> return this.uuid;</span>
}
public String getArtist() {
-<span class="nc" id="L63"> return this.artist;</span>
+<span class="nc" id="L59"> return this.artist;</span>
}
public String getTitle() {
-<span class="nc" id="L67"> return this.title;</span>
+<span class="nc" id="L63"> return this.title;</span>
}
public String toString() {
-<span class="fc" id="L71"> return &quot;Title = &quot; + this.title + &quot;, Artist = &quot; + this.artist + &quot;, Length = &quot; + this.lengthInSeconds + &quot;, Content = &quot; + this.content;</span>
+<span class="fc" id="L67"> return &quot;Title = &quot; + this.title + &quot;, Artist = &quot; + this.artist + &quot;, Length = &quot; + this.lengthInSeconds + &quot;, Content = &quot; + this.content;</span>
}
public void createXMLElement(Document document, Element parentElement) {
-<span class="fc" id="L75"> Element nameElement = document.createElement(&quot;title&quot;);</span>
-<span class="fc" id="L76"> nameElement.appendChild(document.createTextNode(title));</span>
-<span class="fc" id="L77"> parentElement.appendChild(nameElement);</span>
+<span class="fc" id="L71"> Element nameElement = document.createElement(&quot;title&quot;);</span>
+<span class="fc" id="L72"> nameElement.appendChild(document.createTextNode(title));</span>
+<span class="fc" id="L73"> parentElement.appendChild(nameElement);</span>
-<span class="fc" id="L79"> Element artistElement = document.createElement(&quot;artist&quot;);</span>
-<span class="fc" id="L80"> artistElement.appendChild(document.createTextNode(artist));</span>
-<span class="fc" id="L81"> parentElement.appendChild(artistElement);</span>
+<span class="fc" id="L75"> Element artistElement = document.createElement(&quot;artist&quot;);</span>
+<span class="fc" id="L76"> artistElement.appendChild(document.createTextNode(artist));</span>
+<span class="fc" id="L77"> parentElement.appendChild(artistElement);</span>
-<span class="fc" id="L83"> Element lengthElement = document.createElement(&quot;length&quot;);</span>
-<span class="fc" id="L84"> lengthElement.appendChild(document.createTextNode(Integer.valueOf(lengthInSeconds).toString()));</span>
-<span class="fc" id="L85"> parentElement.appendChild(lengthElement);</span>
+<span class="fc" id="L79"> Element lengthElement = document.createElement(&quot;length&quot;);</span>
+<span class="fc" id="L80"> lengthElement.appendChild(document.createTextNode(Integer.valueOf(lengthInSeconds).toString()));</span>
+<span class="fc" id="L81"> parentElement.appendChild(lengthElement);</span>
-<span class="fc" id="L87"> Element UUIDElement = document.createElement(&quot;UUID&quot;);</span>
-<span class="fc" id="L88"> UUIDElement.appendChild(document.createTextNode(uuid.toString()));</span>
-<span class="fc" id="L89"> parentElement.appendChild(UUIDElement);</span>
+<span class="fc" id="L83"> Element UUIDElement = document.createElement(&quot;UUID&quot;);</span>
+<span class="fc" id="L84"> UUIDElement.appendChild(document.createTextNode(uuid.toString()));</span>
+<span class="fc" id="L85"> parentElement.appendChild(UUIDElement);</span>
-<span class="fc" id="L91"> Element contentElement = document.createElement(&quot;content&quot;);</span>
-<span class="fc" id="L92"> contentElement.appendChild(document.createTextNode(content));</span>
-<span class="fc" id="L93"> parentElement.appendChild(contentElement);</span>
+<span class="fc" id="L87"> Element contentElement = document.createElement(&quot;content&quot;);</span>
+<span class="fc" id="L88"> contentElement.appendChild(document.createTextNode(content));</span>
+<span class="fc" id="L89"> parentElement.appendChild(contentElement);</span>
-<span class="fc" id="L95"> }</span>
+<span class="fc" id="L91"> }</span>
public void manageAudioElement() throws UnsupportedAudioFileException, IOException, LineUnavailableException {
-<span class="nc" id="L99"> Scanner scanner = new Scanner(System.in); </span>
+<span class="nc" id="L95"> Scanner scanner = new Scanner(System.in); </span>
-<span class="nc" id="L101"> File file = new File(this.content);</span>
-<span class="nc" id="L102"> AudioInputStream audioStream = AudioSystem.getAudioInputStream(file);</span>
-<span class="nc" id="L103"> Clip clip = AudioSystem.getClip();</span>
-<span class="nc" id="L104"> clip.open(audioStream);</span>
+<span class="nc" id="L97"> File file = new File(this.content);</span>
+<span class="nc" id="L98"> AudioInputStream audioStream = AudioSystem.getAudioInputStream(file);</span>
+<span class="nc" id="L99"> Clip clip = AudioSystem.getClip();</span>
+<span class="nc" id="L100"> clip.open(audioStream);</span>
-<span class="nc" id="L106"> String action = &quot;&quot;;</span>
+<span class="nc" id="L102"> String action = &quot;&quot;;</span>
-<span class="nc bnc" id="L108" title="All 2 branches missed."> while(!action.equals(&quot;Q&quot;)) {</span>
-<span class="nc" id="L109"> System.out.println(&quot;P = Play \b S = Stop \b R = Reset \b Q = Quit&quot;);</span>
-<span class="nc" id="L110"> System.out.println(&quot;Enter your choice&quot;);</span>
-<span class="nc" id="L111"> action = scanner.next();</span>
-<span class="nc" id="L112"> action = action.toUpperCase();</span>
-
-<span class="nc bnc" id="L114" title="All 5 branches missed."> switch(action) {</span>
-<span class="nc" id="L115"> case &quot;S&quot; : clip.stop();</span>
-<span class="nc" id="L116"> break;</span>
-<span class="nc" id="L117"> case &quot;P&quot; : clip.start();</span>
-<span class="nc" id="L118"> break;</span>
-<span class="nc" id="L119"> case &quot;R&quot; : clip.setMicrosecondPosition(0);</span>
-<span class="nc" id="L120"> break;</span>
-<span class="nc" id="L121"> case &quot;Q&quot; : clip.stop();</span>
-<span class="nc" id="L122"> break;</span>
-<span class="nc" id="L123"> default : System.out.println(&quot;try again&quot;);</span>
- }
-<span class="nc" id="L125"> System.out.println(&quot;You stoped the Audio element&quot;);</span>
- }
+<span class="nc bnc" id="L104" title="All 2 branches missed."> while(!action.equals(&quot;Q&quot;)) {</span>
+<span class="nc" id="L105"> System.out.println(&quot;P = Play \b S = Stop \b R = Reset \b Q = Quit&quot;);</span>
+<span class="nc" id="L106"> System.out.println(&quot;Enter your choice&quot;);</span>
+<span class="nc" id="L107"> action = scanner.next();</span>
+<span class="nc" id="L108"> action = action.toUpperCase();</span>
+
+<span class="nc bnc" id="L110" title="All 4 branches missed."> switch (action) {</span>
+<span class="nc" id="L111"> case &quot;S&quot;, &quot;Q&quot; -&gt; {</span>
+<span class="nc" id="L112"> clip.stop();</span>
+<span class="nc" id="L113"> LogHandler.write(&quot;Music stopped&quot;, &quot;INFO&quot;);</span>
+ }
+<span class="nc" id="L115"> case &quot;P&quot; -&gt; {</span>
+<span class="nc" id="L116"> clip.start();</span>
+<span class="nc" id="L117"> LogHandler.write(&quot;Music started&quot;, &quot;INFO&quot;);</span>
+ }
+<span class="nc" id="L119"> case &quot;R&quot; -&gt; {</span>
+<span class="nc" id="L120"> clip.setMicrosecondPosition(0);</span>
+<span class="nc" id="L121"> LogHandler.write(&quot;Music reseted&quot;, &quot;INFO&quot;);</span>
+ }
+<span class="nc" id="L123"> default -&gt; System.out.println(&quot;try again&quot;);</span>
+ }
+<span class="nc" id="L125"> System.out.println(&quot;You stopped the Audio element&quot;);</span>
+ }
<span class="nc" id="L128"> clip.close();</span>
diff --git a/target/site/jacoco/musichub.business/MusicHub.html b/target/site/jacoco/musichub.business/MusicHub.html
index 4ed5db0..43c8490 100644
--- a/target/site/jacoco/musichub.business/MusicHub.html
+++ b/target/site/jacoco/musichub.business/MusicHub.html
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>MusicHub</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <a href="index.html" class="el_package">musichub.business</a> &gt; <span class="el_class">MusicHub</span></div><h1>MusicHub</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">874 of 874</td><td class="ctr2">0 %</td><td class="bar">124 of 124</td><td class="ctr2">0 %</td><td class="ctr1">85</td><td class="ctr2">85</td><td class="ctr1">209</td><td class="ctr2">209</td><td class="ctr1">23</td><td class="ctr2">23</td></tr></tfoot><tbody><tr><td id="a2"><a href="MusicHub.java.html#L158" class="el_method">addElementToAlbum(String, String)</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="82" alt="82"/></td><td class="ctr2" id="c0">0 %</td><td class="bar" id="d2"><img src="../jacoco-resources/redbar.gif" width="102" height="10" title="12" alt="12"/></td><td class="ctr2" id="e0">0 %</td><td class="ctr1" id="f2">7</td><td class="ctr2" id="g2">7</td><td class="ctr1" id="h0">20</td><td class="ctr2" id="i0">20</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a3"><a href="MusicHub.java.html#L187" class="el_method">addElementToPlayList(String, String)</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="82" alt="82"/></td><td class="ctr2" id="c1">0 %</td><td class="bar" id="d3"><img src="../jacoco-resources/redbar.gif" width="102" height="10" title="12" alt="12"/></td><td class="ctr2" id="e1">0 %</td><td class="ctr1" id="f3">7</td><td class="ctr2" id="g3">7</td><td class="ctr1" id="h1">20</td><td class="ctr2" id="i1">20</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a9"><a href="MusicHub.java.html#L135" class="el_method">getAlbumSongsSortedByGenre(String)</a></td><td class="bar" id="b2"><img src="../jacoco-resources/redbar.gif" width="115" height="10" title="79" alt="79"/></td><td class="ctr2" id="c2">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="14" alt="14"/></td><td class="ctr2" id="e2">0 %</td><td class="ctr1" id="f0">8</td><td class="ctr2" id="g0">8</td><td class="ctr1" id="h3">16</td><td class="ctr2" id="i3">16</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a8"><a href="MusicHub.java.html#L113" class="el_method">getAlbumSongs(String)</a></td><td class="bar" id="b3"><img src="../jacoco-resources/redbar.gif" width="106" height="10" title="73" alt="73"/></td><td class="ctr2" id="c3">0 %</td><td class="bar" id="d1"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="14" alt="14"/></td><td class="ctr2" id="e3">0 %</td><td class="ctr1" id="f1">8</td><td class="ctr2" id="g1">8</td><td class="ctr1" id="h4">15</td><td class="ctr2" id="i4">15</td><td class="ctr1" id="j3">1</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a21"><a href="MusicHub.java.html#L344" class="el_method">searchAudioElement()</a></td><td class="bar" id="b4"><img src="../jacoco-resources/redbar.gif" width="103" height="10" title="71" alt="71"/></td><td class="ctr2" id="c4">0 %</td><td class="bar" id="d4"><img src="../jacoco-resources/redbar.gif" width="85" height="10" title="10" alt="10"/></td><td class="ctr2" id="e4">0 %</td><td class="ctr1" id="f4">6</td><td class="ctr2" id="g4">6</td><td class="ctr1" id="h5">14</td><td class="ctr2" id="i5">14</td><td class="ctr1" id="j4">1</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a14"><a href="MusicHub.java.html#L254" class="el_method">loadElements()</a></td><td class="bar" id="b5"><img src="../jacoco-resources/redbar.gif" width="93" height="10" title="64" alt="64"/></td><td class="ctr2" id="c5">0 %</td><td class="bar" id="d5"><img src="../jacoco-resources/redbar.gif" width="85" height="10" title="10" alt="10"/></td><td class="ctr2" id="e5">0 %</td><td class="ctr1" id="f5">6</td><td class="ctr2" id="g5">6</td><td class="ctr1" id="h2">18</td><td class="ctr2" id="i2">18</td><td class="ctr1" id="j5">1</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a11"><a href="MusicHub.java.html#L101" class="el_method">getAudiobooksTitlesSortedByAuthor()</a></td><td class="bar" id="b6"><img src="../jacoco-resources/redbar.gif" width="77" height="10" title="53" alt="53"/></td><td class="ctr2" id="c6">0 %</td><td class="bar" id="d10"><img src="../jacoco-resources/redbar.gif" width="51" height="10" title="6" alt="6"/></td><td class="ctr2" id="e6">0 %</td><td class="ctr1" id="f10">4</td><td class="ctr2" id="g10">4</td><td class="ctr1" id="h12">9</td><td class="ctr2" id="i12">9</td><td class="ctr1" id="j6">1</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a19"><a href="MusicHub.java.html#L314" class="el_method">saveElements()</a></td><td class="bar" id="b7"><img src="../jacoco-resources/redbar.gif" width="68" height="10" title="47" alt="47"/></td><td class="ctr2" id="c7">0 %</td><td class="bar" id="d6"><img src="../jacoco-resources/redbar.gif" width="68" height="10" title="8" alt="8"/></td><td class="ctr2" id="e7">0 %</td><td class="ctr1" id="f6">5</td><td class="ctr2" id="g6">5</td><td class="ctr1" id="h6">12</td><td class="ctr2" id="i6">12</td><td class="ctr1" id="j7">1</td><td class="ctr2" id="k7">1</td></tr><tr><td id="a13"><a href="MusicHub.java.html#L218" class="el_method">loadAlbums()</a></td><td class="bar" id="b8"><img src="../jacoco-resources/redbar.gif" width="64" height="10" title="44" alt="44"/></td><td class="ctr2" id="c8">0 %</td><td class="bar" id="d7"><img src="../jacoco-resources/redbar.gif" width="68" height="10" title="8" alt="8"/></td><td class="ctr2" id="e8">0 %</td><td class="ctr1" id="f7">5</td><td class="ctr2" id="g7">5</td><td class="ctr1" id="h7">11</td><td class="ctr2" id="i7">11</td><td class="ctr1" id="j8">1</td><td class="ctr2" id="k8">1</td></tr><tr><td id="a15"><a href="MusicHub.java.html#L236" class="el_method">loadPlaylists()</a></td><td class="bar" id="b9"><img src="../jacoco-resources/redbar.gif" width="64" height="10" title="44" alt="44"/></td><td class="ctr2" id="c9">0 %</td><td class="bar" id="d8"><img src="../jacoco-resources/redbar.gif" width="68" height="10" title="8" alt="8"/></td><td class="ctr2" id="e9">0 %</td><td class="ctr1" id="f8">5</td><td class="ctr2" id="g8">5</td><td class="ctr1" id="h8">11</td><td class="ctr2" id="i8">11</td><td class="ctr1" id="j9">1</td><td class="ctr2" id="k9">1</td></tr><tr><td id="a6"><a href="MusicHub.java.html#L66" class="el_method">deletePlayList(String)</a></td><td class="bar" id="b10"><img src="../jacoco-resources/redbar.gif" width="58" height="10" title="40" alt="40"/></td><td class="ctr2" id="c10">0 %</td><td class="bar" id="d9"><img src="../jacoco-resources/redbar.gif" width="68" height="10" title="8" alt="8"/></td><td class="ctr2" id="e10">0 %</td><td class="ctr1" id="f9">5</td><td class="ctr2" id="g9">5</td><td class="ctr1" id="h9">11</td><td class="ctr2" id="i9">11</td><td class="ctr1" id="j10">1</td><td class="ctr2" id="k10">1</td></tr><tr><td id="a18"><a href="MusicHub.java.html#L282" class="el_method">saveAlbums()</a></td><td class="bar" id="b11"><img src="../jacoco-resources/redbar.gif" width="52" height="10" title="36" alt="36"/></td><td class="ctr2" id="c11">0 %</td><td class="bar" id="d11"><img src="../jacoco-resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e11">0 %</td><td class="ctr1" id="f11">3</td><td class="ctr2" id="g11">3</td><td class="ctr1" id="h10">10</td><td class="ctr2" id="i10">10</td><td class="ctr1" id="j11">1</td><td class="ctr2" id="k11">1</td></tr><tr><td id="a20"><a href="MusicHub.java.html#L298" class="el_method">savePlayLists()</a></td><td class="bar" id="b12"><img src="../jacoco-resources/redbar.gif" width="52" height="10" title="36" alt="36"/></td><td class="ctr2" id="c12">0 %</td><td class="bar" id="d12"><img src="../jacoco-resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e12">0 %</td><td class="ctr1" id="f12">3</td><td class="ctr2" id="g12">3</td><td class="ctr1" id="h11">10</td><td class="ctr2" id="i11">10</td><td class="ctr1" id="j12">1</td><td class="ctr2" id="k12">1</td></tr><tr><td id="a10"><a href="MusicHub.java.html#L93" class="el_method">getAlbumsTitlesSortedByDate()</a></td><td class="bar" id="b13"><img src="../jacoco-resources/redbar.gif" width="46" height="10" title="32" alt="32"/></td><td class="ctr2" id="c13">0 %</td><td class="bar" id="d14"><img src="../jacoco-resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e13">0 %</td><td class="ctr1" id="f14">2</td><td class="ctr2" id="g14">2</td><td class="ctr1" id="h14">5</td><td class="ctr2" id="i14">5</td><td class="ctr1" id="j13">1</td><td class="ctr2" id="k13">1</td></tr><tr><td id="a16"><a href="MusicHub.java.html#L41" class="el_method">MusicHub()</a></td><td class="bar" id="b14"><img src="../jacoco-resources/redbar.gif" width="42" height="10" title="29" alt="29"/></td><td class="ctr2" id="c14">0 %</td><td class="bar" id="d15"/><td class="ctr2" id="e15">n/a</td><td class="ctr1" id="f15">1</td><td class="ctr2" id="g15">1</td><td class="ctr1" id="h13">9</td><td class="ctr2" id="i13">9</td><td class="ctr1" id="j14">1</td><td class="ctr2" id="k14">1</td></tr><tr><td id="a12"><a href="MusicHub.java.html#L335" class="el_method">getAudioElement(List, String)</a></td><td class="bar" id="b15"><img src="../jacoco-resources/redbar.gif" width="27" height="10" title="19" alt="19"/></td><td class="ctr2" id="c15">0 %</td><td class="bar" id="d13"><img src="../jacoco-resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e14">0 %</td><td class="ctr1" id="f13">3</td><td class="ctr2" id="g13">3</td><td class="ctr1" id="h15">5</td><td class="ctr2" id="i15">5</td><td class="ctr1" id="j15">1</td><td class="ctr2" id="k15">1</td></tr><tr><td id="a22"><a href="MusicHub.java.html#L34" class="el_method">static {...}</a></td><td class="bar" id="b16"><img src="../jacoco-resources/redbar.gif" width="19" height="10" title="13" alt="13"/></td><td class="ctr2" id="c16">0 %</td><td class="bar" id="d16"/><td class="ctr2" id="e16">n/a</td><td class="ctr1" id="f16">1</td><td class="ctr2" id="g16">1</td><td class="ctr1" id="h16">4</td><td class="ctr2" id="i16">4</td><td class="ctr1" id="j16">1</td><td class="ctr2" id="k16">1</td></tr><tr><td id="a1"><a href="MusicHub.java.html#L53" class="el_method">addElement(AudioElement)</a></td><td class="bar" id="b17"><img src="../jacoco-resources/redbar.gif" width="8" height="10" title="6" alt="6"/></td><td class="ctr2" id="c17">0 %</td><td class="bar" id="d17"/><td class="ctr2" id="e17">n/a</td><td class="ctr1" id="f17">1</td><td class="ctr2" id="g17">1</td><td class="ctr1" id="h17">2</td><td class="ctr2" id="i17">2</td><td class="ctr1" id="j17">1</td><td class="ctr2" id="k17">1</td></tr><tr><td id="a0"><a href="MusicHub.java.html#L57" class="el_method">addAlbum(Album)</a></td><td class="bar" id="b18"><img src="../jacoco-resources/redbar.gif" width="8" height="10" title="6" alt="6"/></td><td class="ctr2" id="c18">0 %</td><td class="bar" id="d18"/><td class="ctr2" id="e18">n/a</td><td class="ctr1" id="f18">1</td><td class="ctr2" id="g18">1</td><td class="ctr1" id="h18">2</td><td class="ctr2" id="i18">2</td><td class="ctr1" id="j18">1</td><td class="ctr2" id="k18">1</td></tr><tr><td id="a4"><a href="MusicHub.java.html#L61" class="el_method">addPlaylist(PlayList)</a></td><td class="bar" id="b19"><img src="../jacoco-resources/redbar.gif" width="8" height="10" title="6" alt="6"/></td><td class="ctr2" id="c19">0 %</td><td class="bar" id="d19"/><td class="ctr2" id="e19">n/a</td><td class="ctr1" id="f19">1</td><td class="ctr2" id="g19">1</td><td class="ctr1" id="h19">2</td><td class="ctr2" id="i19">2</td><td class="ctr1" id="j19">1</td><td class="ctr2" id="k19">1</td></tr><tr><td id="a5"><a href="MusicHub.java.html#L81" class="el_method">albums()</a></td><td class="bar" id="b20"><img src="../jacoco-resources/redbar.gif" width="5" height="10" title="4" alt="4"/></td><td class="ctr2" id="c20">0 %</td><td class="bar" id="d20"/><td class="ctr2" id="e20">n/a</td><td class="ctr1" id="f20">1</td><td class="ctr2" id="g20">1</td><td class="ctr1" id="h20">1</td><td class="ctr2" id="i20">1</td><td class="ctr1" id="j20">1</td><td class="ctr2" id="k20">1</td></tr><tr><td id="a17"><a href="MusicHub.java.html#L85" class="el_method">playlists()</a></td><td class="bar" id="b21"><img src="../jacoco-resources/redbar.gif" width="5" height="10" title="4" alt="4"/></td><td class="ctr2" id="c21">0 %</td><td class="bar" id="d21"/><td class="ctr2" id="e21">n/a</td><td class="ctr1" id="f21">1</td><td class="ctr2" id="g21">1</td><td class="ctr1" id="h21">1</td><td class="ctr2" id="i21">1</td><td class="ctr1" id="j21">1</td><td class="ctr2" id="k21">1</td></tr><tr><td id="a7"><a href="MusicHub.java.html#L89" class="el_method">elements()</a></td><td class="bar" id="b22"><img src="../jacoco-resources/redbar.gif" width="5" height="10" title="4" alt="4"/></td><td class="ctr2" id="c22">0 %</td><td class="bar" id="d22"/><td class="ctr2" id="e22">n/a</td><td class="ctr1" id="f22">1</td><td class="ctr2" id="g22">1</td><td class="ctr1" id="h22">1</td><td class="ctr2" id="i22">1</td><td class="ctr1" id="j22">1</td><td class="ctr2" id="k22">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>MusicHub</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <a href="index.html" class="el_package">musichub.business</a> &gt; <span class="el_class">MusicHub</span></div><h1>MusicHub</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">973 of 973</td><td class="ctr2">0 %</td><td class="bar">140 of 140</td><td class="ctr2">0 %</td><td class="ctr1">95</td><td class="ctr2">95</td><td class="ctr1">228</td><td class="ctr2">228</td><td class="ctr1">25</td><td class="ctr2">25</td></tr></tfoot><tbody><tr><td id="a2"><a href="MusicHub.java.html#L157" class="el_method">addElementToAlbum(String, String)</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="82" alt="82"/></td><td class="ctr2" id="c0">0 %</td><td class="bar" id="d3"><img src="../jacoco-resources/redbar.gif" width="102" height="10" title="12" alt="12"/></td><td class="ctr2" id="e0">0 %</td><td class="ctr1" id="f3">7</td><td class="ctr2" id="g3">7</td><td class="ctr1" id="h0">20</td><td class="ctr2" id="i0">20</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a3"><a href="MusicHub.java.html#L186" class="el_method">addElementToPlayList(String, String)</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="82" alt="82"/></td><td class="ctr2" id="c1">0 %</td><td class="bar" id="d4"><img src="../jacoco-resources/redbar.gif" width="102" height="10" title="12" alt="12"/></td><td class="ctr2" id="e1">0 %</td><td class="ctr1" id="f4">7</td><td class="ctr2" id="g4">7</td><td class="ctr1" id="h1">20</td><td class="ctr2" id="i1">20</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a9"><a href="MusicHub.java.html#L134" class="el_method">getAlbumSongsSortedByGenre(String)</a></td><td class="bar" id="b2"><img src="../jacoco-resources/redbar.gif" width="115" height="10" title="79" alt="79"/></td><td class="ctr2" id="c2">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="14" alt="14"/></td><td class="ctr2" id="e2">0 %</td><td class="ctr1" id="f0">8</td><td class="ctr2" id="g0">8</td><td class="ctr1" id="h3">16</td><td class="ctr2" id="i3">16</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr><tr><td id="a8"><a href="MusicHub.java.html#L112" class="el_method">getAlbumSongs(String)</a></td><td class="bar" id="b3"><img src="../jacoco-resources/redbar.gif" width="106" height="10" title="73" alt="73"/></td><td class="ctr2" id="c3">0 %</td><td class="bar" id="d1"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="14" alt="14"/></td><td class="ctr2" id="e3">0 %</td><td class="ctr1" id="f1">8</td><td class="ctr2" id="g1">8</td><td class="ctr1" id="h4">15</td><td class="ctr2" id="i4">15</td><td class="ctr1" id="j3">1</td><td class="ctr2" id="k3">1</td></tr><tr><td id="a13"><a href="MusicHub.java.html#L385" class="el_method">getPlayListSongs(String)</a></td><td class="bar" id="b4"><img src="../jacoco-resources/redbar.gif" width="106" height="10" title="73" alt="73"/></td><td class="ctr2" id="c4">0 %</td><td class="bar" id="d2"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="14" alt="14"/></td><td class="ctr2" id="e4">0 %</td><td class="ctr1" id="f2">8</td><td class="ctr2" id="g2">8</td><td class="ctr1" id="h5">15</td><td class="ctr2" id="i5">15</td><td class="ctr1" id="j4">1</td><td class="ctr2" id="k4">1</td></tr><tr><td id="a23"><a href="MusicHub.java.html#L343" class="el_method">searchAudioElement()</a></td><td class="bar" id="b5"><img src="../jacoco-resources/redbar.gif" width="103" height="10" title="71" alt="71"/></td><td class="ctr2" id="c5">0 %</td><td class="bar" id="d5"><img src="../jacoco-resources/redbar.gif" width="85" height="10" title="10" alt="10"/></td><td class="ctr2" id="e5">0 %</td><td class="ctr1" id="f5">6</td><td class="ctr2" id="g5">6</td><td class="ctr1" id="h6">14</td><td class="ctr2" id="i6">14</td><td class="ctr1" id="j5">1</td><td class="ctr2" id="k5">1</td></tr><tr><td id="a16"><a href="MusicHub.java.html#L253" class="el_method">loadElements()</a></td><td class="bar" id="b6"><img src="../jacoco-resources/redbar.gif" width="93" height="10" title="64" alt="64"/></td><td class="ctr2" id="c6">0 %</td><td class="bar" id="d6"><img src="../jacoco-resources/redbar.gif" width="85" height="10" title="10" alt="10"/></td><td class="ctr2" id="e6">0 %</td><td class="ctr1" id="f6">6</td><td class="ctr2" id="g6">6</td><td class="ctr1" id="h2">18</td><td class="ctr2" id="i2">18</td><td class="ctr1" id="j6">1</td><td class="ctr2" id="k6">1</td></tr><tr><td id="a11"><a href="MusicHub.java.html#L100" class="el_method">getAudiobooksTitlesSortedByAuthor()</a></td><td class="bar" id="b7"><img src="../jacoco-resources/redbar.gif" width="77" height="10" title="53" alt="53"/></td><td class="ctr2" id="c7">0 %</td><td class="bar" id="d11"><img src="../jacoco-resources/redbar.gif" width="51" height="10" title="6" alt="6"/></td><td class="ctr2" id="e7">0 %</td><td class="ctr1" id="f11">4</td><td class="ctr2" id="g11">4</td><td class="ctr1" id="h13">9</td><td class="ctr2" id="i13">9</td><td class="ctr1" id="j7">1</td><td class="ctr2" id="k7">1</td></tr><tr><td id="a21"><a href="MusicHub.java.html#L313" class="el_method">saveElements()</a></td><td class="bar" id="b8"><img src="../jacoco-resources/redbar.gif" width="68" height="10" title="47" alt="47"/></td><td class="ctr2" id="c8">0 %</td><td class="bar" id="d7"><img src="../jacoco-resources/redbar.gif" width="68" height="10" title="8" alt="8"/></td><td class="ctr2" id="e8">0 %</td><td class="ctr1" id="f7">5</td><td class="ctr2" id="g7">5</td><td class="ctr1" id="h7">12</td><td class="ctr2" id="i7">12</td><td class="ctr1" id="j8">1</td><td class="ctr2" id="k8">1</td></tr><tr><td id="a15"><a href="MusicHub.java.html#L217" class="el_method">loadAlbums()</a></td><td class="bar" id="b9"><img src="../jacoco-resources/redbar.gif" width="64" height="10" title="44" alt="44"/></td><td class="ctr2" id="c9">0 %</td><td class="bar" id="d8"><img src="../jacoco-resources/redbar.gif" width="68" height="10" title="8" alt="8"/></td><td class="ctr2" id="e9">0 %</td><td class="ctr1" id="f8">5</td><td class="ctr2" id="g8">5</td><td class="ctr1" id="h8">11</td><td class="ctr2" id="i8">11</td><td class="ctr1" id="j9">1</td><td class="ctr2" id="k9">1</td></tr><tr><td id="a17"><a href="MusicHub.java.html#L235" class="el_method">loadPlaylists()</a></td><td class="bar" id="b10"><img src="../jacoco-resources/redbar.gif" width="64" height="10" title="44" alt="44"/></td><td class="ctr2" id="c10">0 %</td><td class="bar" id="d9"><img src="../jacoco-resources/redbar.gif" width="68" height="10" title="8" alt="8"/></td><td class="ctr2" id="e10">0 %</td><td class="ctr1" id="f9">5</td><td class="ctr2" id="g9">5</td><td class="ctr1" id="h9">11</td><td class="ctr2" id="i9">11</td><td class="ctr1" id="j10">1</td><td class="ctr2" id="k10">1</td></tr><tr><td id="a6"><a href="MusicHub.java.html#L65" class="el_method">deletePlayList(String)</a></td><td class="bar" id="b11"><img src="../jacoco-resources/redbar.gif" width="58" height="10" title="40" alt="40"/></td><td class="ctr2" id="c11">0 %</td><td class="bar" id="d10"><img src="../jacoco-resources/redbar.gif" width="68" height="10" title="8" alt="8"/></td><td class="ctr2" id="e11">0 %</td><td class="ctr1" id="f10">5</td><td class="ctr2" id="g10">5</td><td class="ctr1" id="h10">11</td><td class="ctr2" id="i10">11</td><td class="ctr1" id="j11">1</td><td class="ctr2" id="k11">1</td></tr><tr><td id="a20"><a href="MusicHub.java.html#L281" class="el_method">saveAlbums()</a></td><td class="bar" id="b12"><img src="../jacoco-resources/redbar.gif" width="52" height="10" title="36" alt="36"/></td><td class="ctr2" id="c12">0 %</td><td class="bar" id="d12"><img src="../jacoco-resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e12">0 %</td><td class="ctr1" id="f12">3</td><td class="ctr2" id="g12">3</td><td class="ctr1" id="h11">10</td><td class="ctr2" id="i11">10</td><td class="ctr1" id="j12">1</td><td class="ctr2" id="k12">1</td></tr><tr><td id="a22"><a href="MusicHub.java.html#L297" class="el_method">savePlayLists()</a></td><td class="bar" id="b13"><img src="../jacoco-resources/redbar.gif" width="52" height="10" title="36" alt="36"/></td><td class="ctr2" id="c13">0 %</td><td class="bar" id="d13"><img src="../jacoco-resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e13">0 %</td><td class="ctr1" id="f13">3</td><td class="ctr2" id="g13">3</td><td class="ctr1" id="h12">10</td><td class="ctr2" id="i12">10</td><td class="ctr1" id="j13">1</td><td class="ctr2" id="k13">1</td></tr><tr><td id="a10"><a href="MusicHub.java.html#L92" class="el_method">getAlbumsTitlesSortedByDate()</a></td><td class="bar" id="b14"><img src="../jacoco-resources/redbar.gif" width="46" height="10" title="32" alt="32"/></td><td class="ctr2" id="c14">0 %</td><td class="bar" id="d15"><img src="../jacoco-resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e14">0 %</td><td class="ctr1" id="f15">2</td><td class="ctr2" id="g15">2</td><td class="ctr1" id="h15">5</td><td class="ctr2" id="i15">5</td><td class="ctr1" id="j14">1</td><td class="ctr2" id="k14">1</td></tr><tr><td id="a18"><a href="MusicHub.java.html#L40" class="el_method">MusicHub()</a></td><td class="bar" id="b15"><img src="../jacoco-resources/redbar.gif" width="42" height="10" title="29" alt="29"/></td><td class="ctr2" id="c15">0 %</td><td class="bar" id="d17"/><td class="ctr2" id="e17">n/a</td><td class="ctr1" id="f17">1</td><td class="ctr2" id="g17">1</td><td class="ctr1" id="h14">9</td><td class="ctr2" id="i14">9</td><td class="ctr1" id="j15">1</td><td class="ctr2" id="k15">1</td></tr><tr><td id="a14"><a href="MusicHub.java.html#L369" class="el_method">getPlayListsTitles()</a></td><td class="bar" id="b16"><img src="../jacoco-resources/redbar.gif" width="38" height="10" title="26" alt="26"/></td><td class="ctr2" id="c16">0 %</td><td class="bar" id="d16"><img src="../jacoco-resources/redbar.gif" width="17" height="10" title="2" alt="2"/></td><td class="ctr2" id="e15">0 %</td><td class="ctr1" id="f16">2</td><td class="ctr2" id="g16">2</td><td class="ctr1" id="h17">4</td><td class="ctr2" id="i17">4</td><td class="ctr1" id="j16">1</td><td class="ctr2" id="k16">1</td></tr><tr><td id="a12"><a href="MusicHub.java.html#L334" class="el_method">getAudioElement(List, String)</a></td><td class="bar" id="b17"><img src="../jacoco-resources/redbar.gif" width="27" height="10" title="19" alt="19"/></td><td class="ctr2" id="c17">0 %</td><td class="bar" id="d14"><img src="../jacoco-resources/redbar.gif" width="34" height="10" title="4" alt="4"/></td><td class="ctr2" id="e16">0 %</td><td class="ctr1" id="f14">3</td><td class="ctr2" id="g14">3</td><td class="ctr1" id="h16">5</td><td class="ctr2" id="i16">5</td><td class="ctr1" id="j17">1</td><td class="ctr2" id="k17">1</td></tr><tr><td id="a24"><a href="MusicHub.java.html#L33" class="el_method">static {...}</a></td><td class="bar" id="b18"><img src="../jacoco-resources/redbar.gif" width="19" height="10" title="13" alt="13"/></td><td class="ctr2" id="c18">0 %</td><td class="bar" id="d18"/><td class="ctr2" id="e18">n/a</td><td class="ctr1" id="f18">1</td><td class="ctr2" id="g18">1</td><td class="ctr1" id="h18">4</td><td class="ctr2" id="i18">4</td><td class="ctr1" id="j18">1</td><td class="ctr2" id="k18">1</td></tr><tr><td id="a1"><a href="MusicHub.java.html#L52" class="el_method">addElement(AudioElement)</a></td><td class="bar" id="b19"><img src="../jacoco-resources/redbar.gif" width="8" height="10" title="6" alt="6"/></td><td class="ctr2" id="c19">0 %</td><td class="bar" id="d19"/><td class="ctr2" id="e19">n/a</td><td class="ctr1" id="f19">1</td><td class="ctr2" id="g19">1</td><td class="ctr1" id="h19">2</td><td class="ctr2" id="i19">2</td><td class="ctr1" id="j19">1</td><td class="ctr2" id="k19">1</td></tr><tr><td id="a0"><a href="MusicHub.java.html#L56" class="el_method">addAlbum(Album)</a></td><td class="bar" id="b20"><img src="../jacoco-resources/redbar.gif" width="8" height="10" title="6" alt="6"/></td><td class="ctr2" id="c20">0 %</td><td class="bar" id="d20"/><td class="ctr2" id="e20">n/a</td><td class="ctr1" id="f20">1</td><td class="ctr2" id="g20">1</td><td class="ctr1" id="h20">2</td><td class="ctr2" id="i20">2</td><td class="ctr1" id="j20">1</td><td class="ctr2" id="k20">1</td></tr><tr><td id="a4"><a href="MusicHub.java.html#L60" class="el_method">addPlaylist(PlayList)</a></td><td class="bar" id="b21"><img src="../jacoco-resources/redbar.gif" width="8" height="10" title="6" alt="6"/></td><td class="ctr2" id="c21">0 %</td><td class="bar" id="d21"/><td class="ctr2" id="e21">n/a</td><td class="ctr1" id="f21">1</td><td class="ctr2" id="g21">1</td><td class="ctr1" id="h21">2</td><td class="ctr2" id="i21">2</td><td class="ctr1" id="j21">1</td><td class="ctr2" id="k21">1</td></tr><tr><td id="a5"><a href="MusicHub.java.html#L80" class="el_method">albums()</a></td><td class="bar" id="b22"><img src="../jacoco-resources/redbar.gif" width="5" height="10" title="4" alt="4"/></td><td class="ctr2" id="c22">0 %</td><td class="bar" id="d22"/><td class="ctr2" id="e22">n/a</td><td class="ctr1" id="f22">1</td><td class="ctr2" id="g22">1</td><td class="ctr1" id="h22">1</td><td class="ctr2" id="i22">1</td><td class="ctr1" id="j22">1</td><td class="ctr2" id="k22">1</td></tr><tr><td id="a19"><a href="MusicHub.java.html#L84" class="el_method">playlists()</a></td><td class="bar" id="b23"><img src="../jacoco-resources/redbar.gif" width="5" height="10" title="4" alt="4"/></td><td class="ctr2" id="c23">0 %</td><td class="bar" id="d23"/><td class="ctr2" id="e23">n/a</td><td class="ctr1" id="f23">1</td><td class="ctr2" id="g23">1</td><td class="ctr1" id="h23">1</td><td class="ctr2" id="i23">1</td><td class="ctr1" id="j23">1</td><td class="ctr2" id="k23">1</td></tr><tr><td id="a7"><a href="MusicHub.java.html#L88" class="el_method">elements()</a></td><td class="bar" id="b24"><img src="../jacoco-resources/redbar.gif" width="5" height="10" title="4" alt="4"/></td><td class="ctr2" id="c24">0 %</td><td class="bar" id="d24"/><td class="ctr2" id="e24">n/a</td><td class="ctr1" id="f24">1</td><td class="ctr2" id="g24">1</td><td class="ctr1" id="h24">1</td><td class="ctr2" id="i24">1</td><td class="ctr1" id="j24">1</td><td class="ctr2" id="k24">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
diff --git a/target/site/jacoco/musichub.business/MusicHub.java.html b/target/site/jacoco/musichub.business/MusicHub.java.html
index ec5e661..deb88a0 100644
--- a/target/site/jacoco/musichub.business/MusicHub.java.html
+++ b/target/site/jacoco/musichub.business/MusicHub.java.html
@@ -6,359 +6,401 @@ import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
-import java.io.IOException;
-import java.util.*;
-
import javax.sound.sampled.LineUnavailableException;
import javax.sound.sampled.UnsupportedAudioFileException;
+import java.io.IOException;
+import java.util.*;
-<span class="nc" id="L15">class SortByDate implements Comparator&lt;Album&gt; {</span>
+<span class="nc" id="L14">class SortByDate implements Comparator&lt;Album&gt; {</span>
public int compare(Album a1, Album a2) {
-<span class="nc" id="L17"> return a1.getDate().compareTo(a2.getDate());</span>
+<span class="nc" id="L16"> return a1.getDate().compareTo(a2.getDate());</span>
}
}
-<span class="nc" id="L21">class SortByGenre implements Comparator&lt;Song&gt; {</span>
+<span class="nc" id="L20">class SortByGenre implements Comparator&lt;Song&gt; {</span>
public int compare(Song s1, Song s2) {
-<span class="nc" id="L23"> return s1.getGenre().compareTo(s2.getGenre());</span>
+<span class="nc" id="L22"> return s1.getGenre().compareTo(s2.getGenre());</span>
}
}
-<span class="nc" id="L27">class SortByAuthor implements Comparator&lt;AudioElement&gt; {</span>
+<span class="nc" id="L26">class SortByAuthor implements Comparator&lt;AudioElement&gt; {</span>
public int compare(AudioElement e1, AudioElement e2) {
-<span class="nc" id="L29"> return e1.getArtist().compareTo(e2.getArtist());</span>
+<span class="nc" id="L28"> return e1.getArtist().compareTo(e2.getArtist());</span>
}
}
public class MusicHub {
-<span class="nc" id="L34"> public static final String DIR = System.getProperty(&quot;user.dir&quot;);</span>
-<span class="nc" id="L35"> public static final String ALBUMS_FILE_PATH = DIR + &quot;/files/albums.xml&quot;;</span>
-<span class="nc" id="L36"> public static final String PLAYLISTS_FILE_PATH = DIR + &quot;/files/playlists.xml&quot;;</span>
-<span class="nc" id="L37"> public static final String ELEMENTS_FILE_PATH = DIR + &quot;/files/elements.xml&quot;;</span>
+<span class="nc" id="L33"> public static final String DIR = System.getProperty(&quot;user.dir&quot;);</span>
+<span class="nc" id="L34"> public static final String ALBUMS_FILE_PATH = DIR + &quot;/files/albums.xml&quot;;</span>
+<span class="nc" id="L35"> public static final String PLAYLISTS_FILE_PATH = DIR + &quot;/files/playlists.xml&quot;;</span>
+<span class="nc" id="L36"> public static final String ELEMENTS_FILE_PATH = DIR + &quot;/files/elements.xml&quot;;</span>
private final List&lt;Album&gt; albums;
private final List&lt;PlayList&gt; playlists;
private final List&lt;AudioElement&gt; elements;
-<span class="nc" id="L41"> private final XMLHandler xmlHandler = new XMLHandler();</span>
+<span class="nc" id="L40"> private final XMLHandler xmlHandler = new XMLHandler();</span>
-<span class="nc" id="L43"> public MusicHub() {</span>
-<span class="nc" id="L44"> albums = new LinkedList&lt;&gt;();</span>
-<span class="nc" id="L45"> playlists = new LinkedList&lt;&gt;();</span>
-<span class="nc" id="L46"> elements = new LinkedList&lt;&gt;();</span>
-<span class="nc" id="L47"> this.loadElements();</span>
-<span class="nc" id="L48"> this.loadAlbums();</span>
-<span class="nc" id="L49"> this.loadPlaylists();</span>
-<span class="nc" id="L50"> }</span>
+<span class="nc" id="L42"> public MusicHub() {</span>
+<span class="nc" id="L43"> albums = new LinkedList&lt;&gt;();</span>
+<span class="nc" id="L44"> playlists = new LinkedList&lt;&gt;();</span>
+<span class="nc" id="L45"> elements = new LinkedList&lt;&gt;();</span>
+<span class="nc" id="L46"> this.loadElements();</span>
+<span class="nc" id="L47"> this.loadAlbums();</span>
+<span class="nc" id="L48"> this.loadPlaylists();</span>
+<span class="nc" id="L49"> }</span>
public void addElement(AudioElement element) {
-<span class="nc" id="L53"> elements.add(element);</span>
-<span class="nc" id="L54"> }</span>
+<span class="nc" id="L52"> elements.add(element);</span>
+<span class="nc" id="L53"> }</span>
public void addAlbum(Album album) {
-<span class="nc" id="L57"> albums.add(album);</span>
-<span class="nc" id="L58"> }</span>
+<span class="nc" id="L56"> albums.add(album);</span>
+<span class="nc" id="L57"> }</span>
public void addPlaylist(PlayList playlist) {
-<span class="nc" id="L61"> playlists.add(playlist);</span>
-<span class="nc" id="L62"> }</span>
+<span class="nc" id="L60"> playlists.add(playlist);</span>
+<span class="nc" id="L61"> }</span>
public void deletePlayList(String playListTitle) throws NoPlayListFoundException {
-<span class="nc" id="L66"> PlayList thePlayList = null;</span>
-<span class="nc" id="L67"> boolean result = false;</span>
-<span class="nc bnc" id="L68" title="All 2 branches missed."> for (PlayList pl : playlists) {</span>
-<span class="nc bnc" id="L69" title="All 2 branches missed."> if (pl.getTitle().equalsIgnoreCase(playListTitle)) {</span>
-<span class="nc" id="L70"> thePlayList = pl;</span>
-<span class="nc" id="L71"> break;</span>
+<span class="nc" id="L65"> PlayList thePlayList = null;</span>
+<span class="nc" id="L66"> boolean result = false;</span>
+<span class="nc bnc" id="L67" title="All 2 branches missed."> for (PlayList pl : playlists) {</span>
+<span class="nc bnc" id="L68" title="All 2 branches missed."> if (pl.getTitle().equalsIgnoreCase(playListTitle)) {</span>
+<span class="nc" id="L69"> thePlayList = pl;</span>
+<span class="nc" id="L70"> break;</span>
}
-<span class="nc" id="L73"> }</span>
+<span class="nc" id="L72"> }</span>
-<span class="nc bnc" id="L75" title="All 2 branches missed."> if (thePlayList != null)</span>
-<span class="nc" id="L76"> result = playlists.remove(thePlayList);</span>
-<span class="nc bnc" id="L77" title="All 2 branches missed."> if (!result) throw new NoPlayListFoundException(&quot;Playlist &quot; + playListTitle + &quot; not found!&quot;);</span>
-<span class="nc" id="L78"> }</span>
+<span class="nc bnc" id="L74" title="All 2 branches missed."> if (thePlayList != null)</span>
+<span class="nc" id="L75"> result = playlists.remove(thePlayList);</span>
+<span class="nc bnc" id="L76" title="All 2 branches missed."> if (!result) throw new NoPlayListFoundException(&quot;Playlist &quot; + playListTitle + &quot; not found!&quot;);</span>
+<span class="nc" id="L77"> }</span>
public Iterator&lt;Album&gt; albums() {
-<span class="nc" id="L81"> return albums.listIterator();</span>
+<span class="nc" id="L80"> return albums.listIterator();</span>
}
public Iterator&lt;PlayList&gt; playlists() {
-<span class="nc" id="L85"> return playlists.listIterator();</span>
+<span class="nc" id="L84"> return playlists.listIterator();</span>
}
public Iterator&lt;AudioElement&gt; elements() {
-<span class="nc" id="L89"> return elements.listIterator();</span>
+<span class="nc" id="L88"> return elements.listIterator();</span>
}
public String getAlbumsTitlesSortedByDate() {
-<span class="nc" id="L93"> StringBuilder titleList = new StringBuilder();</span>
-<span class="nc" id="L94"> albums.sort(new SortByDate());</span>
-<span class="nc bnc" id="L95" title="All 2 branches missed."> for (Album al : albums)</span>
-<span class="nc" id="L96"> titleList.append(al.getTitle()).append(&quot;\n&quot;);</span>
-<span class="nc" id="L97"> return titleList.toString();</span>
+<span class="nc" id="L92"> StringBuilder titleList = new StringBuilder();</span>
+<span class="nc" id="L93"> albums.sort(new SortByDate());</span>
+<span class="nc bnc" id="L94" title="All 2 branches missed."> for (Album al : albums)</span>
+<span class="nc" id="L95"> titleList.append(al.getTitle()).append(&quot;\n&quot;);</span>
+<span class="nc" id="L96"> return titleList.toString();</span>
}
public String getAudiobooksTitlesSortedByAuthor() {
-<span class="nc" id="L101"> StringBuilder titleList = new StringBuilder();</span>
-<span class="nc" id="L102"> List&lt;AudioElement&gt; audioBookList = new ArrayList&lt;&gt;();</span>
-<span class="nc bnc" id="L103" title="All 2 branches missed."> for (AudioElement ae : elements)</span>
-<span class="nc bnc" id="L104" title="All 2 branches missed."> if (ae instanceof AudioBook)</span>
-<span class="nc" id="L105"> audioBookList.add(ae);</span>
-<span class="nc" id="L106"> audioBookList.sort(new SortByAuthor());</span>
-<span class="nc bnc" id="L107" title="All 2 branches missed."> for (AudioElement ab : audioBookList)</span>
-<span class="nc" id="L108"> titleList.append(ab.getArtist()).append(&quot;\n&quot;);</span>
-<span class="nc" id="L109"> return titleList.toString();</span>
+<span class="nc" id="L100"> StringBuilder titleList = new StringBuilder();</span>
+<span class="nc" id="L101"> List&lt;AudioElement&gt; audioBookList = new ArrayList&lt;&gt;();</span>
+<span class="nc bnc" id="L102" title="All 2 branches missed."> for (AudioElement ae : elements)</span>
+<span class="nc bnc" id="L103" title="All 2 branches missed."> if (ae instanceof AudioBook)</span>
+<span class="nc" id="L104"> audioBookList.add(ae);</span>
+<span class="nc" id="L105"> audioBookList.sort(new SortByAuthor());</span>
+<span class="nc bnc" id="L106" title="All 2 branches missed."> for (AudioElement ab : audioBookList)</span>
+<span class="nc" id="L107"> titleList.append(ab.getArtist()).append(&quot;\n&quot;);</span>
+<span class="nc" id="L108"> return titleList.toString();</span>
}
public List&lt;AudioElement&gt; getAlbumSongs(String albumTitle) throws NoAlbumFoundException {
-<span class="nc" id="L113"> Album theAlbum = null;</span>
-<span class="nc" id="L114"> ArrayList&lt;AudioElement&gt; songsInAlbum = new ArrayList&lt;&gt;();</span>
-<span class="nc bnc" id="L115" title="All 2 branches missed."> for (Album al : albums) {</span>
-<span class="nc bnc" id="L116" title="All 2 branches missed."> if (al.getTitle().equalsIgnoreCase(albumTitle)) {</span>
-<span class="nc" id="L117"> theAlbum = al;</span>
-<span class="nc" id="L118"> break;</span>
+<span class="nc" id="L112"> Album theAlbum = null;</span>
+<span class="nc" id="L113"> ArrayList&lt;AudioElement&gt; songsInAlbum = new ArrayList&lt;&gt;();</span>
+<span class="nc bnc" id="L114" title="All 2 branches missed."> for (Album al : albums) {</span>
+<span class="nc bnc" id="L115" title="All 2 branches missed."> if (al.getTitle().equalsIgnoreCase(albumTitle)) {</span>
+<span class="nc" id="L116"> theAlbum = al;</span>
+<span class="nc" id="L117"> break;</span>
}
-<span class="nc" id="L120"> }</span>
-<span class="nc bnc" id="L121" title="All 2 branches missed."> if (theAlbum == null) throw new NoAlbumFoundException(&quot;No album with this title in the MusicHub!&quot;);</span>
-
-<span class="nc" id="L123"> List&lt;UUID&gt; songIDs = theAlbum.getSongs();</span>
-<span class="nc bnc" id="L124" title="All 2 branches missed."> for (UUID id : songIDs)</span>
-<span class="nc bnc" id="L125" title="All 2 branches missed."> for (AudioElement el : elements) {</span>
-<span class="nc bnc" id="L126" title="All 2 branches missed."> if (el instanceof Song) {</span>
-<span class="nc bnc" id="L127" title="All 2 branches missed."> if (el.getUUID().equals(id)) songsInAlbum.add(el);</span>
+<span class="nc" id="L119"> }</span>
+<span class="nc bnc" id="L120" title="All 2 branches missed."> if (theAlbum == null) throw new NoAlbumFoundException(&quot;No album with this title in the MusicHub!&quot;);</span>
+
+<span class="nc" id="L122"> List&lt;UUID&gt; songIDs = theAlbum.getSongs();</span>
+<span class="nc bnc" id="L123" title="All 2 branches missed."> for (UUID id : songIDs)</span>
+<span class="nc bnc" id="L124" title="All 2 branches missed."> for (AudioElement el : elements) {</span>
+<span class="nc bnc" id="L125" title="All 2 branches missed."> if (el instanceof Song) {</span>
+<span class="nc bnc" id="L126" title="All 2 branches missed."> if (el.getUUID().equals(id)) songsInAlbum.add(el);</span>
}
-<span class="nc" id="L129"> }</span>
-<span class="nc" id="L130"> return songsInAlbum;</span>
+<span class="nc" id="L128"> }</span>
+<span class="nc" id="L129"> return songsInAlbum;</span>
}
public List&lt;Song&gt; getAlbumSongsSortedByGenre(String albumTitle) throws NoAlbumFoundException {
-<span class="nc" id="L135"> Album theAlbum = null;</span>
-<span class="nc" id="L136"> ArrayList&lt;Song&gt; songsInAlbum = new ArrayList&lt;&gt;();</span>
-<span class="nc bnc" id="L137" title="All 2 branches missed."> for (Album al : albums) {</span>
-<span class="nc bnc" id="L138" title="All 2 branches missed."> if (al.getTitle().equalsIgnoreCase(albumTitle)) {</span>
-<span class="nc" id="L139"> theAlbum = al;</span>
-<span class="nc" id="L140"> break;</span>
+<span class="nc" id="L134"> Album theAlbum = null;</span>
+<span class="nc" id="L135"> ArrayList&lt;Song&gt; songsInAlbum = new ArrayList&lt;&gt;();</span>
+<span class="nc bnc" id="L136" title="All 2 branches missed."> for (Album al : albums) {</span>
+<span class="nc bnc" id="L137" title="All 2 branches missed."> if (al.getTitle().equalsIgnoreCase(albumTitle)) {</span>
+<span class="nc" id="L138"> theAlbum = al;</span>
+<span class="nc" id="L139"> break;</span>
}
-<span class="nc" id="L142"> }</span>
-<span class="nc bnc" id="L143" title="All 2 branches missed."> if (theAlbum == null) throw new NoAlbumFoundException(&quot;No album with this title in the MusicHub!&quot;);</span>
-
-<span class="nc" id="L145"> List&lt;UUID&gt; songIDs = theAlbum.getSongs();</span>
-<span class="nc bnc" id="L146" title="All 2 branches missed."> for (UUID id : songIDs)</span>
-<span class="nc bnc" id="L147" title="All 2 branches missed."> for (AudioElement el : elements) {</span>
-<span class="nc bnc" id="L148" title="All 2 branches missed."> if (el instanceof Song) {</span>
-<span class="nc bnc" id="L149" title="All 2 branches missed."> if (el.getUUID().equals(id)) songsInAlbum.add((Song) el);</span>
+<span class="nc" id="L141"> }</span>
+<span class="nc bnc" id="L142" title="All 2 branches missed."> if (theAlbum == null) throw new NoAlbumFoundException(&quot;No album with this title in the MusicHub!&quot;);</span>
+
+<span class="nc" id="L144"> List&lt;UUID&gt; songIDs = theAlbum.getSongs();</span>
+<span class="nc bnc" id="L145" title="All 2 branches missed."> for (UUID id : songIDs)</span>
+<span class="nc bnc" id="L146" title="All 2 branches missed."> for (AudioElement el : elements) {</span>
+<span class="nc bnc" id="L147" title="All 2 branches missed."> if (el instanceof Song) {</span>
+<span class="nc bnc" id="L148" title="All 2 branches missed."> if (el.getUUID().equals(id)) songsInAlbum.add((Song) el);</span>
}
-<span class="nc" id="L151"> }</span>
-<span class="nc" id="L152"> songsInAlbum.sort(new SortByGenre());</span>
-<span class="nc" id="L153"> return songsInAlbum;</span>
+<span class="nc" id="L150"> }</span>
+<span class="nc" id="L151"> songsInAlbum.sort(new SortByGenre());</span>
+<span class="nc" id="L152"> return songsInAlbum;</span>
}
public void addElementToAlbum(String elementTitle, String albumTitle) throws NoAlbumFoundException, NoElementFoundException {
-<span class="nc" id="L158"> Album theAlbum = null;</span>
+<span class="nc" id="L157"> Album theAlbum = null;</span>
int i;
-<span class="nc" id="L160"> boolean found = false;</span>
-<span class="nc bnc" id="L161" title="All 2 branches missed."> for (i = 0; i &lt; albums.size(); i++) {</span>
-<span class="nc bnc" id="L162" title="All 2 branches missed."> if (albums.get(i).getTitle().equalsIgnoreCase(albumTitle)) {</span>
-<span class="nc" id="L163"> theAlbum = albums.get(i);</span>
-<span class="nc" id="L164"> found = true;</span>
-<span class="nc" id="L165"> break;</span>
+<span class="nc" id="L159"> boolean found = false;</span>
+<span class="nc bnc" id="L160" title="All 2 branches missed."> for (i = 0; i &lt; albums.size(); i++) {</span>
+<span class="nc bnc" id="L161" title="All 2 branches missed."> if (albums.get(i).getTitle().equalsIgnoreCase(albumTitle)) {</span>
+<span class="nc" id="L162"> theAlbum = albums.get(i);</span>
+<span class="nc" id="L163"> found = true;</span>
+<span class="nc" id="L164"> break;</span>
}
}
-<span class="nc bnc" id="L169" title="All 2 branches missed."> if (found) {</span>
-<span class="nc" id="L170"> AudioElement theElement = null;</span>
-<span class="nc bnc" id="L171" title="All 2 branches missed."> for (AudioElement ae : elements) {</span>
-<span class="nc bnc" id="L172" title="All 2 branches missed."> if (ae.getTitle().equalsIgnoreCase(elementTitle)) {</span>
-<span class="nc" id="L173"> theElement = ae;</span>
-<span class="nc" id="L174"> break;</span>
+<span class="nc bnc" id="L168" title="All 2 branches missed."> if (found) {</span>
+<span class="nc" id="L169"> AudioElement theElement = null;</span>
+<span class="nc bnc" id="L170" title="All 2 branches missed."> for (AudioElement ae : elements) {</span>
+<span class="nc bnc" id="L171" title="All 2 branches missed."> if (ae.getTitle().equalsIgnoreCase(elementTitle)) {</span>
+<span class="nc" id="L172"> theElement = ae;</span>
+<span class="nc" id="L173"> break;</span>
}
-<span class="nc" id="L176"> }</span>
-<span class="nc bnc" id="L177" title="All 2 branches missed."> if (theElement != null) {</span>
-<span class="nc" id="L178"> theAlbum.addSong(theElement.getUUID());</span>
+<span class="nc" id="L175"> }</span>
+<span class="nc bnc" id="L176" title="All 2 branches missed."> if (theElement != null) {</span>
+<span class="nc" id="L177"> theAlbum.addSong(theElement.getUUID());</span>
//replace the album in the list
-<span class="nc" id="L180"> albums.set(i, theAlbum);</span>
-<span class="nc" id="L181"> } else throw new NoElementFoundException(&quot;Element &quot; + elementTitle + &quot; not found!&quot;);</span>
-<span class="nc" id="L182"> } else throw new NoAlbumFoundException(&quot;Album &quot; + albumTitle + &quot; not found!&quot;);</span>
+<span class="nc" id="L179"> albums.set(i, theAlbum);</span>
+<span class="nc" id="L180"> } else throw new NoElementFoundException(&quot;Element &quot; + elementTitle + &quot; not found!&quot;);</span>
+<span class="nc" id="L181"> } else throw new NoAlbumFoundException(&quot;Album &quot; + albumTitle + &quot; not found!&quot;);</span>
-<span class="nc" id="L184"> }</span>
+<span class="nc" id="L183"> }</span>
public void addElementToPlayList(String elementTitle, String playListTitle) throws NoPlayListFoundException, NoElementFoundException {
-<span class="nc" id="L187"> PlayList thePlaylist = null;</span>
+<span class="nc" id="L186"> PlayList thePlaylist = null;</span>
int i;
-<span class="nc" id="L189"> boolean found = false;</span>
+<span class="nc" id="L188"> boolean found = false;</span>
-<span class="nc bnc" id="L191" title="All 2 branches missed."> for (i = 0; i &lt; playlists.size(); i++) {</span>
-<span class="nc bnc" id="L192" title="All 2 branches missed."> if (playlists.get(i).getTitle().equalsIgnoreCase(playListTitle)) {</span>
-<span class="nc" id="L193"> thePlaylist = playlists.get(i);</span>
-<span class="nc" id="L194"> found = true;</span>
-<span class="nc" id="L195"> break;</span>
+<span class="nc bnc" id="L190" title="All 2 branches missed."> for (i = 0; i &lt; playlists.size(); i++) {</span>
+<span class="nc bnc" id="L191" title="All 2 branches missed."> if (playlists.get(i).getTitle().equalsIgnoreCase(playListTitle)) {</span>
+<span class="nc" id="L192"> thePlaylist = playlists.get(i);</span>
+<span class="nc" id="L193"> found = true;</span>
+<span class="nc" id="L194"> break;</span>
}
}
-<span class="nc bnc" id="L199" title="All 2 branches missed."> if (found) {</span>
-<span class="nc" id="L200"> AudioElement theElement = null;</span>
-<span class="nc bnc" id="L201" title="All 2 branches missed."> for (AudioElement ae : elements) {</span>
-<span class="nc bnc" id="L202" title="All 2 branches missed."> if (ae.getTitle().equalsIgnoreCase(elementTitle)) {</span>
-<span class="nc" id="L203"> theElement = ae;</span>
-<span class="nc" id="L204"> break;</span>
+<span class="nc bnc" id="L198" title="All 2 branches missed."> if (found) {</span>
+<span class="nc" id="L199"> AudioElement theElement = null;</span>
+<span class="nc bnc" id="L200" title="All 2 branches missed."> for (AudioElement ae : elements) {</span>
+<span class="nc bnc" id="L201" title="All 2 branches missed."> if (ae.getTitle().equalsIgnoreCase(elementTitle)) {</span>
+<span class="nc" id="L202"> theElement = ae;</span>
+<span class="nc" id="L203"> break;</span>
}
-<span class="nc" id="L206"> }</span>
-<span class="nc bnc" id="L207" title="All 2 branches missed."> if (theElement != null) {</span>
-<span class="nc" id="L208"> thePlaylist.addElement(theElement.getUUID());</span>
+<span class="nc" id="L205"> }</span>
+<span class="nc bnc" id="L206" title="All 2 branches missed."> if (theElement != null) {</span>
+<span class="nc" id="L207"> thePlaylist.addElement(theElement.getUUID());</span>
//replace the album in the list
-<span class="nc" id="L210"> playlists.set(i, thePlaylist);</span>
-<span class="nc" id="L211"> } else throw new NoElementFoundException(&quot;Element &quot; + elementTitle + &quot; not found!&quot;);</span>
+<span class="nc" id="L209"> playlists.set(i, thePlaylist);</span>
+<span class="nc" id="L210"> } else throw new NoElementFoundException(&quot;Element &quot; + elementTitle + &quot; not found!&quot;);</span>
-<span class="nc" id="L213"> } else throw new NoPlayListFoundException(&quot;Playlist &quot; + playListTitle + &quot; not found!&quot;);</span>
+<span class="nc" id="L212"> } else throw new NoPlayListFoundException(&quot;Playlist &quot; + playListTitle + &quot; not found!&quot;);</span>
-<span class="nc" id="L215"> }</span>
+<span class="nc" id="L214"> }</span>
private void loadAlbums() {
-<span class="nc" id="L218"> NodeList albumNodes = xmlHandler.parseXMLFile(ALBUMS_FILE_PATH);</span>
-<span class="nc bnc" id="L219" title="All 2 branches missed."> if (albumNodes == null) return;</span>
+<span class="nc" id="L217"> NodeList albumNodes = xmlHandler.parseXMLFile(ALBUMS_FILE_PATH);</span>
+<span class="nc bnc" id="L218" title="All 2 branches missed."> if (albumNodes == null) return;</span>
-<span class="nc bnc" id="L221" title="All 2 branches missed."> for (int i = 0; i &lt; albumNodes.getLength(); i++) {</span>
-<span class="nc bnc" id="L222" title="All 2 branches missed."> if (albumNodes.item(i).getNodeType() == Node.ELEMENT_NODE) {</span>
-<span class="nc" id="L223"> Element albumElement = (Element) albumNodes.item(i);</span>
-<span class="nc bnc" id="L224" title="All 2 branches missed."> if (albumElement.getNodeName().equals(&quot;album&quot;)) {</span>
+<span class="nc bnc" id="L220" title="All 2 branches missed."> for (int i = 0; i &lt; albumNodes.getLength(); i++) {</span>
+<span class="nc bnc" id="L221" title="All 2 branches missed."> if (albumNodes.item(i).getNodeType() == Node.ELEMENT_NODE) {</span>
+<span class="nc" id="L222"> Element albumElement = (Element) albumNodes.item(i);</span>
+<span class="nc bnc" id="L223" title="All 2 branches missed."> if (albumElement.getNodeName().equals(&quot;album&quot;)) {</span>
try {
-<span class="nc" id="L226"> this.addAlbum(new Album(albumElement));</span>
-<span class="nc" id="L227"> } catch (Exception ex) {</span>
-<span class="nc" id="L228"> System.out.println(&quot;Something is wrong with the XML album element&quot;);</span>
-<span class="nc" id="L229"> }</span>
+<span class="nc" id="L225"> this.addAlbum(new Album(albumElement));</span>
+<span class="nc" id="L226"> } catch (Exception ex) {</span>
+<span class="nc" id="L227"> System.out.println(&quot;Something is wrong with the XML album element&quot;);</span>
+<span class="nc" id="L228"> }</span>
}
}
}
-<span class="nc" id="L233"> }</span>
+<span class="nc" id="L232"> }</span>
private void loadPlaylists() {
-<span class="nc" id="L236"> NodeList playlistNodes = xmlHandler.parseXMLFile(PLAYLISTS_FILE_PATH);</span>
-<span class="nc bnc" id="L237" title="All 2 branches missed."> if (playlistNodes == null) return;</span>
+<span class="nc" id="L235"> NodeList playlistNodes = xmlHandler.parseXMLFile(PLAYLISTS_FILE_PATH);</span>
+<span class="nc bnc" id="L236" title="All 2 branches missed."> if (playlistNodes == null) return;</span>
-<span class="nc bnc" id="L239" title="All 2 branches missed."> for (int i = 0; i &lt; playlistNodes.getLength(); i++) {</span>
-<span class="nc bnc" id="L240" title="All 2 branches missed."> if (playlistNodes.item(i).getNodeType() == Node.ELEMENT_NODE) {</span>
-<span class="nc" id="L241"> Element playlistElement = (Element) playlistNodes.item(i);</span>
-<span class="nc bnc" id="L242" title="All 2 branches missed."> if (playlistElement.getNodeName().equals(&quot;playlist&quot;)) {</span>
+<span class="nc bnc" id="L238" title="All 2 branches missed."> for (int i = 0; i &lt; playlistNodes.getLength(); i++) {</span>
+<span class="nc bnc" id="L239" title="All 2 branches missed."> if (playlistNodes.item(i).getNodeType() == Node.ELEMENT_NODE) {</span>
+<span class="nc" id="L240"> Element playlistElement = (Element) playlistNodes.item(i);</span>
+<span class="nc bnc" id="L241" title="All 2 branches missed."> if (playlistElement.getNodeName().equals(&quot;playlist&quot;)) {</span>
try {
-<span class="nc" id="L244"> this.addPlaylist(new PlayList(playlistElement));</span>
-<span class="nc" id="L245"> } catch (Exception ex) {</span>
-<span class="nc" id="L246"> System.out.println(&quot;Something is wrong with the XML playlist element&quot;);</span>
-<span class="nc" id="L247"> }</span>
+<span class="nc" id="L243"> this.addPlaylist(new PlayList(playlistElement));</span>
+<span class="nc" id="L244"> } catch (Exception ex) {</span>
+<span class="nc" id="L245"> System.out.println(&quot;Something is wrong with the XML playlist element&quot;);</span>
+<span class="nc" id="L246"> }</span>
}
}
}
-<span class="nc" id="L251"> }</span>
+<span class="nc" id="L250"> }</span>
private void loadElements() {
-<span class="nc" id="L254"> NodeList audioelementsNodes = xmlHandler.parseXMLFile(ELEMENTS_FILE_PATH);</span>
-<span class="nc bnc" id="L255" title="All 2 branches missed."> if (audioelementsNodes == null) return;</span>
+<span class="nc" id="L253"> NodeList audioelementsNodes = xmlHandler.parseXMLFile(ELEMENTS_FILE_PATH);</span>
+<span class="nc bnc" id="L254" title="All 2 branches missed."> if (audioelementsNodes == null) return;</span>
-<span class="nc bnc" id="L257" title="All 2 branches missed."> for (int i = 0; i &lt; audioelementsNodes.getLength(); i++) {</span>
-<span class="nc bnc" id="L258" title="All 2 branches missed."> if (audioelementsNodes.item(i).getNodeType() == Node.ELEMENT_NODE) {</span>
-<span class="nc" id="L259"> Element audioElement = (Element) audioelementsNodes.item(i);</span>
-<span class="nc bnc" id="L260" title="All 2 branches missed."> if (audioElement.getNodeName().equals(&quot;song&quot;)) {</span>
+<span class="nc bnc" id="L256" title="All 2 branches missed."> for (int i = 0; i &lt; audioelementsNodes.getLength(); i++) {</span>
+<span class="nc bnc" id="L257" title="All 2 branches missed."> if (audioelementsNodes.item(i).getNodeType() == Node.ELEMENT_NODE) {</span>
+<span class="nc" id="L258"> Element audioElement = (Element) audioelementsNodes.item(i);</span>
+<span class="nc bnc" id="L259" title="All 2 branches missed."> if (audioElement.getNodeName().equals(&quot;song&quot;)) {</span>
try {
-<span class="nc" id="L262"> AudioElement newSong = new Song(audioElement);</span>
-<span class="nc" id="L263"> this.addElement(newSong);</span>
-<span class="nc" id="L264"> } catch (Exception ex) {</span>
-<span class="nc" id="L265"> System.out.println(&quot;Something is wrong with the XML song element&quot;);</span>
-<span class="nc" id="L266"> }</span>
+<span class="nc" id="L261"> AudioElement newSong = new Song(audioElement);</span>
+<span class="nc" id="L262"> this.addElement(newSong);</span>
+<span class="nc" id="L263"> } catch (Exception ex) {</span>
+<span class="nc" id="L264"> System.out.println(&quot;Something is wrong with the XML song element&quot;);</span>
+<span class="nc" id="L265"> }</span>
}
-<span class="nc bnc" id="L268" title="All 2 branches missed."> if (audioElement.getNodeName().equals(&quot;audiobook&quot;)) {</span>
+<span class="nc bnc" id="L267" title="All 2 branches missed."> if (audioElement.getNodeName().equals(&quot;audiobook&quot;)) {</span>
try {
-<span class="nc" id="L270"> AudioElement newAudioBook = new AudioBook(audioElement);</span>
-<span class="nc" id="L271"> this.addElement(newAudioBook);</span>
-<span class="nc" id="L272"> } catch (Exception ex) {</span>
-<span class="nc" id="L273"> System.out.println(&quot;Something is wrong with the XML audiobook element&quot;);</span>
-<span class="nc" id="L274"> }</span>
+<span class="nc" id="L269"> AudioElement newAudioBook = new AudioBook(audioElement);</span>
+<span class="nc" id="L270"> this.addElement(newAudioBook);</span>
+<span class="nc" id="L271"> } catch (Exception ex) {</span>
+<span class="nc" id="L272"> System.out.println(&quot;Something is wrong with the XML audiobook element&quot;);</span>
+<span class="nc" id="L273"> }</span>
}
}
}
-<span class="nc" id="L278"> }</span>
+<span class="nc" id="L277"> }</span>
public void saveAlbums() {
-<span class="nc" id="L282"> Document document = xmlHandler.createXMLDocument();</span>
-<span class="nc bnc" id="L283" title="All 2 branches missed."> if (document == null) return;</span>
+<span class="nc" id="L281"> Document document = xmlHandler.createXMLDocument();</span>
+<span class="nc bnc" id="L282" title="All 2 branches missed."> if (document == null) return;</span>
// root element
-<span class="nc" id="L286"> Element root = document.createElement(&quot;albums&quot;);</span>
-<span class="nc" id="L287"> document.appendChild(root);</span>
+<span class="nc" id="L285"> Element root = document.createElement(&quot;albums&quot;);</span>
+<span class="nc" id="L286"> document.appendChild(root);</span>
//save all albums
-<span class="nc bnc" id="L290" title="All 2 branches missed."> for (Iterator&lt;Album&gt; albumsIter = this.albums(); albumsIter.hasNext(); ) {</span>
-<span class="nc" id="L291"> Album currentAlbum = albumsIter.next();</span>
-<span class="nc" id="L292"> currentAlbum.createXMLElement(document, root);</span>
-<span class="nc" id="L293"> }</span>
-<span class="nc" id="L294"> xmlHandler.createXMLFile(document, ALBUMS_FILE_PATH);</span>
-<span class="nc" id="L295"> }</span>
+<span class="nc bnc" id="L289" title="All 2 branches missed."> for (Iterator&lt;Album&gt; albumsIter = this.albums(); albumsIter.hasNext(); ) {</span>
+<span class="nc" id="L290"> Album currentAlbum = albumsIter.next();</span>
+<span class="nc" id="L291"> currentAlbum.createXMLElement(document, root);</span>
+<span class="nc" id="L292"> }</span>
+<span class="nc" id="L293"> xmlHandler.createXMLFile(document, ALBUMS_FILE_PATH);</span>
+<span class="nc" id="L294"> }</span>
public void savePlayLists() {
-<span class="nc" id="L298"> Document document = xmlHandler.createXMLDocument();</span>
-<span class="nc bnc" id="L299" title="All 2 branches missed."> if (document == null) return;</span>
+<span class="nc" id="L297"> Document document = xmlHandler.createXMLDocument();</span>
+<span class="nc bnc" id="L298" title="All 2 branches missed."> if (document == null) return;</span>
// root element
-<span class="nc" id="L302"> Element root = document.createElement(&quot;playlists&quot;);</span>
-<span class="nc" id="L303"> document.appendChild(root);</span>
+<span class="nc" id="L301"> Element root = document.createElement(&quot;playlists&quot;);</span>
+<span class="nc" id="L302"> document.appendChild(root);</span>
//save all playlists
-<span class="nc bnc" id="L306" title="All 2 branches missed."> for (Iterator&lt;PlayList&gt; playlistsIter = this.playlists(); playlistsIter.hasNext(); ) {</span>
-<span class="nc" id="L307"> PlayList currentPlayList = playlistsIter.next();</span>
-<span class="nc" id="L308"> currentPlayList.createXMLElement(document, root);</span>
-<span class="nc" id="L309"> }</span>
-<span class="nc" id="L310"> xmlHandler.createXMLFile(document, PLAYLISTS_FILE_PATH);</span>
-<span class="nc" id="L311"> }</span>
+<span class="nc bnc" id="L305" title="All 2 branches missed."> for (Iterator&lt;PlayList&gt; playlistsIter = this.playlists(); playlistsIter.hasNext(); ) {</span>
+<span class="nc" id="L306"> PlayList currentPlayList = playlistsIter.next();</span>
+<span class="nc" id="L307"> currentPlayList.createXMLElement(document, root);</span>
+<span class="nc" id="L308"> }</span>
+<span class="nc" id="L309"> xmlHandler.createXMLFile(document, PLAYLISTS_FILE_PATH);</span>
+<span class="nc" id="L310"> }</span>
public void saveElements() {
-<span class="nc" id="L314"> Document document = xmlHandler.createXMLDocument();</span>
-<span class="nc bnc" id="L315" title="All 2 branches missed."> if (document == null) return;</span>
+<span class="nc" id="L313"> Document document = xmlHandler.createXMLDocument();</span>
+<span class="nc bnc" id="L314" title="All 2 branches missed."> if (document == null) return;</span>
// root element
-<span class="nc" id="L318"> Element root = document.createElement(&quot;elements&quot;);</span>
-<span class="nc" id="L319"> document.appendChild(root);</span>
+<span class="nc" id="L317"> Element root = document.createElement(&quot;elements&quot;);</span>
+<span class="nc" id="L318"> document.appendChild(root);</span>
//save all AudioElements
-<span class="nc bnc" id="L322" title="All 2 branches missed."> for (AudioElement currentElement : elements) {</span>
+<span class="nc bnc" id="L321" title="All 2 branches missed."> for (AudioElement currentElement : elements) {</span>
-<span class="nc bnc" id="L324" title="All 2 branches missed."> if (currentElement instanceof Song) {</span>
-<span class="nc" id="L325"> currentElement.createXMLElement(document, root);</span>
+<span class="nc bnc" id="L323" title="All 2 branches missed."> if (currentElement instanceof Song) {</span>
+<span class="nc" id="L324"> currentElement.createXMLElement(document, root);</span>
}
-<span class="nc bnc" id="L327" title="All 2 branches missed."> if (currentElement instanceof AudioBook) {</span>
-<span class="nc" id="L328"> currentElement.createXMLElement(document, root);</span>
+<span class="nc bnc" id="L326" title="All 2 branches missed."> if (currentElement instanceof AudioBook) {</span>
+<span class="nc" id="L327"> currentElement.createXMLElement(document, root);</span>
}
-<span class="nc" id="L330"> }</span>
-<span class="nc" id="L331"> xmlHandler.createXMLFile(document, ELEMENTS_FILE_PATH);</span>
-<span class="nc" id="L332"> }</span>
+<span class="nc" id="L329"> }</span>
+<span class="nc" id="L330"> xmlHandler.createXMLFile(document, ELEMENTS_FILE_PATH);</span>
+<span class="nc" id="L331"> }</span>
public void getAudioElement(List&lt;AudioElement&gt; audios, String elementTitle) throws NoAlbumFoundException, UnsupportedAudioFileException, IOException, LineUnavailableException {
-<span class="nc bnc" id="L335" title="All 2 branches missed."> for (AudioElement el : audios) {</span>
-<span class="nc bnc" id="L336" title="All 2 branches missed."> if (el.getTitle().equalsIgnoreCase(elementTitle)) {</span>
-<span class="nc" id="L337"> el.manageAudioElement();</span>
+<span class="nc bnc" id="L334" title="All 2 branches missed."> for (AudioElement el : audios) {</span>
+<span class="nc bnc" id="L335" title="All 2 branches missed."> if (el.getTitle().equalsIgnoreCase(elementTitle)) {</span>
+<span class="nc" id="L336"> el.manageAudioElement();</span>
}
-<span class="nc" id="L339"> }</span>
+<span class="nc" id="L338"> }</span>
-<span class="nc" id="L341"> }</span>
+<span class="nc" id="L340"> }</span>
public void searchAudioElement() throws UnsupportedAudioFileException, NoAlbumFoundException, LineUnavailableException, IOException, NoElementFoundException {
-<span class="nc" id="L344"> Scanner scanner = new Scanner(System.in);</span>
-<span class="nc" id="L345"> System.out.println(&quot;Entrez le titre ou l'artiste de la musique que vous souhaitez chercher dans la base de données&quot;);</span>
-<span class="nc" id="L346"> String word = scanner.next().toLowerCase(Locale.ROOT);</span>
-<span class="nc" id="L347"> List&lt;AudioElement&gt; searchResult = new ArrayList&lt;&gt;();</span>
-<span class="nc bnc" id="L348" title="All 2 branches missed."> for(AudioElement el : elements){</span>
-<span class="nc bnc" id="L349" title="All 4 branches missed."> if(el.getTitle().toLowerCase(Locale.ROOT).contains(word) || el.getArtist().toLowerCase(Locale.ROOT).contains(word)){</span>
-<span class="nc" id="L350"> searchResult.add(el);</span>
-<span class="nc" id="L351"> System.out.println(el);</span>
+<span class="nc" id="L343"> Scanner scanner = new Scanner(System.in);</span>
+<span class="nc" id="L344"> System.out.println(&quot;Entrez le titre ou l'artiste de la musique que vous souhaitez chercher dans la base de données&quot;);</span>
+<span class="nc" id="L345"> String word = scanner.next().toLowerCase(Locale.ROOT);</span>
+<span class="nc" id="L346"> List&lt;AudioElement&gt; searchResult = new ArrayList&lt;&gt;();</span>
+<span class="nc bnc" id="L347" title="All 2 branches missed."> for(AudioElement el : elements){</span>
+<span class="nc bnc" id="L348" title="All 4 branches missed."> if(el.getTitle().toLowerCase(Locale.ROOT).contains(word) || el.getArtist().toLowerCase(Locale.ROOT).contains(word)){</span>
+<span class="nc" id="L349"> searchResult.add(el);</span>
+<span class="nc" id="L350"> System.out.println(el);</span>
}
-<span class="nc" id="L353"> }</span>
+<span class="nc" id="L352"> }</span>
-<span class="nc bnc" id="L355" title="All 2 branches missed."> if(searchResult.isEmpty()){</span>
-<span class="nc" id="L356"> throw new NoElementFoundException(&quot;Any result for your search&quot;);</span>
+<span class="nc bnc" id="L354" title="All 2 branches missed."> if (searchResult.isEmpty()) {</span>
+<span class="nc" id="L355"> throw new NoElementFoundException(&quot;Any result for your search&quot;);</span>
}
-<span class="nc bnc" id="L358" title="All 2 branches missed."> if (searchResult.size()==1){</span>
-<span class="nc" id="L359"> this.getAudioElement(searchResult, searchResult.get(0).getTitle());</span>
+<span class="nc bnc" id="L357" title="All 2 branches missed."> if (searchResult.size() == 1) {</span>
+<span class="nc" id="L358"> this.getAudioElement(searchResult, searchResult.get(0).getTitle());</span>
}
-<span class="nc" id="L361"> }</span>
+<span class="nc" id="L360"> }</span>
+
+ /**
+ * Method getting a list of playlists
+ *
+ * @return a list of playlist titles
+ * @author Anthony BOULANT
+ */
+ public String getPlayListsTitles() {
+<span class="nc" id="L369"> StringBuilder titleList = new StringBuilder();</span>
+
+<span class="nc bnc" id="L371" title="All 2 branches missed."> for (PlayList pl : playlists)</span>
+<span class="nc" id="L372"> titleList.append(pl.getTitle()).append(&quot;\n&quot;);</span>
+<span class="nc" id="L373"> return titleList.toString();</span>
+ }
+ /**
+ * Method checking the songs contained in a chosen playlist and returning them if found.
+ *
+ * @param playListTitle the title of a (chosen) playlist
+ * @return a list of songs from a playlist
+ * @throws NoPlayListFoundException if the chosen playlist doesn't exist
+ * @author Anthony BOULANT
+ */
+ public List&lt;AudioElement&gt; getPlayListSongs(String playListTitle) throws NoPlayListFoundException {
+<span class="nc" id="L385"> PlayList thePlayList = null;</span>
+<span class="nc" id="L386"> ArrayList&lt;AudioElement&gt; songsInPlayList = new ArrayList&lt;&gt;();</span>
+<span class="nc bnc" id="L387" title="All 2 branches missed."> for (PlayList pl : playlists) {</span>
+<span class="nc bnc" id="L388" title="All 2 branches missed."> if (pl.getTitle().equalsIgnoreCase(playListTitle)) {</span>
+<span class="nc" id="L389"> thePlayList = pl;</span>
+<span class="nc" id="L390"> break;</span>
+ }
+<span class="nc" id="L392"> }</span>
+<span class="nc bnc" id="L393" title="All 2 branches missed."> if (thePlayList == null) throw new NoPlayListFoundException(&quot;No playlist with this title in the MusicHub!&quot;);</span>
+
+<span class="nc" id="L395"> List&lt;UUID&gt; songIDs = thePlayList.getElements();</span>
+<span class="nc bnc" id="L396" title="All 2 branches missed."> for (UUID id : songIDs)</span>
+<span class="nc bnc" id="L397" title="All 2 branches missed."> for (AudioElement el : elements) {</span>
+<span class="nc bnc" id="L398" title="All 2 branches missed."> if (el instanceof Song) {</span>
+<span class="nc bnc" id="L399" title="All 2 branches missed."> if (el.getUUID().equals(id)) songsInPlayList.add(el);</span>
+ }
+<span class="nc" id="L401"> }</span>
+<span class="nc" id="L402"> return songsInPlayList;</span>
+
+ }
}
</pre><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
diff --git a/target/site/jacoco/musichub.business/SortByAuthor.html b/target/site/jacoco/musichub.business/SortByAuthor.html
index 851cdce..b762715 100644
--- a/target/site/jacoco/musichub.business/SortByAuthor.html
+++ b/target/site/jacoco/musichub.business/SortByAuthor.html
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>SortByAuthor</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <a href="index.html" class="el_package">musichub.business</a> &gt; <span class="el_class">SortByAuthor</span></div><h1>SortByAuthor</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">9 of 9</td><td class="ctr2">0 %</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">2</td><td class="ctr2">2</td></tr></tfoot><tbody><tr><td id="a0"><a href="MusicHub.java.html#L29" class="el_method">compare(AudioElement, AudioElement)</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="6" alt="6"/></td><td class="ctr2" id="c0">0 %</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">1</td><td class="ctr2" id="i0">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a1"><a href="MusicHub.java.html#L27" class="el_method">SortByAuthor()</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="60" height="10" title="3" alt="3"/></td><td class="ctr2" id="c1">0 %</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>SortByAuthor</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <a href="index.html" class="el_package">musichub.business</a> &gt; <span class="el_class">SortByAuthor</span></div><h1>SortByAuthor</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">9 of 9</td><td class="ctr2">0 %</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">2</td><td class="ctr2">2</td></tr></tfoot><tbody><tr><td id="a0"><a href="MusicHub.java.html#L28" class="el_method">compare(AudioElement, AudioElement)</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="6" alt="6"/></td><td class="ctr2" id="c0">0 %</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">1</td><td class="ctr2" id="i0">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a1"><a href="MusicHub.java.html#L26" class="el_method">SortByAuthor()</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="60" height="10" title="3" alt="3"/></td><td class="ctr2" id="c1">0 %</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
diff --git a/target/site/jacoco/musichub.business/SortByDate.html b/target/site/jacoco/musichub.business/SortByDate.html
index 8f4b2f7..6f9a099 100644
--- a/target/site/jacoco/musichub.business/SortByDate.html
+++ b/target/site/jacoco/musichub.business/SortByDate.html
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>SortByDate</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <a href="index.html" class="el_package">musichub.business</a> &gt; <span class="el_class">SortByDate</span></div><h1>SortByDate</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">9 of 9</td><td class="ctr2">0 %</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">2</td><td class="ctr2">2</td></tr></tfoot><tbody><tr><td id="a0"><a href="MusicHub.java.html#L17" class="el_method">compare(Album, Album)</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="6" alt="6"/></td><td class="ctr2" id="c0">0 %</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">1</td><td class="ctr2" id="i0">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a1"><a href="MusicHub.java.html#L15" class="el_method">SortByDate()</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="60" height="10" title="3" alt="3"/></td><td class="ctr2" id="c1">0 %</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>SortByDate</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <a href="index.html" class="el_package">musichub.business</a> &gt; <span class="el_class">SortByDate</span></div><h1>SortByDate</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">9 of 9</td><td class="ctr2">0 %</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">2</td><td class="ctr2">2</td></tr></tfoot><tbody><tr><td id="a0"><a href="MusicHub.java.html#L16" class="el_method">compare(Album, Album)</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="6" alt="6"/></td><td class="ctr2" id="c0">0 %</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">1</td><td class="ctr2" id="i0">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a1"><a href="MusicHub.java.html#L14" class="el_method">SortByDate()</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="60" height="10" title="3" alt="3"/></td><td class="ctr2" id="c1">0 %</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
diff --git a/target/site/jacoco/musichub.business/SortByGenre.html b/target/site/jacoco/musichub.business/SortByGenre.html
index 6dd6e7d..d89caea 100644
--- a/target/site/jacoco/musichub.business/SortByGenre.html
+++ b/target/site/jacoco/musichub.business/SortByGenre.html
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>SortByGenre</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <a href="index.html" class="el_package">musichub.business</a> &gt; <span class="el_class">SortByGenre</span></div><h1>SortByGenre</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">9 of 9</td><td class="ctr2">0 %</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">2</td><td class="ctr2">2</td></tr></tfoot><tbody><tr><td id="a0"><a href="MusicHub.java.html#L23" class="el_method">compare(Song, Song)</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="6" alt="6"/></td><td class="ctr2" id="c0">0 %</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">1</td><td class="ctr2" id="i0">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a1"><a href="MusicHub.java.html#L21" class="el_method">SortByGenre()</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="60" height="10" title="3" alt="3"/></td><td class="ctr2" id="c1">0 %</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>SortByGenre</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <a href="index.html" class="el_package">musichub.business</a> &gt; <span class="el_class">SortByGenre</span></div><h1>SortByGenre</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">9 of 9</td><td class="ctr2">0 %</td><td class="bar">0 of 0</td><td class="ctr2">n/a</td><td class="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">2</td><td class="ctr2">2</td><td class="ctr1">2</td><td class="ctr2">2</td></tr></tfoot><tbody><tr><td id="a0"><a href="MusicHub.java.html#L22" class="el_method">compare(Song, Song)</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="6" alt="6"/></td><td class="ctr2" id="c0">0 %</td><td class="bar" id="d0"/><td class="ctr2" id="e0">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g0">1</td><td class="ctr1" id="h0">1</td><td class="ctr2" id="i0">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a1"><a href="MusicHub.java.html#L20" class="el_method">SortByGenre()</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="60" height="10" title="3" alt="3"/></td><td class="ctr2" id="c1">0 %</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">1</td><td class="ctr2" id="i1">1</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
diff --git a/target/site/jacoco/musichub.business/index.html b/target/site/jacoco/musichub.business/index.html
index f7cd669..2f40e82 100644
--- a/target/site/jacoco/musichub.business/index.html
+++ b/target/site/jacoco/musichub.business/index.html
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>musichub.business</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.source.html" class="el_source">Source Files</a><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <span class="el_package">musichub.business</span></div><h1>musichub.business</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">1 483 of 2 134</td><td class="ctr2">30 %</td><td class="bar">160 of 179</td><td class="ctr2">10 %</td><td class="ctr1">140</td><td class="ctr2">178</td><td class="ctr1">373</td><td class="ctr2">513</td><td class="ctr1">51</td><td class="ctr2">82</td><td class="ctr1">8</td><td class="ctr2">15</td></tr></tfoot><tbody><tr><td id="a6"><a href="MusicHub.html" class="el_class">MusicHub</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="874" alt="874"/></td><td class="ctr2" id="c7">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="124" alt="124"/></td><td class="ctr2" id="e4">0 %</td><td class="ctr1" id="f0">85</td><td class="ctr2" id="g0">85</td><td class="ctr1" id="h0">209</td><td class="ctr2" id="i0">209</td><td class="ctr1" id="j0">23</td><td class="ctr2" id="k0">23</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m0">1</td></tr><tr><td id="a0"><a href="Album.html" class="el_class">Album</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="45" height="10" title="330" alt="330"/></td><td class="ctr2" id="c8">0 %</td><td class="bar" id="d1"><img src="../jacoco-resources/redbar.gif" width="13" height="10" title="14" alt="14"/></td><td class="ctr2" id="e5">0 %</td><td class="ctr1" id="f1">16</td><td class="ctr2" id="g2">16</td><td class="ctr1" id="h1">84</td><td class="ctr2" id="i1">84</td><td class="ctr1" id="j1">9</td><td class="ctr2" id="k1">9</td><td class="ctr1" id="l1">1</td><td class="ctr2" id="m1">1</td></tr><tr><td id="a1"><a href="AudioBook.html" class="el_class">AudioBook</a></td><td class="bar" id="b2"><img src="../jacoco-resources/redbar.gif" width="16" height="10" title="117" alt="117"/><img src="../jacoco-resources/greenbar.gif" width="6" height="10" title="47" alt="47"/></td><td class="ctr2" id="c6">28 %</td><td class="bar" id="d3"><img src="../jacoco-resources/redbar.gif" width="7" height="10" title="8" alt="8"/><img src="../jacoco-resources/greenbar.gif" width="1" height="10" title="2" alt="2"/></td><td class="ctr2" id="e2">20 %</td><td class="ctr1" id="f2">12</td><td class="ctr2" id="g1">17</td><td class="ctr1" id="h3">27</td><td class="ctr2" id="i4">39</td><td class="ctr1" id="j2">4</td><td class="ctr2" id="k2">9</td><td class="ctr1" id="l8">0</td><td class="ctr2" id="m2">1</td></tr><tr><td id="a2"><a href="AudioElement.html" class="el_class">AudioElement</a></td><td class="bar" id="b3"><img src="../jacoco-resources/redbar.gif" width="11" height="10" title="85" alt="85"/><img src="../jacoco-resources/greenbar.gif" width="24" height="10" title="181" alt="181"/></td><td class="ctr2" id="c5">68 %</td><td class="bar" id="d2"><img src="../jacoco-resources/redbar.gif" width="8" height="10" title="9" alt="9"/><img src="../jacoco-resources/greenbar.gif" width="1" height="10" title="2" alt="2"/></td><td class="ctr2" id="e3">18 %</td><td class="ctr1" id="f3">11</td><td class="ctr2" id="g3">16</td><td class="ctr1" id="h2">30</td><td class="ctr2" id="i2">72</td><td class="ctr1" id="j3">4</td><td class="ctr2" id="k3">9</td><td class="ctr1" id="l9">0</td><td class="ctr2" id="m3">1</td></tr><tr><td id="a10"><a href="PlayList.html" class="el_class">PlayList</a></td><td class="bar" id="b4"><img src="../jacoco-resources/redbar.gif" width="4" height="10" title="32" alt="32"/><img src="../jacoco-resources/greenbar.gif" width="23" height="10" title="170" alt="170"/></td><td class="ctr2" id="c4">84 %</td><td class="bar" id="d4"><img src="../jacoco-resources/redbar.gif" width="4" height="10" title="5" alt="5"/><img src="../jacoco-resources/greenbar.gif" width="8" height="10" title="9" alt="9"/></td><td class="ctr2" id="e1">64 %</td><td class="ctr1" id="f4">5</td><td class="ctr2" id="g4">14</td><td class="ctr1" id="h4">9</td><td class="ctr2" id="i3">53</td><td class="ctr1" id="j12">0</td><td class="ctr2" id="k4">7</td><td class="ctr1" id="l10">0</td><td class="ctr2" id="m4">1</td></tr><tr><td id="a12"><a href="SortByAuthor.html" class="el_class">SortByAuthor</a></td><td class="bar" id="b5"><img src="../jacoco-resources/redbar.gif" width="1" height="10" title="9" alt="9"/></td><td class="ctr2" id="c9">0 %</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f5">2</td><td class="ctr2" id="g9">2</td><td class="ctr1" id="h5">2</td><td class="ctr2" id="i9">2</td><td class="ctr1" id="j4">2</td><td class="ctr2" id="k9">2</td><td class="ctr1" id="l2">1</td><td class="ctr2" id="m5">1</td></tr><tr><td id="a13"><a href="SortByDate.html" class="el_class">SortByDate</a></td><td class="bar" id="b6"><img src="../jacoco-resources/redbar.gif" width="1" height="10" title="9" alt="9"/></td><td class="ctr2" id="c10">0 %</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td class="ctr1" id="f6">2</td><td class="ctr2" id="g10">2</td><td class="ctr1" id="h6">2</td><td class="ctr2" id="i10">2</td><td class="ctr1" id="j5">2</td><td class="ctr2" id="k10">2</td><td class="ctr1" id="l3">1</td><td class="ctr2" id="m6">1</td></tr><tr><td id="a14"><a href="SortByGenre.html" class="el_class">SortByGenre</a></td><td class="bar" id="b7"><img src="../jacoco-resources/redbar.gif" width="1" height="10" title="9" alt="9"/></td><td class="ctr2" id="c11">0 %</td><td class="bar" id="d8"/><td class="ctr2" id="e8">n/a</td><td class="ctr1" id="f7">2</td><td class="ctr2" id="g11">2</td><td class="ctr1" id="h7">2</td><td class="ctr2" id="i11">2</td><td class="ctr1" id="j6">2</td><td class="ctr2" id="k11">2</td><td class="ctr1" id="l4">1</td><td class="ctr2" id="m7">1</td></tr><tr><td id="a7"><a href="NoAlbumFoundException.html" class="el_class">NoAlbumFoundException</a></td><td class="bar" id="b8"/><td class="ctr2" id="c12">0 %</td><td class="bar" id="d9"/><td class="ctr2" id="e9">n/a</td><td class="ctr1" id="f8">1</td><td class="ctr2" id="g12">1</td><td class="ctr1" id="h8">2</td><td class="ctr2" id="i12">2</td><td class="ctr1" id="j7">1</td><td class="ctr2" id="k12">1</td><td class="ctr1" id="l5">1</td><td class="ctr2" id="m8">1</td></tr><tr><td id="a9"><a href="NoPlayListFoundException.html" class="el_class">NoPlayListFoundException</a></td><td class="bar" id="b9"/><td class="ctr2" id="c13">0 %</td><td class="bar" id="d10"/><td class="ctr2" id="e10">n/a</td><td class="ctr1" id="f9">1</td><td class="ctr2" id="g13">1</td><td class="ctr1" id="h9">2</td><td class="ctr2" id="i13">2</td><td class="ctr1" id="j8">1</td><td class="ctr2" id="k13">1</td><td class="ctr1" id="l6">1</td><td class="ctr2" id="m9">1</td></tr><tr><td id="a8"><a href="NoElementFoundException.html" class="el_class">NoElementFoundException</a></td><td class="bar" id="b10"/><td class="ctr2" id="c14">0 %</td><td class="bar" id="d11"/><td class="ctr2" id="e11">n/a</td><td class="ctr1" id="f10">1</td><td class="ctr2" id="g14">1</td><td class="ctr1" id="h10">2</td><td class="ctr2" id="i14">2</td><td class="ctr1" id="j9">1</td><td class="ctr2" id="k14">1</td><td class="ctr1" id="l7">1</td><td class="ctr2" id="m10">1</td></tr><tr><td id="a5"><a href="Language.html" class="el_class">Language</a></td><td class="bar" id="b11"><img src="../jacoco-resources/greenbar.gif" width="6" height="10" title="46" alt="46"/></td><td class="ctr2" id="c2">93 %</td><td class="bar" id="d12"/><td class="ctr2" id="e12">n/a</td><td class="ctr1" id="f11">1</td><td class="ctr2" id="g6">3</td><td class="ctr1" id="h11">1</td><td class="ctr2" id="i6">6</td><td class="ctr1" id="j10">1</td><td class="ctr2" id="k6">3</td><td class="ctr1" id="l11">0</td><td class="ctr2" id="m11">1</td></tr><tr><td id="a3"><a href="Category.html" class="el_class">Category</a></td><td class="bar" id="b12"><img src="../jacoco-resources/greenbar.gif" width="6" height="10" title="46" alt="46"/></td><td class="ctr2" id="c3">93 %</td><td class="bar" id="d13"/><td class="ctr2" id="e13">n/a</td><td class="ctr1" id="f12">1</td><td class="ctr2" id="g7">3</td><td class="ctr1" id="h12">1</td><td class="ctr2" id="i7">6</td><td class="ctr1" id="j11">1</td><td class="ctr2" id="k7">3</td><td class="ctr1" id="l12">0</td><td class="ctr2" id="m12">1</td></tr><tr><td id="a11"><a href="Song.html" class="el_class">Song</a></td><td class="bar" id="b13"><img src="../jacoco-resources/greenbar.gif" width="14" height="10" title="105" alt="105"/></td><td class="ctr2" id="c0">100 %</td><td class="bar" id="d5"><img src="../jacoco-resources/greenbar.gif" width="5" height="10" title="6" alt="6"/></td><td class="ctr2" id="e0">100 %</td><td class="ctr1" id="f13">0</td><td class="ctr2" id="g5">12</td><td class="ctr1" id="h13">0</td><td class="ctr2" id="i5">26</td><td class="ctr1" id="j13">0</td><td class="ctr2" id="k5">7</td><td class="ctr1" id="l13">0</td><td class="ctr2" id="m13">1</td></tr><tr><td id="a4"><a href="Genre.html" class="el_class">Genre</a></td><td class="bar" id="b14"><img src="../jacoco-resources/greenbar.gif" width="7" height="10" title="56" alt="56"/></td><td class="ctr2" id="c1">100 %</td><td class="bar" id="d14"/><td class="ctr2" id="e14">n/a</td><td class="ctr1" id="f14">0</td><td class="ctr2" id="g8">3</td><td class="ctr1" id="h14">0</td><td class="ctr2" id="i8">6</td><td class="ctr1" id="j14">0</td><td class="ctr2" id="k8">3</td><td class="ctr1" id="l14">0</td><td class="ctr2" id="m14">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>musichub.business</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.source.html" class="el_source">Source Files</a><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <span class="el_package">musichub.business</span></div><h1>musichub.business</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">1 588 of 2 239</td><td class="ctr2">29 %</td><td class="bar">175 of 194</td><td class="ctr2">9 %</td><td class="ctr1">149</td><td class="ctr2">187</td><td class="ctr1">393</td><td class="ctr2">533</td><td class="ctr1">53</td><td class="ctr2">84</td><td class="ctr1">8</td><td class="ctr2">15</td></tr></tfoot><tbody><tr><td id="a6"><a href="MusicHub.html" class="el_class">MusicHub</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="973" alt="973"/></td><td class="ctr2" id="c7">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="140" alt="140"/></td><td class="ctr2" id="e4">0 %</td><td class="ctr1" id="f0">95</td><td class="ctr2" id="g0">95</td><td class="ctr1" id="h0">228</td><td class="ctr2" id="i0">228</td><td class="ctr1" id="j0">25</td><td class="ctr2" id="k0">25</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m0">1</td></tr><tr><td id="a0"><a href="Album.html" class="el_class">Album</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="40" height="10" title="330" alt="330"/></td><td class="ctr2" id="c8">0 %</td><td class="bar" id="d1"><img src="../jacoco-resources/redbar.gif" width="12" height="10" title="14" alt="14"/></td><td class="ctr2" id="e5">0 %</td><td class="ctr1" id="f1">16</td><td class="ctr2" id="g2">16</td><td class="ctr1" id="h1">84</td><td class="ctr2" id="i1">84</td><td class="ctr1" id="j1">9</td><td class="ctr2" id="k1">9</td><td class="ctr1" id="l1">1</td><td class="ctr2" id="m1">1</td></tr><tr><td id="a1"><a href="AudioBook.html" class="el_class">AudioBook</a></td><td class="bar" id="b2"><img src="../jacoco-resources/redbar.gif" width="14" height="10" title="117" alt="117"/><img src="../jacoco-resources/greenbar.gif" width="5" height="10" title="47" alt="47"/></td><td class="ctr2" id="c6">28 %</td><td class="bar" id="d2"><img src="../jacoco-resources/redbar.gif" width="6" height="10" title="8" alt="8"/><img src="../jacoco-resources/greenbar.gif" width="1" height="10" title="2" alt="2"/></td><td class="ctr2" id="e2">20 %</td><td class="ctr1" id="f2">12</td><td class="ctr2" id="g1">17</td><td class="ctr1" id="h3">27</td><td class="ctr2" id="i4">39</td><td class="ctr1" id="j2">4</td><td class="ctr2" id="k2">9</td><td class="ctr1" id="l8">0</td><td class="ctr2" id="m2">1</td></tr><tr><td id="a2"><a href="AudioElement.html" class="el_class">AudioElement</a></td><td class="bar" id="b3"><img src="../jacoco-resources/redbar.gif" width="11" height="10" title="91" alt="91"/><img src="../jacoco-resources/greenbar.gif" width="22" height="10" title="181" alt="181"/></td><td class="ctr2" id="c5">66 %</td><td class="bar" id="d3"><img src="../jacoco-resources/redbar.gif" width="6" height="10" title="8" alt="8"/><img src="../jacoco-resources/greenbar.gif" width="1" height="10" title="2" alt="2"/></td><td class="ctr2" id="e3">20 %</td><td class="ctr1" id="f3">10</td><td class="ctr2" id="g3">15</td><td class="ctr1" id="h2">31</td><td class="ctr2" id="i2">73</td><td class="ctr1" id="j3">4</td><td class="ctr2" id="k3">9</td><td class="ctr1" id="l9">0</td><td class="ctr2" id="m3">1</td></tr><tr><td id="a10"><a href="PlayList.html" class="el_class">PlayList</a></td><td class="bar" id="b4"><img src="../jacoco-resources/redbar.gif" width="3" height="10" title="32" alt="32"/><img src="../jacoco-resources/greenbar.gif" width="20" height="10" title="170" alt="170"/></td><td class="ctr2" id="c4">84 %</td><td class="bar" id="d4"><img src="../jacoco-resources/redbar.gif" width="4" height="10" title="5" alt="5"/><img src="../jacoco-resources/greenbar.gif" width="7" height="10" title="9" alt="9"/></td><td class="ctr2" id="e1">64 %</td><td class="ctr1" id="f4">5</td><td class="ctr2" id="g4">14</td><td class="ctr1" id="h4">9</td><td class="ctr2" id="i3">53</td><td class="ctr1" id="j12">0</td><td class="ctr2" id="k4">7</td><td class="ctr1" id="l10">0</td><td class="ctr2" id="m4">1</td></tr><tr><td id="a12"><a href="SortByAuthor.html" class="el_class">SortByAuthor</a></td><td class="bar" id="b5"><img src="../jacoco-resources/redbar.gif" width="1" height="10" title="9" alt="9"/></td><td class="ctr2" id="c9">0 %</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f5">2</td><td class="ctr2" id="g9">2</td><td class="ctr1" id="h5">2</td><td class="ctr2" id="i9">2</td><td class="ctr1" id="j4">2</td><td class="ctr2" id="k9">2</td><td class="ctr1" id="l2">1</td><td class="ctr2" id="m5">1</td></tr><tr><td id="a13"><a href="SortByDate.html" class="el_class">SortByDate</a></td><td class="bar" id="b6"><img src="../jacoco-resources/redbar.gif" width="1" height="10" title="9" alt="9"/></td><td class="ctr2" id="c10">0 %</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td class="ctr1" id="f6">2</td><td class="ctr2" id="g10">2</td><td class="ctr1" id="h6">2</td><td class="ctr2" id="i10">2</td><td class="ctr1" id="j5">2</td><td class="ctr2" id="k10">2</td><td class="ctr1" id="l3">1</td><td class="ctr2" id="m6">1</td></tr><tr><td id="a14"><a href="SortByGenre.html" class="el_class">SortByGenre</a></td><td class="bar" id="b7"><img src="../jacoco-resources/redbar.gif" width="1" height="10" title="9" alt="9"/></td><td class="ctr2" id="c11">0 %</td><td class="bar" id="d8"/><td class="ctr2" id="e8">n/a</td><td class="ctr1" id="f7">2</td><td class="ctr2" id="g11">2</td><td class="ctr1" id="h7">2</td><td class="ctr2" id="i11">2</td><td class="ctr1" id="j6">2</td><td class="ctr2" id="k11">2</td><td class="ctr1" id="l4">1</td><td class="ctr2" id="m7">1</td></tr><tr><td id="a7"><a href="NoAlbumFoundException.html" class="el_class">NoAlbumFoundException</a></td><td class="bar" id="b8"/><td class="ctr2" id="c12">0 %</td><td class="bar" id="d9"/><td class="ctr2" id="e9">n/a</td><td class="ctr1" id="f8">1</td><td class="ctr2" id="g12">1</td><td class="ctr1" id="h8">2</td><td class="ctr2" id="i12">2</td><td class="ctr1" id="j7">1</td><td class="ctr2" id="k12">1</td><td class="ctr1" id="l5">1</td><td class="ctr2" id="m8">1</td></tr><tr><td id="a9"><a href="NoPlayListFoundException.html" class="el_class">NoPlayListFoundException</a></td><td class="bar" id="b9"/><td class="ctr2" id="c13">0 %</td><td class="bar" id="d10"/><td class="ctr2" id="e10">n/a</td><td class="ctr1" id="f9">1</td><td class="ctr2" id="g13">1</td><td class="ctr1" id="h9">2</td><td class="ctr2" id="i13">2</td><td class="ctr1" id="j8">1</td><td class="ctr2" id="k13">1</td><td class="ctr1" id="l6">1</td><td class="ctr2" id="m9">1</td></tr><tr><td id="a8"><a href="NoElementFoundException.html" class="el_class">NoElementFoundException</a></td><td class="bar" id="b10"/><td class="ctr2" id="c14">0 %</td><td class="bar" id="d11"/><td class="ctr2" id="e11">n/a</td><td class="ctr1" id="f10">1</td><td class="ctr2" id="g14">1</td><td class="ctr1" id="h10">2</td><td class="ctr2" id="i14">2</td><td class="ctr1" id="j9">1</td><td class="ctr2" id="k14">1</td><td class="ctr1" id="l7">1</td><td class="ctr2" id="m10">1</td></tr><tr><td id="a5"><a href="Language.html" class="el_class">Language</a></td><td class="bar" id="b11"><img src="../jacoco-resources/greenbar.gif" width="5" height="10" title="46" alt="46"/></td><td class="ctr2" id="c2">93 %</td><td class="bar" id="d12"/><td class="ctr2" id="e12">n/a</td><td class="ctr1" id="f11">1</td><td class="ctr2" id="g6">3</td><td class="ctr1" id="h11">1</td><td class="ctr2" id="i6">6</td><td class="ctr1" id="j10">1</td><td class="ctr2" id="k6">3</td><td class="ctr1" id="l11">0</td><td class="ctr2" id="m11">1</td></tr><tr><td id="a3"><a href="Category.html" class="el_class">Category</a></td><td class="bar" id="b12"><img src="../jacoco-resources/greenbar.gif" width="5" height="10" title="46" alt="46"/></td><td class="ctr2" id="c3">93 %</td><td class="bar" id="d13"/><td class="ctr2" id="e13">n/a</td><td class="ctr1" id="f12">1</td><td class="ctr2" id="g7">3</td><td class="ctr1" id="h12">1</td><td class="ctr2" id="i7">6</td><td class="ctr1" id="j11">1</td><td class="ctr2" id="k7">3</td><td class="ctr1" id="l12">0</td><td class="ctr2" id="m12">1</td></tr><tr><td id="a11"><a href="Song.html" class="el_class">Song</a></td><td class="bar" id="b13"><img src="../jacoco-resources/greenbar.gif" width="12" height="10" title="105" alt="105"/></td><td class="ctr2" id="c0">100 %</td><td class="bar" id="d5"><img src="../jacoco-resources/greenbar.gif" width="5" height="10" title="6" alt="6"/></td><td class="ctr2" id="e0">100 %</td><td class="ctr1" id="f13">0</td><td class="ctr2" id="g5">12</td><td class="ctr1" id="h13">0</td><td class="ctr2" id="i5">26</td><td class="ctr1" id="j13">0</td><td class="ctr2" id="k5">7</td><td class="ctr1" id="l13">0</td><td class="ctr2" id="m13">1</td></tr><tr><td id="a4"><a href="Genre.html" class="el_class">Genre</a></td><td class="bar" id="b14"><img src="../jacoco-resources/greenbar.gif" width="6" height="10" title="56" alt="56"/></td><td class="ctr2" id="c1">100 %</td><td class="bar" id="d14"/><td class="ctr2" id="e14">n/a</td><td class="ctr1" id="f14">0</td><td class="ctr2" id="g8">3</td><td class="ctr1" id="h14">0</td><td class="ctr2" id="i8">6</td><td class="ctr1" id="j14">0</td><td class="ctr2" id="k8">3</td><td class="ctr1" id="l14">0</td><td class="ctr2" id="m14">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
diff --git a/target/site/jacoco/musichub.business/index.source.html b/target/site/jacoco/musichub.business/index.source.html
index 15d2893..8bc89c8 100644
--- a/target/site/jacoco/musichub.business/index.source.html
+++ b/target/site/jacoco/musichub.business/index.source.html
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>musichub.business</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.html" class="el_class">Classes</a><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <span class="el_package">musichub.business</span></div><h1>musichub.business</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">1 483 of 2 134</td><td class="ctr2">30 %</td><td class="bar">160 of 179</td><td class="ctr2">10 %</td><td class="ctr1">140</td><td class="ctr2">178</td><td class="ctr1">373</td><td class="ctr2">513</td><td class="ctr1">51</td><td class="ctr2">82</td><td class="ctr1">8</td><td class="ctr2">15</td></tr></tfoot><tbody><tr><td id="a6"><a href="MusicHub.java.html" class="el_source">MusicHub.java</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="901" alt="901"/></td><td class="ctr2" id="c7">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="124" alt="124"/></td><td class="ctr2" id="e4">0 %</td><td class="ctr1" id="f0">91</td><td class="ctr2" id="g0">91</td><td class="ctr1" id="h0">215</td><td class="ctr2" id="i0">215</td><td class="ctr1" id="j0">29</td><td class="ctr2" id="k0">29</td><td class="ctr1" id="l0">4</td><td class="ctr2" id="m0">4</td></tr><tr><td id="a0"><a href="Album.java.html" class="el_source">Album.java</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="43" height="10" title="330" alt="330"/></td><td class="ctr2" id="c8">0 %</td><td class="bar" id="d1"><img src="../jacoco-resources/redbar.gif" width="13" height="10" title="14" alt="14"/></td><td class="ctr2" id="e5">0 %</td><td class="ctr1" id="f1">16</td><td class="ctr2" id="g2">16</td><td class="ctr1" id="h1">84</td><td class="ctr2" id="i1">84</td><td class="ctr1" id="j1">9</td><td class="ctr2" id="k1">9</td><td class="ctr1" id="l1">1</td><td class="ctr2" id="m1">1</td></tr><tr><td id="a1"><a href="AudioBook.java.html" class="el_source">AudioBook.java</a></td><td class="bar" id="b2"><img src="../jacoco-resources/redbar.gif" width="15" height="10" title="117" alt="117"/><img src="../jacoco-resources/greenbar.gif" width="6" height="10" title="47" alt="47"/></td><td class="ctr2" id="c6">28 %</td><td class="bar" id="d3"><img src="../jacoco-resources/redbar.gif" width="7" height="10" title="8" alt="8"/><img src="../jacoco-resources/greenbar.gif" width="1" height="10" title="2" alt="2"/></td><td class="ctr2" id="e2">20 %</td><td class="ctr1" id="f2">12</td><td class="ctr2" id="g1">17</td><td class="ctr1" id="h3">27</td><td class="ctr2" id="i4">39</td><td class="ctr1" id="j2">4</td><td class="ctr2" id="k2">9</td><td class="ctr1" id="l5">0</td><td class="ctr2" id="m2">1</td></tr><tr><td id="a2"><a href="AudioElement.java.html" class="el_source">AudioElement.java</a></td><td class="bar" id="b3"><img src="../jacoco-resources/redbar.gif" width="11" height="10" title="85" alt="85"/><img src="../jacoco-resources/greenbar.gif" width="24" height="10" title="181" alt="181"/></td><td class="ctr2" id="c5">68 %</td><td class="bar" id="d2"><img src="../jacoco-resources/redbar.gif" width="8" height="10" title="9" alt="9"/><img src="../jacoco-resources/greenbar.gif" width="1" height="10" title="2" alt="2"/></td><td class="ctr2" id="e3">18 %</td><td class="ctr1" id="f3">11</td><td class="ctr2" id="g3">16</td><td class="ctr1" id="h2">30</td><td class="ctr2" id="i2">72</td><td class="ctr1" id="j3">4</td><td class="ctr2" id="k3">9</td><td class="ctr1" id="l6">0</td><td class="ctr2" id="m3">1</td></tr><tr><td id="a10"><a href="PlayList.java.html" class="el_source">PlayList.java</a></td><td class="bar" id="b4"><img src="../jacoco-resources/redbar.gif" width="4" height="10" title="32" alt="32"/><img src="../jacoco-resources/greenbar.gif" width="22" height="10" title="170" alt="170"/></td><td class="ctr2" id="c4">84 %</td><td class="bar" id="d4"><img src="../jacoco-resources/redbar.gif" width="4" height="10" title="5" alt="5"/><img src="../jacoco-resources/greenbar.gif" width="8" height="10" title="9" alt="9"/></td><td class="ctr2" id="e1">64 %</td><td class="ctr1" id="f4">5</td><td class="ctr2" id="g4">14</td><td class="ctr1" id="h4">9</td><td class="ctr2" id="i3">53</td><td class="ctr1" id="j9">0</td><td class="ctr2" id="k4">7</td><td class="ctr1" id="l7">0</td><td class="ctr2" id="m4">1</td></tr><tr><td id="a7"><a href="NoAlbumFoundException.java.html" class="el_source">NoAlbumFoundException.java</a></td><td class="bar" id="b5"/><td class="ctr2" id="c9">0 %</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f5">1</td><td class="ctr2" id="g9">1</td><td class="ctr1" id="h5">2</td><td class="ctr2" id="i9">2</td><td class="ctr1" id="j4">1</td><td class="ctr2" id="k9">1</td><td class="ctr1" id="l2">1</td><td class="ctr2" id="m5">1</td></tr><tr><td id="a9"><a href="NoPlayListFoundException.java.html" class="el_source">NoPlayListFoundException.java</a></td><td class="bar" id="b6"/><td class="ctr2" id="c10">0 %</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td class="ctr1" id="f6">1</td><td class="ctr2" id="g10">1</td><td class="ctr1" id="h6">2</td><td class="ctr2" id="i10">2</td><td class="ctr1" id="j5">1</td><td class="ctr2" id="k10">1</td><td class="ctr1" id="l3">1</td><td class="ctr2" id="m6">1</td></tr><tr><td id="a8"><a href="NoElementFoundException.java.html" class="el_source">NoElementFoundException.java</a></td><td class="bar" id="b7"/><td class="ctr2" id="c11">0 %</td><td class="bar" id="d8"/><td class="ctr2" id="e8">n/a</td><td class="ctr1" id="f7">1</td><td class="ctr2" id="g11">1</td><td class="ctr1" id="h7">2</td><td class="ctr2" id="i11">2</td><td class="ctr1" id="j6">1</td><td class="ctr2" id="k11">1</td><td class="ctr1" id="l4">1</td><td class="ctr2" id="m7">1</td></tr><tr><td id="a5"><a href="Language.java.html" class="el_source">Language.java</a></td><td class="bar" id="b8"><img src="../jacoco-resources/greenbar.gif" width="6" height="10" title="46" alt="46"/></td><td class="ctr2" id="c2">93 %</td><td class="bar" id="d9"/><td class="ctr2" id="e9">n/a</td><td class="ctr1" id="f8">1</td><td class="ctr2" id="g6">3</td><td class="ctr1" id="h8">1</td><td class="ctr2" id="i6">6</td><td class="ctr1" id="j7">1</td><td class="ctr2" id="k6">3</td><td class="ctr1" id="l8">0</td><td class="ctr2" id="m8">1</td></tr><tr><td id="a3"><a href="Category.java.html" class="el_source">Category.java</a></td><td class="bar" id="b9"><img src="../jacoco-resources/greenbar.gif" width="6" height="10" title="46" alt="46"/></td><td class="ctr2" id="c3">93 %</td><td class="bar" id="d10"/><td class="ctr2" id="e10">n/a</td><td class="ctr1" id="f9">1</td><td class="ctr2" id="g7">3</td><td class="ctr1" id="h9">1</td><td class="ctr2" id="i7">6</td><td class="ctr1" id="j8">1</td><td class="ctr2" id="k7">3</td><td class="ctr1" id="l9">0</td><td class="ctr2" id="m9">1</td></tr><tr><td id="a11"><a href="Song.java.html" class="el_source">Song.java</a></td><td class="bar" id="b10"><img src="../jacoco-resources/greenbar.gif" width="13" height="10" title="105" alt="105"/></td><td class="ctr2" id="c0">100 %</td><td class="bar" id="d5"><img src="../jacoco-resources/greenbar.gif" width="5" height="10" title="6" alt="6"/></td><td class="ctr2" id="e0">100 %</td><td class="ctr1" id="f10">0</td><td class="ctr2" id="g5">12</td><td class="ctr1" id="h10">0</td><td class="ctr2" id="i5">26</td><td class="ctr1" id="j10">0</td><td class="ctr2" id="k5">7</td><td class="ctr1" id="l10">0</td><td class="ctr2" id="m10">1</td></tr><tr><td id="a4"><a href="Genre.java.html" class="el_source">Genre.java</a></td><td class="bar" id="b11"><img src="../jacoco-resources/greenbar.gif" width="7" height="10" title="56" alt="56"/></td><td class="ctr2" id="c1">100 %</td><td class="bar" id="d11"/><td class="ctr2" id="e11">n/a</td><td class="ctr1" id="f11">0</td><td class="ctr2" id="g8">3</td><td class="ctr1" id="h11">0</td><td class="ctr2" id="i8">6</td><td class="ctr1" id="j11">0</td><td class="ctr2" id="k8">3</td><td class="ctr1" id="l11">0</td><td class="ctr2" id="m11">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>musichub.business</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.html" class="el_class">Classes</a><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <span class="el_package">musichub.business</span></div><h1>musichub.business</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">1 588 of 2 239</td><td class="ctr2">29 %</td><td class="bar">175 of 194</td><td class="ctr2">9 %</td><td class="ctr1">149</td><td class="ctr2">187</td><td class="ctr1">393</td><td class="ctr2">533</td><td class="ctr1">53</td><td class="ctr2">84</td><td class="ctr1">8</td><td class="ctr2">15</td></tr></tfoot><tbody><tr><td id="a6"><a href="MusicHub.java.html" class="el_source">MusicHub.java</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="1 000" alt="1 000"/></td><td class="ctr2" id="c7">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="140" alt="140"/></td><td class="ctr2" id="e4">0 %</td><td class="ctr1" id="f0">101</td><td class="ctr2" id="g0">101</td><td class="ctr1" id="h0">234</td><td class="ctr2" id="i0">234</td><td class="ctr1" id="j0">31</td><td class="ctr2" id="k0">31</td><td class="ctr1" id="l0">4</td><td class="ctr2" id="m0">4</td></tr><tr><td id="a0"><a href="Album.java.html" class="el_source">Album.java</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="39" height="10" title="330" alt="330"/></td><td class="ctr2" id="c8">0 %</td><td class="bar" id="d1"><img src="../jacoco-resources/redbar.gif" width="12" height="10" title="14" alt="14"/></td><td class="ctr2" id="e5">0 %</td><td class="ctr1" id="f1">16</td><td class="ctr2" id="g2">16</td><td class="ctr1" id="h1">84</td><td class="ctr2" id="i1">84</td><td class="ctr1" id="j1">9</td><td class="ctr2" id="k1">9</td><td class="ctr1" id="l1">1</td><td class="ctr2" id="m1">1</td></tr><tr><td id="a1"><a href="AudioBook.java.html" class="el_source">AudioBook.java</a></td><td class="bar" id="b2"><img src="../jacoco-resources/redbar.gif" width="14" height="10" title="117" alt="117"/><img src="../jacoco-resources/greenbar.gif" width="5" height="10" title="47" alt="47"/></td><td class="ctr2" id="c6">28 %</td><td class="bar" id="d2"><img src="../jacoco-resources/redbar.gif" width="6" height="10" title="8" alt="8"/><img src="../jacoco-resources/greenbar.gif" width="1" height="10" title="2" alt="2"/></td><td class="ctr2" id="e2">20 %</td><td class="ctr1" id="f2">12</td><td class="ctr2" id="g1">17</td><td class="ctr1" id="h3">27</td><td class="ctr2" id="i4">39</td><td class="ctr1" id="j2">4</td><td class="ctr2" id="k2">9</td><td class="ctr1" id="l5">0</td><td class="ctr2" id="m2">1</td></tr><tr><td id="a2"><a href="AudioElement.java.html" class="el_source">AudioElement.java</a></td><td class="bar" id="b3"><img src="../jacoco-resources/redbar.gif" width="10" height="10" title="91" alt="91"/><img src="../jacoco-resources/greenbar.gif" width="21" height="10" title="181" alt="181"/></td><td class="ctr2" id="c5">66 %</td><td class="bar" id="d3"><img src="../jacoco-resources/redbar.gif" width="6" height="10" title="8" alt="8"/><img src="../jacoco-resources/greenbar.gif" width="1" height="10" title="2" alt="2"/></td><td class="ctr2" id="e3">20 %</td><td class="ctr1" id="f3">10</td><td class="ctr2" id="g3">15</td><td class="ctr1" id="h2">31</td><td class="ctr2" id="i2">73</td><td class="ctr1" id="j3">4</td><td class="ctr2" id="k3">9</td><td class="ctr1" id="l6">0</td><td class="ctr2" id="m3">1</td></tr><tr><td id="a10"><a href="PlayList.java.html" class="el_source">PlayList.java</a></td><td class="bar" id="b4"><img src="../jacoco-resources/redbar.gif" width="3" height="10" title="32" alt="32"/><img src="../jacoco-resources/greenbar.gif" width="20" height="10" title="170" alt="170"/></td><td class="ctr2" id="c4">84 %</td><td class="bar" id="d4"><img src="../jacoco-resources/redbar.gif" width="4" height="10" title="5" alt="5"/><img src="../jacoco-resources/greenbar.gif" width="7" height="10" title="9" alt="9"/></td><td class="ctr2" id="e1">64 %</td><td class="ctr1" id="f4">5</td><td class="ctr2" id="g4">14</td><td class="ctr1" id="h4">9</td><td class="ctr2" id="i3">53</td><td class="ctr1" id="j9">0</td><td class="ctr2" id="k4">7</td><td class="ctr1" id="l7">0</td><td class="ctr2" id="m4">1</td></tr><tr><td id="a7"><a href="NoAlbumFoundException.java.html" class="el_source">NoAlbumFoundException.java</a></td><td class="bar" id="b5"/><td class="ctr2" id="c9">0 %</td><td class="bar" id="d6"/><td class="ctr2" id="e6">n/a</td><td class="ctr1" id="f5">1</td><td class="ctr2" id="g9">1</td><td class="ctr1" id="h5">2</td><td class="ctr2" id="i9">2</td><td class="ctr1" id="j4">1</td><td class="ctr2" id="k9">1</td><td class="ctr1" id="l2">1</td><td class="ctr2" id="m5">1</td></tr><tr><td id="a9"><a href="NoPlayListFoundException.java.html" class="el_source">NoPlayListFoundException.java</a></td><td class="bar" id="b6"/><td class="ctr2" id="c10">0 %</td><td class="bar" id="d7"/><td class="ctr2" id="e7">n/a</td><td class="ctr1" id="f6">1</td><td class="ctr2" id="g10">1</td><td class="ctr1" id="h6">2</td><td class="ctr2" id="i10">2</td><td class="ctr1" id="j5">1</td><td class="ctr2" id="k10">1</td><td class="ctr1" id="l3">1</td><td class="ctr2" id="m6">1</td></tr><tr><td id="a8"><a href="NoElementFoundException.java.html" class="el_source">NoElementFoundException.java</a></td><td class="bar" id="b7"/><td class="ctr2" id="c11">0 %</td><td class="bar" id="d8"/><td class="ctr2" id="e8">n/a</td><td class="ctr1" id="f7">1</td><td class="ctr2" id="g11">1</td><td class="ctr1" id="h7">2</td><td class="ctr2" id="i11">2</td><td class="ctr1" id="j6">1</td><td class="ctr2" id="k11">1</td><td class="ctr1" id="l4">1</td><td class="ctr2" id="m7">1</td></tr><tr><td id="a5"><a href="Language.java.html" class="el_source">Language.java</a></td><td class="bar" id="b8"><img src="../jacoco-resources/greenbar.gif" width="5" height="10" title="46" alt="46"/></td><td class="ctr2" id="c2">93 %</td><td class="bar" id="d9"/><td class="ctr2" id="e9">n/a</td><td class="ctr1" id="f8">1</td><td class="ctr2" id="g6">3</td><td class="ctr1" id="h8">1</td><td class="ctr2" id="i6">6</td><td class="ctr1" id="j7">1</td><td class="ctr2" id="k6">3</td><td class="ctr1" id="l8">0</td><td class="ctr2" id="m8">1</td></tr><tr><td id="a3"><a href="Category.java.html" class="el_source">Category.java</a></td><td class="bar" id="b9"><img src="../jacoco-resources/greenbar.gif" width="5" height="10" title="46" alt="46"/></td><td class="ctr2" id="c3">93 %</td><td class="bar" id="d10"/><td class="ctr2" id="e10">n/a</td><td class="ctr1" id="f9">1</td><td class="ctr2" id="g7">3</td><td class="ctr1" id="h9">1</td><td class="ctr2" id="i7">6</td><td class="ctr1" id="j8">1</td><td class="ctr2" id="k7">3</td><td class="ctr1" id="l9">0</td><td class="ctr2" id="m9">1</td></tr><tr><td id="a11"><a href="Song.java.html" class="el_source">Song.java</a></td><td class="bar" id="b10"><img src="../jacoco-resources/greenbar.gif" width="12" height="10" title="105" alt="105"/></td><td class="ctr2" id="c0">100 %</td><td class="bar" id="d5"><img src="../jacoco-resources/greenbar.gif" width="5" height="10" title="6" alt="6"/></td><td class="ctr2" id="e0">100 %</td><td class="ctr1" id="f10">0</td><td class="ctr2" id="g5">12</td><td class="ctr1" id="h10">0</td><td class="ctr2" id="i5">26</td><td class="ctr1" id="j10">0</td><td class="ctr2" id="k5">7</td><td class="ctr1" id="l10">0</td><td class="ctr2" id="m10">1</td></tr><tr><td id="a4"><a href="Genre.java.html" class="el_source">Genre.java</a></td><td class="bar" id="b11"><img src="../jacoco-resources/greenbar.gif" width="6" height="10" title="56" alt="56"/></td><td class="ctr2" id="c1">100 %</td><td class="bar" id="d11"/><td class="ctr2" id="e11">n/a</td><td class="ctr1" id="f11">0</td><td class="ctr2" id="g8">3</td><td class="ctr1" id="h11">0</td><td class="ctr2" id="i8">6</td><td class="ctr1" id="j11">0</td><td class="ctr2" id="k8">3</td><td class="ctr1" id="l11">0</td><td class="ctr2" id="m11">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
diff --git a/target/site/jacoco/musichub.main/Main.html b/target/site/jacoco/musichub.main/Main.html
index 3666c2b..f24445f 100644
--- a/target/site/jacoco/musichub.main/Main.html
+++ b/target/site/jacoco/musichub.main/Main.html
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>Main</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <a href="index.html" class="el_package">musichub.main</a> &gt; <span class="el_class">Main</span></div><h1>Main</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">625 of 625</td><td class="ctr2">0 %</td><td class="bar">42 of 42</td><td class="ctr2">0 %</td><td class="ctr1">31</td><td class="ctr2">31</td><td class="ctr1">215</td><td class="ctr2">215</td><td class="ctr1">3</td><td class="ctr2">3</td></tr></tfoot><tbody><tr><td id="a1"><a href="Main.java.html#L19" class="el_method">main(String[])</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="579" alt="579"/></td><td class="ctr2" id="c0">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="42" alt="42"/></td><td class="ctr2" id="e0">0 %</td><td class="ctr1" id="f0">29</td><td class="ctr2" id="g0">29</td><td class="ctr1" id="h0">199</td><td class="ctr2" id="i0">199</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a2"><a href="Main.java.html#L276" class="el_method">printAvailableCommands()</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="8" height="10" title="43" alt="43"/></td><td class="ctr2" id="c1">0 %</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">15</td><td class="ctr2" id="i1">15</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a0"><a href="Main.java.html#L16" class="el_method">Main()</a></td><td class="bar" id="b2"/><td class="ctr2" id="c2">0 %</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">1</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>Main</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <a href="index.html" class="el_package">musichub.main</a> &gt; <span class="el_class">Main</span></div><h1>Main</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">722 of 722</td><td class="ctr2">0 %</td><td class="bar">43 of 43</td><td class="ctr2">0 %</td><td class="ctr1">32</td><td class="ctr2">32</td><td class="ctr1">251</td><td class="ctr2">251</td><td class="ctr1">3</td><td class="ctr2">3</td></tr></tfoot><tbody><tr><td id="a1"><a href="Main.java.html#L19" class="el_method">main(String[])</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="673" alt="673"/></td><td class="ctr2" id="c0">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="43" alt="43"/></td><td class="ctr2" id="e0">0 %</td><td class="ctr1" id="f0">30</td><td class="ctr2" id="g0">30</td><td class="ctr1" id="h0">234</td><td class="ctr2" id="i0">234</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a2"><a href="Main.java.html#L318" class="el_method">printAvailableCommands()</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="8" height="10" title="46" alt="46"/></td><td class="ctr2" id="c1">0 %</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h1">16</td><td class="ctr2" id="i1">16</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a0"><a href="Main.java.html#L16" class="el_method">Main()</a></td><td class="bar" id="b2"/><td class="ctr2" id="c2">0 %</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">1</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
diff --git a/target/site/jacoco/musichub.main/Main.java.html b/target/site/jacoco/musichub.main/Main.java.html
index 121cc55..d2b3fb0 100644
--- a/target/site/jacoco/musichub.main/Main.java.html
+++ b/target/site/jacoco/musichub.main/Main.java.html
@@ -31,7 +31,7 @@ import static musichub.util.Policy.showTerm;
<span class="nc bnc" id="L31" title="All 2 branches missed."> if (choice.length() == 0) System.exit(0);</span>
<span class="nc bnc" id="L33" title="All 2 branches missed."> while (!choice.equals(&quot;&quot;)) { //if the user puts nothing, quit the loop/system</span>
-<span class="nc bnc" id="L34" title="All 16 branches missed."> switch (choice.charAt(0)) {</span>
+<span class="nc bnc" id="L34" title="All 17 branches missed."> switch (choice.charAt(0)) {</span>
case 'q': //added the option directly in the switch instead of the loop
<span class="nc" id="L36"> System.exit(0);</span>
case 'h':
@@ -54,240 +54,283 @@ import static musichub.util.Policy.showTerm;
<span class="nc" id="L54"> List&lt;Song&gt; songs = theHub.getAlbumSongsSortedByGenre(albumTitle);</span>
<span class="nc" id="L55"> System.out.println(songs);</span>
<span class="nc" id="L56"> } catch (NoAlbumFoundException ex) {</span>
-<span class="nc" id="L57"> System.out.println(&quot;No album found with the requested title &quot; + ex.getMessage());</span>
-<span class="nc" id="L58"> }</span>
-<span class="nc" id="L59"> printAvailableCommands();</span>
-<span class="nc" id="L60"> choice = scan.nextLine();</span>
-<span class="nc" id="L61"> break;</span>
+<span class="nc" id="L57"> LogHandler.write(&quot;No album found with the requested title&quot;, &quot;WARNING&quot;);</span>
+<span class="nc" id="L58"> System.out.println(&quot;No album found with the requested title &quot; + ex.getMessage());</span>
+<span class="nc" id="L59"> }</span>
+<span class="nc" id="L60"> printAvailableCommands();</span>
+<span class="nc" id="L61"> choice = scan.nextLine();</span>
+<span class="nc" id="L62"> break;</span>
case 'd':
//songs of an album
-<span class="nc" id="L64"> System.out.println(&quot;Songs of an album will be displayed; enter the album name, available albums are:&quot;);</span>
-<span class="nc" id="L65"> System.out.println(theHub.getAlbumsTitlesSortedByDate());</span>
+<span class="nc" id="L65"> System.out.println(&quot;Songs of an album will be displayed; enter the album name, available albums are:&quot;);</span>
+<span class="nc" id="L66"> System.out.println(theHub.getAlbumsTitlesSortedByDate());</span>
-<span class="nc" id="L67"> albumTitle = scan.nextLine();</span>
+<span class="nc" id="L68"> albumTitle = scan.nextLine();</span>
try {
-<span class="nc" id="L69"> List&lt;AudioElement&gt; songs = theHub.getAlbumSongs(albumTitle);</span>
-<span class="nc" id="L70"> System.out.println(theHub.getAlbumSongs(albumTitle));</span>
-<span class="nc" id="L71"> String song = scan.nextLine();</span>
-<span class="nc" id="L72"> theHub.getAudioElement(songs, song);</span>
-<span class="nc" id="L73"> } catch (NoAlbumFoundException ex) {</span>
-<span class="nc" id="L74"> System.out.println(&quot;No album found with the requested title &quot; + ex.getMessage());</span>
-<span class="nc" id="L75"> }</span>
-<span class="nc" id="L76"> printAvailableCommands();</span>
-<span class="nc" id="L77"> choice = scan.nextLine();</span>
-<span class="nc" id="L78"> break;</span>
+<span class="nc" id="L70"> List&lt;AudioElement&gt; songs = theHub.getAlbumSongs(albumTitle);</span>
+<span class="nc" id="L71"> System.out.println(theHub.getAlbumSongs(albumTitle));</span>
+<span class="nc" id="L72"> String song = scan.nextLine();</span>
+<span class="nc" id="L73"> theHub.getAudioElement(songs, song);</span>
+<span class="nc" id="L74"> } catch (NoAlbumFoundException ex) {</span>
+<span class="nc" id="L75"> LogHandler.write(&quot;No album found with the requested title&quot;, &quot;WARNING&quot;);</span>
+<span class="nc" id="L76"> System.out.println(&quot;No album found with the requested title &quot; + ex.getMessage());</span>
+<span class="nc" id="L77"> }</span>
+<span class="nc" id="L78"> printAvailableCommands();</span>
+<span class="nc" id="L79"> choice = scan.nextLine();</span>
+<span class="nc" id="L80"> break;</span>
case 'u':
//audiobooks ordered by author
-<span class="nc" id="L81"> System.out.println(theHub.getAudiobooksTitlesSortedByAuthor());</span>
-<span class="nc" id="L82"> printAvailableCommands();</span>
-<span class="nc" id="L83"> choice = scan.nextLine();</span>
-<span class="nc" id="L84"> break;</span>
+<span class="nc" id="L83"> System.out.println(theHub.getAudiobooksTitlesSortedByAuthor());</span>
+<span class="nc" id="L84"> printAvailableCommands();</span>
+<span class="nc" id="L85"> choice = scan.nextLine();</span>
+<span class="nc" id="L86"> break;</span>
case 'c':
// add a new song
-<span class="nc" id="L87"> System.out.println(&quot;Enter a new song: &quot;);</span>
-<span class="nc" id="L88"> System.out.println(&quot;Song title: &quot;);</span>
-<span class="nc" id="L89"> String title = scan.nextLine();</span>
-<span class="nc" id="L90"> System.out.println(&quot;Song genre (jazz, classic, hiphop, rock, pop, rap):&quot;);</span>
-<span class="nc" id="L91"> String genre = scan.nextLine();</span>
-<span class="nc" id="L92"> System.out.println(&quot;Song artist: &quot;);</span>
-<span class="nc" id="L93"> String artist = scan.nextLine();</span>
-<span class="nc" id="L94"> System.out.println(&quot;Song length in seconds: &quot;);</span>
-<span class="nc" id="L95"> int length = Integer.parseInt(scan.nextLine());</span>
+<span class="nc" id="L89"> System.out.println(&quot;Enter a new song: &quot;);</span>
+<span class="nc" id="L90"> System.out.println(&quot;Song title: &quot;);</span>
+<span class="nc" id="L91"> String title = scan.nextLine();</span>
+<span class="nc" id="L92"> System.out.println(&quot;Song genre (jazz, classic, hiphop, rock, pop, rap):&quot;);</span>
+<span class="nc" id="L93"> String genre = scan.nextLine();</span>
+<span class="nc" id="L94"> System.out.println(&quot;Song artist: &quot;);</span>
+<span class="nc" id="L95"> String artist = scan.nextLine();</span>
-<span class="nc" id="L97"> System.out.println(&quot;Song content: &quot;);</span>
-<span class="nc" id="L98"> String content = scan.nextLine();</span>
-<span class="nc bnc" id="L99" title="All 2 branches missed."> if (!isPathValid(content)) {</span>
-<span class="nc" id="L100"> String logMsg = &quot;The music file was not found with the path you've provided or the extension is not .wav&quot;;</span>
-<span class="nc" id="L101"> LogHandler.write(logMsg, &quot;WARNING&quot;); //write a line in the log file</span>
-<span class="nc" id="L102"> System.out.println(logMsg + &quot;\nType h for available commands&quot;);</span>
-<span class="nc" id="L103"> choice = scan.nextLine();</span>
-<span class="nc" id="L104"> break;</span>
+ int length;
+ try {
+<span class="nc" id="L99"> System.out.println(&quot;Song length in seconds: &quot;);</span>
+<span class="nc" id="L100"> length = Integer.parseInt(scan.nextLine());</span>
+<span class="nc" id="L101"> } catch (NumberFormatException ex) {</span>
+<span class="nc" id="L102"> String logMsg = &quot;You've not provided a number for the length.&quot;;</span>
+<span class="nc" id="L103"> LogHandler.write(logMsg, &quot;ERROR&quot;); //write a line in the log file</span>
+<span class="nc" id="L104"> System.err.println(logMsg);</span>
+<span class="nc" id="L105"> System.out.println(&quot;Type h for available commands&quot;);</span>
+<span class="nc" id="L106"> choice = scan.nextLine();</span>
+<span class="nc" id="L107"> break;</span>
+<span class="nc" id="L108"> }</span>
+
+<span class="nc" id="L110"> System.out.println(&quot;Song content: &quot;);</span>
+<span class="nc" id="L111"> String content = scan.nextLine();</span>
+<span class="nc bnc" id="L112" title="All 2 branches missed."> if (!isPathValid(content)) {</span>
+<span class="nc" id="L113"> String logMsg = &quot;The music file cannot be found with the path you've provided or the extension is not .wav&quot;;</span>
+<span class="nc" id="L114"> LogHandler.write(logMsg, &quot;ERROR&quot;); //write a line in the log file</span>
+<span class="nc" id="L115"> System.err.println(logMsg);</span>
+<span class="nc" id="L116"> System.out.println(&quot;Type h for available commands&quot;);</span>
+<span class="nc" id="L117"> choice = scan.nextLine();</span>
+<span class="nc" id="L118"> break;</span>
}
-<span class="nc" id="L107"> Song s = new Song(title, artist, length, content, genre);</span>
-<span class="nc" id="L108"> theHub.addElement(s);</span>
-<span class="nc" id="L109"> System.out.println(&quot;New element list: &quot;);</span>
-<span class="nc" id="L110"> Iterator&lt;AudioElement&gt; it = theHub.elements();</span>
-<span class="nc bnc" id="L111" title="All 2 branches missed."> while (it.hasNext()) System.out.println(it.next().getTitle());</span>
-<span class="nc" id="L112"> System.out.println(&quot;Song created!&quot;);</span>
-<span class="nc" id="L113"> printAvailableCommands();</span>
-<span class="nc" id="L114"> choice = scan.nextLine();</span>
-<span class="nc" id="L115"> break;</span>
+<span class="nc" id="L121"> Song s = new Song(title, artist, length, content, genre);</span>
+<span class="nc" id="L122"> theHub.addElement(s);</span>
+<span class="nc" id="L123"> System.out.println(&quot;New element list: &quot;);</span>
+<span class="nc" id="L124"> Iterator&lt;AudioElement&gt; it = theHub.elements();</span>
+<span class="nc bnc" id="L125" title="All 2 branches missed."> while (it.hasNext()) System.out.println(it.next().getTitle());</span>
+<span class="nc" id="L126"> LogHandler.write(&quot;Song successfully created&quot;, &quot;INFO&quot;);</span>
+<span class="nc" id="L127"> System.out.println(&quot;Song created!&quot;);</span>
+<span class="nc" id="L128"> printAvailableCommands();</span>
+<span class="nc" id="L129"> choice = scan.nextLine();</span>
+<span class="nc" id="L130"> break;</span>
case 'a':
// add a new album
-<span class="nc" id="L118"> System.out.println(&quot;Enter a new album: &quot;);</span>
-<span class="nc" id="L119"> System.out.println(&quot;Album title: &quot;);</span>
-<span class="nc" id="L120"> String aTitle = scan.nextLine();</span>
-<span class="nc" id="L121"> System.out.println(&quot;Album artist: &quot;);</span>
-<span class="nc" id="L122"> String aArtist = scan.nextLine();</span>
-<span class="nc" id="L123"> System.out.println(&quot;Album length in seconds: &quot;);</span>
-<span class="nc" id="L124"> int aLength = Integer.parseInt(scan.nextLine());</span>
-<span class="nc" id="L125"> System.out.println(&quot;Album date as YYYY-DD-MM: &quot;);</span>
-<span class="nc" id="L126"> String aDate = scan.nextLine();</span>
-<span class="nc" id="L127"> Album a = new Album(aTitle, aArtist, aLength, aDate);</span>
-<span class="nc" id="L128"> theHub.addAlbum(a);</span>
-<span class="nc" id="L129"> System.out.println(&quot;New list of albums: &quot;);</span>
-<span class="nc" id="L130"> Iterator&lt;Album&gt; ita = theHub.albums();</span>
-<span class="nc bnc" id="L131" title="All 2 branches missed."> while (ita.hasNext()) System.out.println(ita.next().getTitle());</span>
-<span class="nc" id="L132"> System.out.println(&quot;Album created!&quot;);</span>
-<span class="nc" id="L133"> printAvailableCommands();</span>
-<span class="nc" id="L134"> choice = scan.nextLine();</span>
-<span class="nc" id="L135"> break;</span>
+<span class="nc" id="L133"> System.out.println(&quot;Enter a new album: &quot;);</span>
+<span class="nc" id="L134"> System.out.println(&quot;Album title: &quot;);</span>
+<span class="nc" id="L135"> String aTitle = scan.nextLine();</span>
+<span class="nc" id="L136"> System.out.println(&quot;Album artist: &quot;);</span>
+<span class="nc" id="L137"> String aArtist = scan.nextLine();</span>
+<span class="nc" id="L138"> System.out.println(&quot;Album length in seconds: &quot;);</span>
+<span class="nc" id="L139"> int aLength = Integer.parseInt(scan.nextLine());</span>
+<span class="nc" id="L140"> System.out.println(&quot;Album date as YYYY-DD-MM: &quot;);</span>
+<span class="nc" id="L141"> String aDate = scan.nextLine();</span>
+<span class="nc" id="L142"> Album a = new Album(aTitle, aArtist, aLength, aDate);</span>
+<span class="nc" id="L143"> theHub.addAlbum(a);</span>
+<span class="nc" id="L144"> System.out.println(&quot;New list of albums: &quot;);</span>
+<span class="nc" id="L145"> Iterator&lt;Album&gt; ita = theHub.albums();</span>
+<span class="nc bnc" id="L146" title="All 2 branches missed."> while (ita.hasNext()) System.out.println(ita.next().getTitle());</span>
+<span class="nc" id="L147"> LogHandler.write(&quot;Album successfully created&quot;, &quot;INFO&quot;);</span>
+<span class="nc" id="L148"> System.out.println(&quot;Album created!&quot;);</span>
+<span class="nc" id="L149"> printAvailableCommands();</span>
+<span class="nc" id="L150"> choice = scan.nextLine();</span>
+<span class="nc" id="L151"> break;</span>
case '+':
//add a song to an album:
-<span class="nc" id="L138"> System.out.println(&quot;Add an existing song to an existing album&quot;);</span>
-<span class="nc" id="L139"> System.out.println(&quot;Type the name of the song you wish to add. Available songs: &quot;);</span>
-<span class="nc" id="L140"> Iterator&lt;AudioElement&gt; itae = theHub.elements();</span>
-<span class="nc bnc" id="L141" title="All 2 branches missed."> while (itae.hasNext()) {</span>
-<span class="nc" id="L142"> AudioElement ae = itae.next();</span>
-<span class="nc bnc" id="L143" title="All 2 branches missed."> if (ae instanceof Song) System.out.println(ae.getTitle());</span>
-<span class="nc" id="L144"> }</span>
-<span class="nc" id="L145"> String songTitle = scan.nextLine();</span>
+<span class="nc" id="L154"> System.out.println(&quot;Add an existing song to an existing album&quot;);</span>
+<span class="nc" id="L155"> System.out.println(&quot;Type the name of the song you wish to add. Available songs: &quot;);</span>
+<span class="nc" id="L156"> Iterator&lt;AudioElement&gt; itae = theHub.elements();</span>
+<span class="nc bnc" id="L157" title="All 2 branches missed."> while (itae.hasNext()) {</span>
+<span class="nc" id="L158"> AudioElement ae = itae.next();</span>
+<span class="nc bnc" id="L159" title="All 2 branches missed."> if (ae instanceof Song) System.out.println(ae.getTitle());</span>
+<span class="nc" id="L160"> }</span>
+<span class="nc" id="L161"> String songTitle = scan.nextLine();</span>
-<span class="nc" id="L147"> System.out.println(&quot;Type the name of the album you wish to enrich. Available albums: &quot;);</span>
-<span class="nc" id="L148"> Iterator&lt;Album&gt; ait = theHub.albums();</span>
-<span class="nc bnc" id="L149" title="All 2 branches missed."> while (ait.hasNext()) {</span>
-<span class="nc" id="L150"> Album al = ait.next();</span>
-<span class="nc" id="L151"> System.out.println(al.getTitle());</span>
-<span class="nc" id="L152"> }</span>
-<span class="nc" id="L153"> String titleAlbum = scan.nextLine();</span>
+<span class="nc" id="L163"> System.out.println(&quot;Type the name of the album you wish to enrich. Available albums: &quot;);</span>
+<span class="nc" id="L164"> Iterator&lt;Album&gt; ait = theHub.albums();</span>
+<span class="nc bnc" id="L165" title="All 2 branches missed."> while (ait.hasNext()) {</span>
+<span class="nc" id="L166"> Album al = ait.next();</span>
+<span class="nc" id="L167"> System.out.println(al.getTitle());</span>
+<span class="nc" id="L168"> }</span>
+<span class="nc" id="L169"> String titleAlbum = scan.nextLine();</span>
try {
-<span class="nc" id="L155"> theHub.addElementToAlbum(songTitle, titleAlbum);</span>
-<span class="nc" id="L156"> } catch (NoAlbumFoundException | NoElementFoundException ex) {</span>
-<span class="nc" id="L157"> System.out.println(ex.getMessage());</span>
-<span class="nc" id="L158"> }</span>
-<span class="nc" id="L159"> System.out.println(&quot;Song added to the album!&quot;);</span>
-<span class="nc" id="L160"> printAvailableCommands();</span>
-<span class="nc" id="L161"> choice = scan.nextLine();</span>
-<span class="nc" id="L162"> break;</span>
+<span class="nc" id="L171"> theHub.addElementToAlbum(songTitle, titleAlbum);</span>
+<span class="nc" id="L172"> } catch (NoAlbumFoundException | NoElementFoundException ex) {</span>
+<span class="nc" id="L173"> System.out.println(ex.getMessage());</span>
+<span class="nc" id="L174"> }</span>
+<span class="nc" id="L175"> LogHandler.write(&quot;Song successfully added to the album&quot;, &quot;INFO&quot;);</span>
+<span class="nc" id="L176"> System.out.println(&quot;Song added to the album!&quot;);</span>
+<span class="nc" id="L177"> printAvailableCommands();</span>
+<span class="nc" id="L178"> choice = scan.nextLine();</span>
+<span class="nc" id="L179"> break;</span>
case 'l':
// add a new audiobook
-<span class="nc" id="L165"> System.out.println(&quot;Enter a new audiobook: &quot;);</span>
-<span class="nc" id="L166"> System.out.println(&quot;AudioBook title: &quot;);</span>
-<span class="nc" id="L167"> String bTitle = scan.nextLine();</span>
-<span class="nc" id="L168"> System.out.println(&quot;AudioBook category (youth, novel, theater, documentary, speech)&quot;);</span>
-<span class="nc" id="L169"> String bCategory = scan.nextLine();</span>
-<span class="nc" id="L170"> System.out.println(&quot;AudioBook artist: &quot;);</span>
-<span class="nc" id="L171"> String bArtist = scan.nextLine();</span>
-<span class="nc" id="L172"> System.out.println(&quot;AudioBook length in seconds: &quot;);</span>
-<span class="nc" id="L173"> int bLength = Integer.parseInt(scan.nextLine());</span>
-<span class="nc" id="L174"> System.out.println(&quot;AudioBook content: &quot;);</span>
-<span class="nc" id="L175"> String bContent = scan.nextLine();</span>
-<span class="nc" id="L176"> System.out.println(&quot;AudioBook language (french, english, italian, spanish, german)&quot;);</span>
-<span class="nc" id="L177"> String bLanguage = scan.nextLine();</span>
-<span class="nc" id="L178"> AudioBook b = new AudioBook(bTitle, bArtist, bLength, bContent, bLanguage, bCategory);</span>
-<span class="nc" id="L179"> theHub.addElement(b);</span>
-<span class="nc" id="L180"> System.out.println(&quot;Audiobook created! New element list: &quot;);</span>
-<span class="nc" id="L181"> Iterator&lt;AudioElement&gt; itl = theHub.elements();</span>
-<span class="nc bnc" id="L182" title="All 2 branches missed."> while (itl.hasNext()) System.out.println(itl.next().getTitle());</span>
-<span class="nc" id="L183"> printAvailableCommands();</span>
-<span class="nc" id="L184"> choice = scan.nextLine();</span>
-<span class="nc" id="L185"> break;</span>
+<span class="nc" id="L182"> System.out.println(&quot;Enter a new audiobook: &quot;);</span>
+<span class="nc" id="L183"> System.out.println(&quot;AudioBook title: &quot;);</span>
+<span class="nc" id="L184"> String bTitle = scan.nextLine();</span>
+<span class="nc" id="L185"> System.out.println(&quot;AudioBook category (youth, novel, theater, documentary, speech)&quot;);</span>
+<span class="nc" id="L186"> String bCategory = scan.nextLine();</span>
+<span class="nc" id="L187"> System.out.println(&quot;AudioBook artist: &quot;);</span>
+<span class="nc" id="L188"> String bArtist = scan.nextLine();</span>
+<span class="nc" id="L189"> System.out.println(&quot;AudioBook length in seconds: &quot;);</span>
+<span class="nc" id="L190"> int bLength = Integer.parseInt(scan.nextLine());</span>
+<span class="nc" id="L191"> System.out.println(&quot;AudioBook content: &quot;);</span>
+<span class="nc" id="L192"> String bContent = scan.nextLine();</span>
+<span class="nc" id="L193"> System.out.println(&quot;AudioBook language (french, english, italian, spanish, german)&quot;);</span>
+<span class="nc" id="L194"> String bLanguage = scan.nextLine();</span>
+<span class="nc" id="L195"> AudioBook b = new AudioBook(bTitle, bArtist, bLength, bContent, bLanguage, bCategory);</span>
+<span class="nc" id="L196"> theHub.addElement(b);</span>
+<span class="nc" id="L197"> LogHandler.write(&quot;Audiobook successfully created&quot;, &quot;INFO&quot;);</span>
+<span class="nc" id="L198"> System.out.println(&quot;Audiobook created! New element list: &quot;);</span>
+<span class="nc" id="L199"> Iterator&lt;AudioElement&gt; itl = theHub.elements();</span>
+<span class="nc bnc" id="L200" title="All 2 branches missed."> while (itl.hasNext()) System.out.println(itl.next().getTitle());</span>
+<span class="nc" id="L201"> printAvailableCommands();</span>
+<span class="nc" id="L202"> choice = scan.nextLine();</span>
+<span class="nc" id="L203"> break;</span>
case 'p':
//create a new playlist from existing elements
-<span class="nc" id="L188"> System.out.println(&quot;Add an existing song or audiobook to a new playlist&quot;);</span>
-<span class="nc" id="L189"> System.out.println(&quot;Existing playlists:&quot;);</span>
-<span class="nc" id="L190"> Iterator&lt;PlayList&gt; itpl = theHub.playlists();</span>
-<span class="nc bnc" id="L191" title="All 2 branches missed."> while (itpl.hasNext()) {</span>
-<span class="nc" id="L192"> PlayList pl = itpl.next();</span>
-<span class="nc" id="L193"> System.out.println(pl.getTitle());</span>
-<span class="nc" id="L194"> }</span>
-<span class="nc" id="L195"> System.out.println(&quot;Type the name of the playlist you wish to create:&quot;);</span>
-<span class="nc" id="L196"> String playListTitle = scan.nextLine();</span>
-<span class="nc" id="L197"> PlayList pl = new PlayList(playListTitle);</span>
-<span class="nc" id="L198"> theHub.addPlaylist(pl);</span>
-<span class="nc" id="L199"> System.out.println(&quot;Available elements: &quot;);</span>
+<span class="nc" id="L206"> System.out.println(&quot;Add an existing song or audiobook to a new playlist&quot;);</span>
+<span class="nc" id="L207"> System.out.println(&quot;Existing playlists:&quot;);</span>
+<span class="nc" id="L208"> Iterator&lt;PlayList&gt; itpl = theHub.playlists();</span>
+<span class="nc bnc" id="L209" title="All 2 branches missed."> while (itpl.hasNext()) {</span>
+<span class="nc" id="L210"> PlayList pl = itpl.next();</span>
+<span class="nc" id="L211"> System.out.println(pl.getTitle());</span>
+<span class="nc" id="L212"> }</span>
+<span class="nc" id="L213"> System.out.println(&quot;Type the name of the playlist you wish to create:&quot;);</span>
+<span class="nc" id="L214"> String playListTitle = scan.nextLine();</span>
+<span class="nc" id="L215"> PlayList pl = new PlayList(playListTitle);</span>
+<span class="nc" id="L216"> theHub.addPlaylist(pl);</span>
+<span class="nc" id="L217"> System.out.println(&quot;Available elements: &quot;);</span>
-<span class="nc" id="L201"> Iterator&lt;AudioElement&gt; itael = theHub.elements();</span>
-<span class="nc bnc" id="L202" title="All 2 branches missed."> while (itael.hasNext()) {</span>
-<span class="nc" id="L203"> AudioElement ae = itael.next();</span>
-<span class="nc" id="L204"> System.out.println(ae.getTitle());</span>
-<span class="nc" id="L205"> }</span>
-<span class="nc bnc" id="L206" title="All 2 branches missed."> while (choice.charAt(0) != 'n') {</span>
-<span class="nc" id="L207"> System.out.println(&quot;Type the name of the audio element you wish to add or 'n' to exit:&quot;);</span>
-<span class="nc" id="L208"> String elementTitle = scan.nextLine();</span>
+<span class="nc" id="L219"> Iterator&lt;AudioElement&gt; itael = theHub.elements();</span>
+<span class="nc bnc" id="L220" title="All 2 branches missed."> while (itael.hasNext()) {</span>
+<span class="nc" id="L221"> AudioElement ae = itael.next();</span>
+<span class="nc" id="L222"> System.out.println(ae.getTitle());</span>
+<span class="nc" id="L223"> }</span>
+<span class="nc bnc" id="L224" title="All 2 branches missed."> while (choice.charAt(0) != 'n') {</span>
+<span class="nc" id="L225"> System.out.println(&quot;Type the name of the audio element you wish to add or 'n' to exit:&quot;);</span>
+<span class="nc" id="L226"> String elementTitle = scan.nextLine();</span>
try {
-<span class="nc" id="L210"> theHub.addElementToPlayList(elementTitle, playListTitle);</span>
-<span class="nc" id="L211"> } catch (NoPlayListFoundException | NoElementFoundException ex) {</span>
-<span class="nc" id="L212"> System.out.println(ex.getMessage());</span>
-<span class="nc" id="L213"> }</span>
+<span class="nc" id="L228"> theHub.addElementToPlayList(elementTitle, playListTitle);</span>
+<span class="nc" id="L229"> } catch (NoPlayListFoundException | NoElementFoundException ex) {</span>
+<span class="nc" id="L230"> System.out.println(ex.getMessage());</span>
+<span class="nc" id="L231"> }</span>
-<span class="nc" id="L215"> System.out.println(&quot;Type y to add a new one, n to end&quot;);</span>
-<span class="nc" id="L216"> choice = scan.nextLine();</span>
-<span class="nc" id="L217"> }</span>
-<span class="nc" id="L218"> System.out.println(&quot;Playlist created!&quot;);</span>
-<span class="nc" id="L219"> printAvailableCommands();</span>
-<span class="nc" id="L220"> choice = scan.nextLine();</span>
-<span class="nc" id="L221"> break;</span>
+<span class="nc" id="L233"> System.out.println(&quot;Type y to add a new one, n to end&quot;);</span>
+<span class="nc" id="L234"> choice = scan.nextLine();</span>
+<span class="nc" id="L235"> }</span>
+<span class="nc" id="L236"> LogHandler.write(&quot;Playlist successfully created&quot;, &quot;INFO&quot;);</span>
+<span class="nc" id="L237"> System.out.println(&quot;Playlist created!&quot;);</span>
+<span class="nc" id="L238"> printAvailableCommands();</span>
+<span class="nc" id="L239"> choice = scan.nextLine();</span>
+<span class="nc" id="L240"> break;</span>
case '-':
//delete a playlist
-<span class="nc" id="L224"> System.out.println(&quot;Delete an existing playlist. Available playlists:&quot;);</span>
-<span class="nc" id="L225"> Iterator&lt;PlayList&gt; itp = theHub.playlists();</span>
-<span class="nc bnc" id="L226" title="All 2 branches missed."> while (itp.hasNext()) {</span>
-<span class="nc" id="L227"> PlayList p = itp.next();</span>
-<span class="nc" id="L228"> System.out.println(p.getTitle());</span>
-<span class="nc" id="L229"> }</span>
-<span class="nc" id="L230"> String plTitle = scan.nextLine();</span>
+<span class="nc" id="L243"> System.out.println(&quot;Delete an existing playlist. Available playlists:&quot;);</span>
+<span class="nc" id="L244"> Iterator&lt;PlayList&gt; itp = theHub.playlists();</span>
+<span class="nc bnc" id="L245" title="All 2 branches missed."> while (itp.hasNext()) {</span>
+<span class="nc" id="L246"> PlayList p = itp.next();</span>
+<span class="nc" id="L247"> System.out.println(p.getTitle());</span>
+<span class="nc" id="L248"> }</span>
+<span class="nc" id="L249"> String plTitle = scan.nextLine();</span>
try {
-<span class="nc" id="L232"> theHub.deletePlayList(plTitle);</span>
-<span class="nc" id="L233"> } catch (NoPlayListFoundException ex) {</span>
-<span class="nc" id="L234"> System.out.println(ex.getMessage());</span>
-<span class="nc" id="L235"> }</span>
-<span class="nc" id="L236"> System.out.println(&quot;Playlist deleted!&quot;);</span>
-<span class="nc" id="L237"> printAvailableCommands();</span>
-<span class="nc" id="L238"> choice = scan.nextLine();</span>
-<span class="nc" id="L239"> break;</span>
+<span class="nc" id="L251"> theHub.deletePlayList(plTitle);</span>
+<span class="nc" id="L252"> } catch (NoPlayListFoundException ex) {</span>
+<span class="nc" id="L253"> System.out.println(ex.getMessage());</span>
+<span class="nc" id="L254"> }</span>
+<span class="nc" id="L255"> LogHandler.write(&quot;Playlist successfully deleted&quot;, &quot;INFO&quot;);</span>
+<span class="nc" id="L256"> System.out.println(&quot;Playlist deleted!&quot;);</span>
+<span class="nc" id="L257"> printAvailableCommands();</span>
+<span class="nc" id="L258"> choice = scan.nextLine();</span>
+<span class="nc" id="L259"> break;</span>
case 's':
//save elements, albums, playlists
-<span class="nc" id="L242"> theHub.saveElements();</span>
-<span class="nc" id="L243"> theHub.saveAlbums();</span>
-<span class="nc" id="L244"> theHub.savePlayLists();</span>
-<span class="nc" id="L245"> System.out.println(&quot;Elements, albums and playlists saved!&quot;);</span>
-<span class="nc" id="L246"> printAvailableCommands();</span>
-<span class="nc" id="L247"> choice = scan.nextLine();</span>
-<span class="nc" id="L248"> break;</span>
+<span class="nc" id="L262"> theHub.saveElements();</span>
+<span class="nc" id="L263"> theHub.saveAlbums();</span>
+<span class="nc" id="L264"> theHub.savePlayLists();</span>
+<span class="nc" id="L265"> LogHandler.write(&quot;Elements, albums and playlists successfully saved&quot;, &quot;INFO&quot;);</span>
+<span class="nc" id="L266"> System.out.println(&quot;Elements, albums and playlists saved!&quot;);</span>
+<span class="nc" id="L267"> printAvailableCommands();</span>
+<span class="nc" id="L268"> choice = scan.nextLine();</span>
+<span class="nc" id="L269"> break;</span>
case 'r':
//search a music
try {
-<span class="nc" id="L252"> theHub.searchAudioElement();</span>
+<span class="nc" id="L273"> theHub.searchAudioElement();</span>
}
-<span class="nc" id="L254"> catch (NoElementFoundException e){</span>
-<span class="nc" id="L255"> System.err.println(e.getMessage());</span>
+<span class="nc" id="L275"> catch (NoElementFoundException e){</span>
+<span class="nc" id="L276"> System.err.println(e.getMessage());</span>
}
-<span class="nc" id="L257"> catch (java.io.FileNotFoundException e){</span>
-<span class="nc" id="L258"> System.err.println(e.getMessage()+&quot; Please create a file with the extension .wav inside the song folder at root of the app&quot;);</span>
-<span class="nc" id="L259"> }</span>
-<span class="nc" id="L260"> printAvailableCommands();</span>
+<span class="nc" id="L278"> catch (java.io.FileNotFoundException e){</span>
+<span class="nc" id="L279"> LogHandler.write(&quot;Please create a file with the extension .wav inside the song folder at root of the app&quot;, &quot;ERROR&quot;);</span>
+<span class="nc" id="L280"> System.err.println(e.getMessage() + &quot; Please create a file with the extension .wav inside the song folder at root of the app&quot;);</span>
+<span class="nc" id="L281"> }</span>
+<span class="nc" id="L282"> printAvailableCommands();</span>
+<span class="nc" id="L283"> choice = scan.nextLine();</span>
+<span class="nc" id="L284"> break;</span>
case 'o':
//consult the app logs
-<span class="nc" id="L263"> LogHandler.read();</span>
-<span class="nc" id="L264"> System.out.println(&quot;Type h for available commands&quot;);</span>
-<span class="nc" id="L265"> choice = scan.nextLine();</span>
-<span class="nc" id="L266"> break;</span>
+<span class="nc" id="L287"> LogHandler.read();</span>
+<span class="nc" id="L288"> System.out.println(&quot;Type h for available commands&quot;);</span>
+<span class="nc" id="L289"> choice = scan.nextLine();</span>
+<span class="nc" id="L290"> break;</span>
+ case 'm':
+ //songs of a playlist
+<span class="nc" id="L293"> System.out.println(&quot;Songs of a playlist will be displayed; enter the playlist name, available playlists are:&quot;);</span>
+<span class="nc" id="L294"> System.out.println(theHub.getPlayListsTitles());</span>
+
+<span class="nc" id="L296"> playListTitle = scan.nextLine();</span>
+ try {
+<span class="nc" id="L298"> List&lt;AudioElement&gt; songs = theHub.getPlayListSongs(playListTitle);</span>
+<span class="nc" id="L299"> System.out.println(theHub.getPlayListSongs(playListTitle));</span>
+<span class="nc" id="L300"> String song = scan.nextLine();</span>
+<span class="nc" id="L301"> theHub.getAudioElement(songs, song);</span>
+<span class="nc" id="L302"> } catch (NoPlayListFoundException ex) {</span>
+<span class="nc" id="L303"> LogHandler.write(&quot;No playlist found with the requested title&quot;, &quot;WARNING&quot;);</span>
+<span class="nc" id="L304"> System.out.println(&quot;No playlist found with the requested title &quot; + ex.getMessage());</span>
+<span class="nc" id="L305"> }</span>
+<span class="nc" id="L306"> printAvailableCommands();</span>
+<span class="nc" id="L307"> choice = scan.nextLine();</span>
+<span class="nc" id="L308"> break;</span>
default:
-<span class="nc" id="L269"> break;</span>
+<span class="nc" id="L311"> break;</span>
}
}
-<span class="nc" id="L272"> scan.close();</span>
-<span class="nc" id="L273"> }</span>
+<span class="nc" id="L314"> scan.close();</span>
+<span class="nc" id="L315"> }</span>
private static void printAvailableCommands() {
-<span class="nc" id="L276"> System.out.println(&quot;t: display the album titles, ordered by date&quot;);</span>
-<span class="nc" id="L277"> System.out.println(&quot;g: display songs of an album, ordered by genre&quot;);</span>
-<span class="nc" id="L278"> System.out.println(&quot;d: display songs of an album&quot;);</span>
-<span class="nc" id="L279"> System.out.println(&quot;u: display audiobooks ordered by author&quot;);</span>
-<span class="nc" id="L280"> System.out.println(&quot;r: search audio elements&quot;);</span>
-<span class="nc" id="L281"> System.out.println(&quot;c: add a new song&quot;);</span>
-<span class="nc" id="L282"> System.out.println(&quot;a: add a new album&quot;);</span>
-<span class="nc" id="L283"> System.out.println(&quot;+: add a song to an album&quot;);</span>
-<span class="nc" id="L284"> System.out.println(&quot;l: add a new audiobook&quot;);</span>
-<span class="nc" id="L285"> System.out.println(&quot;p: create a new playlist from existing songs and audio books&quot;);</span>
-<span class="nc" id="L286"> System.out.println(&quot;-: delete an existing playlist&quot;);</span>
-<span class="nc" id="L287"> System.out.println(&quot;s: save elements, albums, playlists&quot;);</span>
-<span class="nc" id="L288"> System.out.println(&quot;o: consult the app logs&quot;);</span>
-<span class="nc" id="L289"> System.out.println(&quot;q: quit program&quot;);</span>
-<span class="nc" id="L290"> }</span>
+<span class="nc" id="L318"> System.out.println(&quot;t: display the album titles, ordered by date&quot;);</span>
+<span class="nc" id="L319"> System.out.println(&quot;g: display songs of an album, ordered by genre&quot;);</span>
+<span class="nc" id="L320"> System.out.println(&quot;d: display songs of an album&quot;);</span>
+<span class="nc" id="L321"> System.out.println(&quot;u: display audiobooks ordered by author&quot;);</span>
+<span class="nc" id="L322"> System.out.println(&quot;r: search audio elements&quot;);</span>
+<span class="nc" id="L323"> System.out.println(&quot;c: add a new song&quot;);</span>
+<span class="nc" id="L324"> System.out.println(&quot;a: add a new album&quot;);</span>
+<span class="nc" id="L325"> System.out.println(&quot;+: add a song to an album&quot;);</span>
+<span class="nc" id="L326"> System.out.println(&quot;l: add a new audiobook&quot;);</span>
+<span class="nc" id="L327"> System.out.println(&quot;p: create a new playlist from existing songs and audio books&quot;);</span>
+<span class="nc" id="L328"> System.out.println(&quot;m: display songs of a playlist&quot;);</span>
+<span class="nc" id="L329"> System.out.println(&quot;-: delete an existing playlist&quot;);</span>
+<span class="nc" id="L330"> System.out.println(&quot;s: save elements, albums, playlists&quot;);</span>
+<span class="nc" id="L331"> System.out.println(&quot;o: consult the app logs&quot;);</span>
+<span class="nc" id="L332"> System.out.println(&quot;q: quit program&quot;);</span>
+<span class="nc" id="L333"> }</span>
}
</pre><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
diff --git a/target/site/jacoco/musichub.main/index.html b/target/site/jacoco/musichub.main/index.html
index cd2b4c7..9101830 100644
--- a/target/site/jacoco/musichub.main/index.html
+++ b/target/site/jacoco/musichub.main/index.html
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>musichub.main</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.source.html" class="el_source">Source Files</a><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <span class="el_package">musichub.main</span></div><h1>musichub.main</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">625 of 625</td><td class="ctr2">0 %</td><td class="bar">42 of 42</td><td class="ctr2">0 %</td><td class="ctr1">31</td><td class="ctr2">31</td><td class="ctr1">215</td><td class="ctr2">215</td><td class="ctr1">3</td><td class="ctr2">3</td><td class="ctr1">1</td><td class="ctr2">1</td></tr></tfoot><tbody><tr><td id="a0"><a href="Main.html" class="el_class">Main</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="625" alt="625"/></td><td class="ctr2" id="c0">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="42" alt="42"/></td><td class="ctr2" id="e0">0 %</td><td class="ctr1" id="f0">31</td><td class="ctr2" id="g0">31</td><td class="ctr1" id="h0">215</td><td class="ctr2" id="i0">215</td><td class="ctr1" id="j0">3</td><td class="ctr2" id="k0">3</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m0">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>musichub.main</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.source.html" class="el_source">Source Files</a><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <span class="el_package">musichub.main</span></div><h1>musichub.main</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">722 of 722</td><td class="ctr2">0 %</td><td class="bar">43 of 43</td><td class="ctr2">0 %</td><td class="ctr1">32</td><td class="ctr2">32</td><td class="ctr1">251</td><td class="ctr2">251</td><td class="ctr1">3</td><td class="ctr2">3</td><td class="ctr1">1</td><td class="ctr2">1</td></tr></tfoot><tbody><tr><td id="a0"><a href="Main.html" class="el_class">Main</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="722" alt="722"/></td><td class="ctr2" id="c0">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="43" alt="43"/></td><td class="ctr2" id="e0">0 %</td><td class="ctr1" id="f0">32</td><td class="ctr2" id="g0">32</td><td class="ctr1" id="h0">251</td><td class="ctr2" id="i0">251</td><td class="ctr1" id="j0">3</td><td class="ctr2" id="k0">3</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m0">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
diff --git a/target/site/jacoco/musichub.main/index.source.html b/target/site/jacoco/musichub.main/index.source.html
index 60b6575..a2635d9 100644
--- a/target/site/jacoco/musichub.main/index.source.html
+++ b/target/site/jacoco/musichub.main/index.source.html
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>musichub.main</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.html" class="el_class">Classes</a><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <span class="el_package">musichub.main</span></div><h1>musichub.main</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">625 of 625</td><td class="ctr2">0 %</td><td class="bar">42 of 42</td><td class="ctr2">0 %</td><td class="ctr1">31</td><td class="ctr2">31</td><td class="ctr1">215</td><td class="ctr2">215</td><td class="ctr1">3</td><td class="ctr2">3</td><td class="ctr1">1</td><td class="ctr2">1</td></tr></tfoot><tbody><tr><td id="a0"><a href="Main.java.html" class="el_source">Main.java</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="625" alt="625"/></td><td class="ctr2" id="c0">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="42" alt="42"/></td><td class="ctr2" id="e0">0 %</td><td class="ctr1" id="f0">31</td><td class="ctr2" id="g0">31</td><td class="ctr1" id="h0">215</td><td class="ctr2" id="i0">215</td><td class="ctr1" id="j0">3</td><td class="ctr2" id="k0">3</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m0">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>musichub.main</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.html" class="el_class">Classes</a><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <span class="el_package">musichub.main</span></div><h1>musichub.main</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">722 of 722</td><td class="ctr2">0 %</td><td class="bar">43 of 43</td><td class="ctr2">0 %</td><td class="ctr1">32</td><td class="ctr2">32</td><td class="ctr1">251</td><td class="ctr2">251</td><td class="ctr1">3</td><td class="ctr2">3</td><td class="ctr1">1</td><td class="ctr2">1</td></tr></tfoot><tbody><tr><td id="a0"><a href="Main.java.html" class="el_source">Main.java</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="722" alt="722"/></td><td class="ctr2" id="c0">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="43" alt="43"/></td><td class="ctr2" id="e0">0 %</td><td class="ctr1" id="f0">32</td><td class="ctr2" id="g0">32</td><td class="ctr1" id="h0">251</td><td class="ctr2" id="i0">251</td><td class="ctr1" id="j0">3</td><td class="ctr2" id="k0">3</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m0">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
diff --git a/target/site/jacoco/musichub.util/Policy.html b/target/site/jacoco/musichub.util/Policy.html
index 11ce779..e87278e 100644
--- a/target/site/jacoco/musichub.util/Policy.html
+++ b/target/site/jacoco/musichub.util/Policy.html
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>Policy</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <a href="index.html" class="el_package">musichub.util</a> &gt; <span class="el_class">Policy</span></div><h1>Policy</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">53 of 53</td><td class="ctr2">0 %</td><td class="bar">5 of 5</td><td class="ctr2">0 %</td><td class="ctr1">6</td><td class="ctr2">6</td><td class="ctr1">20</td><td class="ctr2">20</td><td class="ctr1">3</td><td class="ctr2">3</td></tr></tfoot><tbody><tr><td id="a2"><a href="Policy.java.html#L27" class="el_method">showTerm()</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="39" alt="39"/></td><td class="ctr2" id="c0">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="5" alt="5"/></td><td class="ctr2" id="e0">0 %</td><td class="ctr1" id="f0">4</td><td class="ctr2" id="g0">4</td><td class="ctr1" id="h0">15</td><td class="ctr2" id="i0">15</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a0"><a href="Policy.java.html#L21" class="el_method">Policy()</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="21" height="10" title="7" alt="7"/></td><td class="ctr2" id="c1">0 %</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h2">2</td><td class="ctr2" id="i2">2</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a1"><a href="Policy.java.html#L128" class="el_method">printAgreement()</a></td><td class="bar" id="b2"><img src="../jacoco-resources/redbar.gif" width="21" height="10" title="7" alt="7"/></td><td class="ctr2" id="c2">0 %</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h1">3</td><td class="ctr2" id="i1">3</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>Policy</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <a href="index.html" class="el_package">musichub.util</a> &gt; <span class="el_class">Policy</span></div><h1>Policy</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">60 of 60</td><td class="ctr2">0 %</td><td class="bar">5 of 5</td><td class="ctr2">0 %</td><td class="ctr1">6</td><td class="ctr2">6</td><td class="ctr1">24</td><td class="ctr2">24</td><td class="ctr1">3</td><td class="ctr2">3</td></tr></tfoot><tbody><tr><td id="a2"><a href="Policy.java.html#L33" class="el_method">showTerm()</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="46" alt="46"/></td><td class="ctr2" id="c0">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="5" alt="5"/></td><td class="ctr2" id="e0">0 %</td><td class="ctr1" id="f0">4</td><td class="ctr2" id="g0">4</td><td class="ctr1" id="h0">19</td><td class="ctr2" id="i0">19</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a0"><a href="Policy.java.html#L22" class="el_method">Policy()</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="18" height="10" title="7" alt="7"/></td><td class="ctr2" id="c1">0 %</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f1">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h2">2</td><td class="ctr2" id="i2">2</td><td class="ctr1" id="j1">1</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a1"><a href="Policy.java.html#L73" class="el_method">printAgreement()</a></td><td class="bar" id="b2"><img src="../jacoco-resources/redbar.gif" width="18" height="10" title="7" alt="7"/></td><td class="ctr2" id="c2">0 %</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">1</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h1">3</td><td class="ctr2" id="i1">3</td><td class="ctr1" id="j2">1</td><td class="ctr2" id="k2">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
diff --git a/target/site/jacoco/musichub.util/Policy.java.html b/target/site/jacoco/musichub.util/Policy.java.html
index 2eeb294..9739279 100644
--- a/target/site/jacoco/musichub.util/Policy.java.html
+++ b/target/site/jacoco/musichub.util/Policy.java.html
@@ -1,9 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>Policy.java</title><link rel="stylesheet" href="../jacoco-resources/prettify.css" type="text/css"/><script type="text/javascript" src="../jacoco-resources/prettify.js"></script></head><body onload="window['PR_TAB_WIDTH']=4;prettyPrint()"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <a href="index.source.html" class="el_package">musichub.util</a> &gt; <span class="el_source">Policy.java</span></div><h1>Policy.java</h1><pre class="source lang-java linenums">package musichub.util;
+import java.io.IOException;
import java.util.Scanner;
/**
- * Class ...
+ * Class offering methods to prompt a policy agreement form to the user.
*
* @author Anthony BOULANT
* @version 1.0
@@ -18,115 +19,59 @@ public final class Policy {
* @author Anthony BOULANT
*/
-<span class="nc" id="L21"> public Policy() {</span>
-<span class="nc" id="L22"> throw new AssertionError(&quot;You just can't instantiate this class.&quot;);</span>
+<span class="nc" id="L22"> public Policy() {</span>
+<span class="nc" id="L23"> throw new AssertionError(&quot;You just can't instantiate this class.&quot;);</span>
}
+ /**
+ * Method prompting the whole policy agreement process
+ *
+ * @author Anthony BOULANT
+ */
public static void showTerm() {
-<span class="nc" id="L27"> String termsAndConditions = &quot;Terms and Conditions\n&quot; +</span>
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;In using this website you are deemed to have read and agreed to the following terms and conditions:\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;The following terminology applies to these Terms and Conditions, Privacy Statement and Disclaimer Notice and any or all Agreements: \&quot;Client\&quot;, “You” and “Your” refers to you, the person accessing this website and accepting the Company’s terms and conditions. \&quot;The Company\&quot;, “Ourselves”, “We” and \&quot;Us\&quot;, refers to our Company. “Party”, “Parties”, or “Us”, refers to both the Client and ourselves, or either the Client or ourselves. All terms refer to the offer, acceptance and consideration of payment necessary to undertake the process of our assistance to the Client in the most appropriate manner, whether by formal meetings of a fixed duration, or any other means, for the express purpose of meeting the Client’s needs in respect of provision of the Company’s stated services/products, in accordance with and subject to, prevailing English Law. Any use of the above terminology or other words in the singular, plural, capitalisation and/or he/she or they, are taken as interchangeable and therefore as referring to same.\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;Privacy Statement\n&quot; +
- &quot;We are committed to protecting your privacy. Authorized employees within the company on a need to know basis only use any information collected from individual customers. We constantly review our systems and data to ensure the best possible service to our customers. Parliament has created specific offences for unauthorised actions against computer systems and data. We will investigate any such actions with a view to prosecuting and/or taking civil proceedings to recover damages against those responsible\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;Confidentiality\n&quot; +
- &quot;We are registered under the Data Protection Act 1998 and as such, any information concerning the Client and their respective Client Records may be passed to third parties. However, Client records are regarded as confidential and therefore will not be divulged to any third party, other than if legally required to do so to the appropriate authorities. Clients have the right to request sight of, and copies of any and all Client Records we keep, on the proviso that we are given reasonable notice of such a request. Clients are requested to retain copies of any literature issued in relation to the provision of our services. Where appropriate, we shall issue Client’s with appropriate written information, handouts or copies of records as part of an agreed contract, for the benefit of both parties.\n&quot; +
- &quot;\n&quot; +
- &quot;We will not sell, share, or rent your personal information to any third party or use your e-mail address for unsolicited mail. Any emails sent by this Company will only be in connection with the provision of agreed services and products.\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;Disclaimer\n&quot; +
- &quot;Exclusions and Limitations \n&quot; +
- &quot;The information on this web site is provided on an \&quot;as is\&quot; basis. To the fullest extent permitted by law, this Company:\n&quot; +
- &quot;\uF0A7\texcludes all representations and warranties relating to this website and its contents or which is or may be provided by any affiliates or any other third party, including in relation to any inaccuracies or omissions in this website and/or the Company’s literature; and \n&quot; +
- &quot;\uF0A7\texcludes all liability for damages arising out of or in connection with your use of this website. This includes, without limitation, direct loss, loss of business or profits (whether or not the loss of such profits was foreseeable, arose in the normal course of things or you have advised this Company of the possibility of such potential loss), damage caused to your computer, computer software, systems and programs and the data thereon or any other direct or indirect, consequential and incidental damages. \n&quot; +
- &quot;This Company does not however exclude liability for death or personal injury caused by its negligence. The above exclusions and limitations apply only to the extent permitted by law. None of your statutory rights as a consumer are affected. \n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;Cancellation Policy\n&quot; +
- &quot;Minimum 24 hours’ notice of cancellation required. Notification for instance, in person, via email, mobile phone ‘text message’ and/or fax, or any other means will be accepted subject to confirmation in writing. We reserve the right to levy a £30 charge to cover any subsequent administrative expenses.\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;Termination of Agreements and Refunds Policy\n&quot; +
- &quot;Both the Client and we have the right to terminate any Services Agreement for any reason, including the ending of services that are already underway. No refunds shall be offered, where a Service is deemed to have begun and is, for all intents and purposes, underway. Any monies that have been paid to us which constitute payment in respect of the provision of unused Services, shall be refunded.\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;Availability \n&quot; +
- &quot;Unless otherwise stated, the services featured on this website are only available in France, or in relation to postings from France. All advertising is intended solely for the France market. You are solely responsible for evaluating the fitness for a particular purpose of any downloads, programs and text available through this site. Redistribution or republication of any part of this site or its content is prohibited, including such by framing or other similar or any other means, without the express written consent of the Company. The Company does not warrant that the service from this site will be uninterrupted, timely or error free, although it is provided to the best ability. By using this service you thereby indemnify this Company, its employees, agents and affiliates against any loss or damage, in whatever manner, howsoever caused.\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;Copyright Notice \n&quot; +
- &quot;Copyright and other relevant intellectual property rights exists on all text relating to the Company’s services and the full content of this application. \n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;Communication\n&quot; +
- &quot;We have several different e-mail addresses for different queries. These, &amp; other contact information, can be found on our Contact Us link on our website or via Company literature or via the Company’s stated telephone, facsimile or mobile telephone numbers.\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;Force Majeure\n&quot; +
- &quot;Neither party shall be liable to the other for any failure to perform any obligation under any Agreement which is due to an event beyond the control of such party including but not limited to any Act of God, terrorism, war, Political insurgence, insurrection, riot, civil unrest, act of civil or military authority, uprising, earthquake, flood or any other natural or manmade eventuality outside of our control, which causes the termination of an agreement or contract entered into, nor which could have been reasonably foreseen. Any Party affected by such event shall forthwith inform the other Party of the same and shall use all reasonable endeavours to comply with the terms and conditions of any Agreement contained herein.\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;Waiver\n&quot; +
- &quot;Failure of either Party to insist upon strict performance of any provision of this or any Agreement or the failure of either Party to exercise any right or remedy to which it, he or they are entitled hereunder shall not constitute a waiver thereof and shall not cause a diminution of the obligations under this or any Agreement. No waiver of any of the provisions of this or any Agreement shall be effective unless it is expressly stated to be such and signed by both Parties.\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;General\n&quot; +
- &quot;The laws of France govern these terms and conditions. By accessing this application, you consent to these terms and conditions and to the exclusive jurisdiction of the English courts in all disputes arising out of such access. If any of these terms are deemed invalid or unenforceable for any reason (including, but not limited to the exclusions and limitations set out above), then the invalid or unenforceable provision will be severed from these terms and the remaining terms will continue to apply. Failure of the Company to enforce any of the provisions set out in these Terms and Conditions and any Agreement, or failure to exercise any option to terminate, shall not be construed as waiver of such provisions and shall not affect the validity of these Terms and Conditions or of any Agreement or any part thereof, or the right thereafter to enforce each and every provision. These Terms and Conditions shall not be amended, modified, varied or supplemented except in writing and signed by duly authorised representatives of the Company.\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;Notification of Changes\n&quot; +
- &quot;The Company reserves the right to change these conditions from time to time as it sees fit and your continued use of the site will signify your acceptance of any adjustment to these terms. If there are any changes to our privacy policy, we will announce that these changes have been made on our home page and on other key pages on our site. If there are any changes in how we use our site customers’ Personally Identifiable Information, notification by e-mail or postal mail will be made to those affected by this change. Any changes to our privacy policy will be posted on our web site 30 days prior to these changes taking place. You are therefore advised to re-read this statement on a regular basis\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;These terms and conditions form part of the Agreement between the Client and ourselves. Your accessing of this website and/or undertaking of a booking or Agreement indicates your understanding, agreement to and acceptance, of the Disclaimer Notice and the full Terms and Conditions contained herein. Your statutory Consumer Rights are unaffected. \n&quot; +
- &quot;© Company Name 2021 All Rights Reserved\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot; +
- &quot;\n&quot;;
+<span class="nc" id="L33"> String termsAndConditions = &quot;&quot;&quot;</span>
+ Terms and Conditions
+ In using this website you are deemed to have read and agreed to the following terms and conditions:
+ Privacy Statement
+ We are committed to protecting your privacy. Authorized employees within the company on a need to know basis only use any information collected from individual customers. We constantly review our systems and data to ensure the best possible service to our customers. Parliament has created specific offences for unauthorised actions against computer systems and data. We will investigate any such actions with a view to prosecuting and/or taking civil proceedings to recover damages against those responsible
+ These terms and conditions form part of the Agreement between the Client and ourselves. Your accessing of this website and/or undertaking of a booking or Agreement indicates your understanding, agreement to and acceptance, of the Disclaimer Notice and the full Terms and Conditions contained herein. Your statutory Consumer Rights are unaffected. s
+ © Company Name 2021 All Rights Reserved
+ &quot;&quot;&quot;;
-<span class="nc" id="L107"> printAgreement();</span>
-<span class="nc" id="L108"> Scanner scan = new Scanner(System.in);</span>
-<span class="nc" id="L109"> String choice = scan.nextLine().toLowerCase();</span>
+<span class="nc" id="L42"> printAgreement();</span>
+<span class="nc" id="L43"> Scanner scan = new Scanner(System.in);</span>
+<span class="nc" id="L44"> String choice = scan.nextLine().toLowerCase();</span>
-<span class="nc bnc" id="L111" title="All 2 branches missed."> while (!choice.equals(&quot;y&quot;)) {</span>
-<span class="nc bnc" id="L112" title="All 3 branches missed."> switch (choice.charAt(0)) {</span>
-<span class="nc" id="L113"> case 'n' -&gt; System.exit(0);</span>
-<span class="nc" id="L114"> case 'r' -&gt; {</span>
-<span class="nc" id="L115"> System.out.println(termsAndConditions);</span>
-<span class="nc" id="L116"> printAgreement();</span>
-<span class="nc" id="L117"> choice = scan.nextLine().toLowerCase();</span>
+<span class="nc bnc" id="L46" title="All 2 branches missed."> while (!choice.equals(&quot;y&quot;)) {</span>
+<span class="nc bnc" id="L47" title="All 3 branches missed."> switch (choice.charAt(0)) {</span>
+<span class="nc" id="L48"> case 'n' -&gt; System.exit(0);</span>
+<span class="nc" id="L49"> case 'r' -&gt; {</span>
+<span class="nc" id="L50"> System.out.println(termsAndConditions);</span>
+<span class="nc" id="L51"> printAgreement();</span>
+<span class="nc" id="L52"> choice = scan.nextLine().toLowerCase();</span>
}
-<span class="nc" id="L119"> default -&gt; {</span>
-<span class="nc" id="L120"> printAgreement();</span>
-<span class="nc" id="L121"> choice = scan.nextLine().toLowerCase();</span>
+<span class="nc" id="L54"> default -&gt; {</span>
+<span class="nc" id="L55"> printAgreement();</span>
+<span class="nc" id="L56"> choice = scan.nextLine().toLowerCase();</span>
}
}
}
-<span class="nc" id="L125"> }</span>
+ try {
+<span class="nc" id="L61"> LogHandler.write(&quot;Terms accepted by the user.&quot;, &quot;INFO&quot;);</span>
+<span class="nc" id="L62"> } catch (IOException e) {</span>
+<span class="nc" id="L63"> e.printStackTrace();</span>
+<span class="nc" id="L64"> }</span>
+<span class="nc" id="L65"> }</span>
+ /**
+ * Method printing the commands the user can use.
+ *
+ * @author Anthony BOULANT
+ */
private static void printAgreement() {
-<span class="nc" id="L128"> System.out.println(&quot;By using our app, do you accept our Terms and Conditions ?&quot;);</span>
-<span class="nc" id="L129"> System.out.println(&quot;[YES : y NO : n READ : r]&quot;);</span>
-<span class="nc" id="L130"> }</span>
+<span class="nc" id="L73"> System.out.println(&quot;By using our app, do you accept our Terms and Conditions ?&quot;);</span>
+<span class="nc" id="L74"> System.out.println(&quot;[YES : y NO : n READ : r]&quot;);</span>
+<span class="nc" id="L75"> }</span>
}
</pre><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
diff --git a/target/site/jacoco/musichub.util/index.html b/target/site/jacoco/musichub.util/index.html
index 936c84a..59a15e9 100644
--- a/target/site/jacoco/musichub.util/index.html
+++ b/target/site/jacoco/musichub.util/index.html
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>musichub.util</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.source.html" class="el_source">Source Files</a><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <span class="el_package">musichub.util</span></div><h1>musichub.util</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">59 of 210</td><td class="ctr2">71 %</td><td class="bar">5 of 9</td><td class="ctr2">44 %</td><td class="ctr1">6</td><td class="ctr2">17</td><td class="ctr1">24</td><td class="ctr2">66</td><td class="ctr1">3</td><td class="ctr2">12</td><td class="ctr1">1</td><td class="ctr2">4</td></tr></tfoot><tbody><tr><td id="a2"><a href="Policy.html" class="el_class">Policy</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="88" height="10" title="53" alt="53"/></td><td class="ctr2" id="c3">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="5" alt="5"/></td><td class="ctr2" id="e1">0 %</td><td class="ctr1" id="f0">6</td><td class="ctr2" id="g0">6</td><td class="ctr1" id="h0">20</td><td class="ctr2" id="i1">20</td><td class="ctr1" id="j0">3</td><td class="ctr2" id="k1">3</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m0">1</td></tr><tr><td id="a3"><a href="XMLHandler.html" class="el_class">XMLHandler</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="10" height="10" title="6" alt="6"/><img src="../jacoco-resources/greenbar.gif" width="110" height="10" title="66" alt="66"/></td><td class="ctr2" id="c2">91 %</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g1">4</td><td class="ctr1" id="h1">4</td><td class="ctr2" id="i0">25</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k0">4</td><td class="ctr1" id="l1">0</td><td class="ctr2" id="m1">1</td></tr><tr><td id="a0"><a href="LogHandler.html" class="el_class">LogHandler</a></td><td class="bar" id="b2"><img src="../jacoco-resources/greenbar.gif" width="76" height="10" title="46" alt="46"/></td><td class="ctr2" id="c0">100 %</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g3">3</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i2">11</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">3</td><td class="ctr1" id="l2">0</td><td class="ctr2" id="m2">1</td></tr><tr><td id="a1"><a href="PathValidation.html" class="el_class">PathValidation</a></td><td class="bar" id="b3"><img src="../jacoco-resources/greenbar.gif" width="65" height="10" title="39" alt="39"/></td><td class="ctr2" id="c1">100 %</td><td class="bar" id="d1"><img src="../jacoco-resources/greenbar.gif" width="96" height="10" title="4" alt="4"/></td><td class="ctr2" id="e0">100 %</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g2">4</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">10</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">2</td><td class="ctr1" id="l3">0</td><td class="ctr2" id="m3">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>musichub.util</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.source.html" class="el_source">Source Files</a><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <span class="el_package">musichub.util</span></div><h1>musichub.util</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">66 of 217</td><td class="ctr2">69 %</td><td class="bar">5 of 9</td><td class="ctr2">44 %</td><td class="ctr1">6</td><td class="ctr2">17</td><td class="ctr1">28</td><td class="ctr2">70</td><td class="ctr1">3</td><td class="ctr2">12</td><td class="ctr1">1</td><td class="ctr2">4</td></tr></tfoot><tbody><tr><td id="a2"><a href="Policy.html" class="el_class">Policy</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="100" height="10" title="60" alt="60"/></td><td class="ctr2" id="c3">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="5" alt="5"/></td><td class="ctr2" id="e1">0 %</td><td class="ctr1" id="f0">6</td><td class="ctr2" id="g0">6</td><td class="ctr1" id="h0">24</td><td class="ctr2" id="i1">24</td><td class="ctr1" id="j0">3</td><td class="ctr2" id="k1">3</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m0">1</td></tr><tr><td id="a3"><a href="XMLHandler.html" class="el_class">XMLHandler</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="10" height="10" title="6" alt="6"/><img src="../jacoco-resources/greenbar.gif" width="110" height="10" title="66" alt="66"/></td><td class="ctr2" id="c2">91 %</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g1">4</td><td class="ctr1" id="h1">4</td><td class="ctr2" id="i0">25</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k0">4</td><td class="ctr1" id="l1">0</td><td class="ctr2" id="m1">1</td></tr><tr><td id="a0"><a href="LogHandler.html" class="el_class">LogHandler</a></td><td class="bar" id="b2"><img src="../jacoco-resources/greenbar.gif" width="76" height="10" title="46" alt="46"/></td><td class="ctr2" id="c0">100 %</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g3">3</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i2">11</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">3</td><td class="ctr1" id="l2">0</td><td class="ctr2" id="m2">1</td></tr><tr><td id="a1"><a href="PathValidation.html" class="el_class">PathValidation</a></td><td class="bar" id="b3"><img src="../jacoco-resources/greenbar.gif" width="65" height="10" title="39" alt="39"/></td><td class="ctr2" id="c1">100 %</td><td class="bar" id="d1"><img src="../jacoco-resources/greenbar.gif" width="96" height="10" title="4" alt="4"/></td><td class="ctr2" id="e0">100 %</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g2">4</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">10</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">2</td><td class="ctr1" id="l3">0</td><td class="ctr2" id="m3">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
diff --git a/target/site/jacoco/musichub.util/index.source.html b/target/site/jacoco/musichub.util/index.source.html
index b7009ee..f534830 100644
--- a/target/site/jacoco/musichub.util/index.source.html
+++ b/target/site/jacoco/musichub.util/index.source.html
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>musichub.util</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.html" class="el_class">Classes</a><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <span class="el_package">musichub.util</span></div><h1>musichub.util</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">59 of 210</td><td class="ctr2">71 %</td><td class="bar">5 of 9</td><td class="ctr2">44 %</td><td class="ctr1">6</td><td class="ctr2">17</td><td class="ctr1">24</td><td class="ctr2">66</td><td class="ctr1">3</td><td class="ctr2">12</td><td class="ctr1">1</td><td class="ctr2">4</td></tr></tfoot><tbody><tr><td id="a2"><a href="Policy.java.html" class="el_source">Policy.java</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="88" height="10" title="53" alt="53"/></td><td class="ctr2" id="c3">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="5" alt="5"/></td><td class="ctr2" id="e1">0 %</td><td class="ctr1" id="f0">6</td><td class="ctr2" id="g0">6</td><td class="ctr1" id="h0">20</td><td class="ctr2" id="i1">20</td><td class="ctr1" id="j0">3</td><td class="ctr2" id="k1">3</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m0">1</td></tr><tr><td id="a3"><a href="XMLHandler.java.html" class="el_source">XMLHandler.java</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="10" height="10" title="6" alt="6"/><img src="../jacoco-resources/greenbar.gif" width="110" height="10" title="66" alt="66"/></td><td class="ctr2" id="c2">91 %</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g1">4</td><td class="ctr1" id="h1">4</td><td class="ctr2" id="i0">25</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k0">4</td><td class="ctr1" id="l1">0</td><td class="ctr2" id="m1">1</td></tr><tr><td id="a0"><a href="LogHandler.java.html" class="el_source">LogHandler.java</a></td><td class="bar" id="b2"><img src="../jacoco-resources/greenbar.gif" width="76" height="10" title="46" alt="46"/></td><td class="ctr2" id="c0">100 %</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g3">3</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i2">11</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">3</td><td class="ctr1" id="l2">0</td><td class="ctr2" id="m2">1</td></tr><tr><td id="a1"><a href="PathValidation.java.html" class="el_source">PathValidation.java</a></td><td class="bar" id="b3"><img src="../jacoco-resources/greenbar.gif" width="65" height="10" title="39" alt="39"/></td><td class="ctr2" id="c1">100 %</td><td class="bar" id="d1"><img src="../jacoco-resources/greenbar.gif" width="96" height="10" title="4" alt="4"/></td><td class="ctr2" id="e0">100 %</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g2">4</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">10</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">2</td><td class="ctr1" id="l3">0</td><td class="ctr2" id="m3">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="fr"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>musichub.util</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="index.html" class="el_class">Classes</a><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">spoteezer</a> &gt; <span class="el_package">musichub.util</span></div><h1>musichub.util</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">66 of 217</td><td class="ctr2">69 %</td><td class="bar">5 of 9</td><td class="ctr2">44 %</td><td class="ctr1">6</td><td class="ctr2">17</td><td class="ctr1">28</td><td class="ctr2">70</td><td class="ctr1">3</td><td class="ctr2">12</td><td class="ctr1">1</td><td class="ctr2">4</td></tr></tfoot><tbody><tr><td id="a2"><a href="Policy.java.html" class="el_source">Policy.java</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="100" height="10" title="60" alt="60"/></td><td class="ctr2" id="c3">0 %</td><td class="bar" id="d0"><img src="../jacoco-resources/redbar.gif" width="120" height="10" title="5" alt="5"/></td><td class="ctr2" id="e1">0 %</td><td class="ctr1" id="f0">6</td><td class="ctr2" id="g0">6</td><td class="ctr1" id="h0">24</td><td class="ctr2" id="i1">24</td><td class="ctr1" id="j0">3</td><td class="ctr2" id="k1">3</td><td class="ctr1" id="l0">1</td><td class="ctr2" id="m0">1</td></tr><tr><td id="a3"><a href="XMLHandler.java.html" class="el_source">XMLHandler.java</a></td><td class="bar" id="b1"><img src="../jacoco-resources/redbar.gif" width="10" height="10" title="6" alt="6"/><img src="../jacoco-resources/greenbar.gif" width="110" height="10" title="66" alt="66"/></td><td class="ctr2" id="c2">91 %</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g1">4</td><td class="ctr1" id="h1">4</td><td class="ctr2" id="i0">25</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k0">4</td><td class="ctr1" id="l1">0</td><td class="ctr2" id="m1">1</td></tr><tr><td id="a0"><a href="LogHandler.java.html" class="el_source">LogHandler.java</a></td><td class="bar" id="b2"><img src="../jacoco-resources/greenbar.gif" width="76" height="10" title="46" alt="46"/></td><td class="ctr2" id="c0">100 %</td><td class="bar" id="d3"/><td class="ctr2" id="e3">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g3">3</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i2">11</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">3</td><td class="ctr1" id="l2">0</td><td class="ctr2" id="m2">1</td></tr><tr><td id="a1"><a href="PathValidation.java.html" class="el_source">PathValidation.java</a></td><td class="bar" id="b3"><img src="../jacoco-resources/greenbar.gif" width="65" height="10" title="39" alt="39"/></td><td class="ctr2" id="c1">100 %</td><td class="bar" id="d1"><img src="../jacoco-resources/greenbar.gif" width="96" height="10" title="4" alt="4"/></td><td class="ctr2" id="e0">100 %</td><td class="ctr1" id="f3">0</td><td class="ctr2" id="g2">4</td><td class="ctr1" id="h3">0</td><td class="ctr2" id="i3">10</td><td class="ctr1" id="j3">0</td><td class="ctr2" id="k3">2</td><td class="ctr1" id="l3">0</td><td class="ctr2" id="m3">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.7.202105040129</span></div></body></html> \ No newline at end of file
diff --git a/target/spoteezer-0.1.0-shaded.jar b/target/spoteezer-0.1.0-shaded.jar
index 4c8e6af..424434b 100644
--- a/target/spoteezer-0.1.0-shaded.jar
+++ b/target/spoteezer-0.1.0-shaded.jar
Binary files differ
diff --git a/target/spoteezer-0.1.0.jar b/target/spoteezer-0.1.0.jar
index 4c8e6af..424434b 100644
--- a/target/spoteezer-0.1.0.jar
+++ b/target/spoteezer-0.1.0.jar
Binary files differ
diff --git a/target/surefire-reports/TEST-musichub.business.CategoryTest.xml b/target/surefire-reports/TEST-musichub.business.CategoryTest.xml
index bb2ca30..e925716 100644
--- a/target/surefire-reports/TEST-musichub.business.CategoryTest.xml
+++ b/target/surefire-reports/TEST-musichub.business.CategoryTest.xml
@@ -15,7 +15,7 @@
<property name="sun.java.launcher" value="SUN_STANDARD"/>
<property name="user.country" value="FR"/>
<property name="sun.boot.library.path" value="C:\Users\SoftA\.jdks\openjdk-16.0.1\bin"/>
- <property name="sun.java.command" value="C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564\surefirebooter14738086644009111251.jar C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564 2021-06-27T22-23-26_881-jvmRun1 surefire7843695504690115096tmp surefire_04088083116107885099tmp"/>
+ <property name="sun.java.command" value="C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303\surefirebooter13413967179469073364.jar C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303 2021-06-28T23-36-31_184-jvmRun1 surefire14735445854373430078tmp surefire_017738082907736466932tmp"/>
<property name="jdk.debug" value="release"/>
<property name="surefire.test.class.path" value="C:\Users\SoftA\Documents\spoteezer\target\test-classes;C:\Users\SoftA\Documents\spoteezer\target\classes;C:\Users\SoftA\.m2\repository\org\junit\jupiter\junit-jupiter-api\5.0.2\junit-jupiter-api-5.0.2.jar;C:\Users\SoftA\.m2\repository\org\opentest4j\opentest4j\1.0.0\opentest4j-1.0.0.jar;C:\Users\SoftA\.m2\repository\org\junit\platform\junit-platform-commons\1.0.2\junit-platform-commons-1.0.2.jar;C:\Users\SoftA\.m2\repository\org\junit\jupiter\junit-jupiter-engine\5.0.2\junit-jupiter-engine-5.0.2.jar;C:\Users\SoftA\.m2\repository\org\junit\platform\junit-platform-engine\1.0.2\junit-platform-engine-1.0.2.jar;"/>
<property name="sun.cpu.endian" value="little"/>
@@ -30,7 +30,7 @@
<property name="line.separator" value="&#10;"/>
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
<property name="java.specification.name" value="Java Platform API Specification"/>
- <property name="surefire.real.class.path" value="C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564\surefirebooter14738086644009111251.jar"/>
+ <property name="surefire.real.class.path" value="C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303\surefirebooter13413967179469073364.jar"/>
<property name="user.script" value=""/>
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
<property name="java.runtime.version" value="16.0.1+9-24"/>
diff --git a/target/surefire-reports/TEST-musichub.business.LanguageTest.xml b/target/surefire-reports/TEST-musichub.business.LanguageTest.xml
index 5ebb15c..62f74fc 100644
--- a/target/surefire-reports/TEST-musichub.business.LanguageTest.xml
+++ b/target/surefire-reports/TEST-musichub.business.LanguageTest.xml
@@ -15,7 +15,7 @@
<property name="sun.java.launcher" value="SUN_STANDARD"/>
<property name="user.country" value="FR"/>
<property name="sun.boot.library.path" value="C:\Users\SoftA\.jdks\openjdk-16.0.1\bin"/>
- <property name="sun.java.command" value="C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564\surefirebooter14738086644009111251.jar C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564 2021-06-27T22-23-26_881-jvmRun1 surefire7843695504690115096tmp surefire_04088083116107885099tmp"/>
+ <property name="sun.java.command" value="C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303\surefirebooter13413967179469073364.jar C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303 2021-06-28T23-36-31_184-jvmRun1 surefire14735445854373430078tmp surefire_017738082907736466932tmp"/>
<property name="jdk.debug" value="release"/>
<property name="surefire.test.class.path" value="C:\Users\SoftA\Documents\spoteezer\target\test-classes;C:\Users\SoftA\Documents\spoteezer\target\classes;C:\Users\SoftA\.m2\repository\org\junit\jupiter\junit-jupiter-api\5.0.2\junit-jupiter-api-5.0.2.jar;C:\Users\SoftA\.m2\repository\org\opentest4j\opentest4j\1.0.0\opentest4j-1.0.0.jar;C:\Users\SoftA\.m2\repository\org\junit\platform\junit-platform-commons\1.0.2\junit-platform-commons-1.0.2.jar;C:\Users\SoftA\.m2\repository\org\junit\jupiter\junit-jupiter-engine\5.0.2\junit-jupiter-engine-5.0.2.jar;C:\Users\SoftA\.m2\repository\org\junit\platform\junit-platform-engine\1.0.2\junit-platform-engine-1.0.2.jar;"/>
<property name="sun.cpu.endian" value="little"/>
@@ -30,7 +30,7 @@
<property name="line.separator" value="&#10;"/>
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
<property name="java.specification.name" value="Java Platform API Specification"/>
- <property name="surefire.real.class.path" value="C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564\surefirebooter14738086644009111251.jar"/>
+ <property name="surefire.real.class.path" value="C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303\surefirebooter13413967179469073364.jar"/>
<property name="user.script" value=""/>
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
<property name="java.runtime.version" value="16.0.1+9-24"/>
diff --git a/target/surefire-reports/TEST-musichub.business.PlayListTest.xml b/target/surefire-reports/TEST-musichub.business.PlayListTest.xml
index dde9373..5c92f89 100644
--- a/target/surefire-reports/TEST-musichub.business.PlayListTest.xml
+++ b/target/surefire-reports/TEST-musichub.business.PlayListTest.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" name="musichub.business.PlayListTest" time="0.018" tests="5" errors="0" skipped="0" failures="0">
+<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" name="musichub.business.PlayListTest" time="0.019" tests="5" errors="0" skipped="0" failures="0">
<properties>
<property name="java.specification.version" value="16"/>
<property name="sun.cpu.isalist" value="amd64"/>
@@ -15,7 +15,7 @@
<property name="sun.java.launcher" value="SUN_STANDARD"/>
<property name="user.country" value="FR"/>
<property name="sun.boot.library.path" value="C:\Users\SoftA\.jdks\openjdk-16.0.1\bin"/>
- <property name="sun.java.command" value="C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564\surefirebooter14738086644009111251.jar C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564 2021-06-27T22-23-26_881-jvmRun1 surefire7843695504690115096tmp surefire_04088083116107885099tmp"/>
+ <property name="sun.java.command" value="C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303\surefirebooter13413967179469073364.jar C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303 2021-06-28T23-36-31_184-jvmRun1 surefire14735445854373430078tmp surefire_017738082907736466932tmp"/>
<property name="jdk.debug" value="release"/>
<property name="surefire.test.class.path" value="C:\Users\SoftA\Documents\spoteezer\target\test-classes;C:\Users\SoftA\Documents\spoteezer\target\classes;C:\Users\SoftA\.m2\repository\org\junit\jupiter\junit-jupiter-api\5.0.2\junit-jupiter-api-5.0.2.jar;C:\Users\SoftA\.m2\repository\org\opentest4j\opentest4j\1.0.0\opentest4j-1.0.0.jar;C:\Users\SoftA\.m2\repository\org\junit\platform\junit-platform-commons\1.0.2\junit-platform-commons-1.0.2.jar;C:\Users\SoftA\.m2\repository\org\junit\jupiter\junit-jupiter-engine\5.0.2\junit-jupiter-engine-5.0.2.jar;C:\Users\SoftA\.m2\repository\org\junit\platform\junit-platform-engine\1.0.2\junit-platform-engine-1.0.2.jar;"/>
<property name="sun.cpu.endian" value="little"/>
@@ -30,7 +30,7 @@
<property name="line.separator" value="&#10;"/>
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
<property name="java.specification.name" value="Java Platform API Specification"/>
- <property name="surefire.real.class.path" value="C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564\surefirebooter14738086644009111251.jar"/>
+ <property name="surefire.real.class.path" value="C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303\surefirebooter13413967179469073364.jar"/>
<property name="user.script" value=""/>
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
<property name="java.runtime.version" value="16.0.1+9-24"/>
@@ -56,7 +56,7 @@
<property name="java.class.version" value="60.0"/>
</properties>
<testcase name="testGetTitle" classname="musichub.business.PlayListTest" time="0.002"/>
- <testcase name="testPlaylistClass" classname="musichub.business.PlayListTest" time="0.001"/>
+ <testcase name="testPlaylistClass" classname="musichub.business.PlayListTest" time="0"/>
<testcase name="testPlaylistClassXML" classname="musichub.business.PlayListTest" time="0.006"/>
<testcase name="testCreateXMLElement" classname="musichub.business.PlayListTest" time="0"/>
<testcase name="testGetElements" classname="musichub.business.PlayListTest" time="0.001"/>
diff --git a/target/surefire-reports/TEST-musichub.business.SongTest.xml b/target/surefire-reports/TEST-musichub.business.SongTest.xml
index 2bfbc93..4623ab2 100644
--- a/target/surefire-reports/TEST-musichub.business.SongTest.xml
+++ b/target/surefire-reports/TEST-musichub.business.SongTest.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" name="musichub.business.SongTest" time="0.019" tests="6" errors="0" skipped="0" failures="0">
+<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" name="musichub.business.SongTest" time="0.013" tests="6" errors="0" skipped="0" failures="0">
<properties>
<property name="java.specification.version" value="16"/>
<property name="sun.cpu.isalist" value="amd64"/>
@@ -15,7 +15,7 @@
<property name="sun.java.launcher" value="SUN_STANDARD"/>
<property name="user.country" value="FR"/>
<property name="sun.boot.library.path" value="C:\Users\SoftA\.jdks\openjdk-16.0.1\bin"/>
- <property name="sun.java.command" value="C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564\surefirebooter14738086644009111251.jar C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564 2021-06-27T22-23-26_881-jvmRun1 surefire7843695504690115096tmp surefire_04088083116107885099tmp"/>
+ <property name="sun.java.command" value="C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303\surefirebooter13413967179469073364.jar C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303 2021-06-28T23-36-31_184-jvmRun1 surefire14735445854373430078tmp surefire_017738082907736466932tmp"/>
<property name="jdk.debug" value="release"/>
<property name="surefire.test.class.path" value="C:\Users\SoftA\Documents\spoteezer\target\test-classes;C:\Users\SoftA\Documents\spoteezer\target\classes;C:\Users\SoftA\.m2\repository\org\junit\jupiter\junit-jupiter-api\5.0.2\junit-jupiter-api-5.0.2.jar;C:\Users\SoftA\.m2\repository\org\opentest4j\opentest4j\1.0.0\opentest4j-1.0.0.jar;C:\Users\SoftA\.m2\repository\org\junit\platform\junit-platform-commons\1.0.2\junit-platform-commons-1.0.2.jar;C:\Users\SoftA\.m2\repository\org\junit\jupiter\junit-jupiter-engine\5.0.2\junit-jupiter-engine-5.0.2.jar;C:\Users\SoftA\.m2\repository\org\junit\platform\junit-platform-engine\1.0.2\junit-platform-engine-1.0.2.jar;"/>
<property name="sun.cpu.endian" value="little"/>
@@ -30,7 +30,7 @@
<property name="line.separator" value="&#10;"/>
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
<property name="java.specification.name" value="Java Platform API Specification"/>
- <property name="surefire.real.class.path" value="C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564\surefirebooter14738086644009111251.jar"/>
+ <property name="surefire.real.class.path" value="C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303\surefirebooter13413967179469073364.jar"/>
<property name="user.script" value=""/>
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
<property name="java.runtime.version" value="16.0.1+9-24"/>
@@ -55,9 +55,9 @@
<property name="sun.io.unicode.encoding" value="UnicodeLittle"/>
<property name="java.class.version" value="60.0"/>
</properties>
- <testcase name="testGetGenre" classname="musichub.business.SongTest" time="0.005"/>
+ <testcase name="testGetGenre" classname="musichub.business.SongTest" time="0"/>
<testcase name="testToString" classname="musichub.business.SongTest" time="0.006"/>
- <testcase name="testSongClassXML" classname="musichub.business.SongTest" time="0.002"/>
+ <testcase name="testSongClassXML" classname="musichub.business.SongTest" time="0.001"/>
<testcase name="testCreateXMLElement" classname="musichub.business.SongTest" time="0"/>
<testcase name="testSongClass" classname="musichub.business.SongTest" time="0"/>
<testcase name="testSetGenre" classname="musichub.business.SongTest" time="0"/>
diff --git a/target/surefire-reports/TEST-musichub.util.LogHandlerTest.xml b/target/surefire-reports/TEST-musichub.util.LogHandlerTest.xml
index b5707c9..303888b 100644
--- a/target/surefire-reports/TEST-musichub.util.LogHandlerTest.xml
+++ b/target/surefire-reports/TEST-musichub.util.LogHandlerTest.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" name="musichub.util.LogHandlerTest" time="0.023" tests="3" errors="0" skipped="0" failures="0">
+<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" name="musichub.util.LogHandlerTest" time="0.075" tests="3" errors="0" skipped="0" failures="0">
<properties>
<property name="java.specification.version" value="16"/>
<property name="sun.cpu.isalist" value="amd64"/>
@@ -15,7 +15,7 @@
<property name="sun.java.launcher" value="SUN_STANDARD"/>
<property name="user.country" value="FR"/>
<property name="sun.boot.library.path" value="C:\Users\SoftA\.jdks\openjdk-16.0.1\bin"/>
- <property name="sun.java.command" value="C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564\surefirebooter14738086644009111251.jar C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564 2021-06-27T22-23-26_881-jvmRun1 surefire7843695504690115096tmp surefire_04088083116107885099tmp"/>
+ <property name="sun.java.command" value="C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303\surefirebooter13413967179469073364.jar C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303 2021-06-28T23-36-31_184-jvmRun1 surefire14735445854373430078tmp surefire_017738082907736466932tmp"/>
<property name="jdk.debug" value="release"/>
<property name="surefire.test.class.path" value="C:\Users\SoftA\Documents\spoteezer\target\test-classes;C:\Users\SoftA\Documents\spoteezer\target\classes;C:\Users\SoftA\.m2\repository\org\junit\jupiter\junit-jupiter-api\5.0.2\junit-jupiter-api-5.0.2.jar;C:\Users\SoftA\.m2\repository\org\opentest4j\opentest4j\1.0.0\opentest4j-1.0.0.jar;C:\Users\SoftA\.m2\repository\org\junit\platform\junit-platform-commons\1.0.2\junit-platform-commons-1.0.2.jar;C:\Users\SoftA\.m2\repository\org\junit\jupiter\junit-jupiter-engine\5.0.2\junit-jupiter-engine-5.0.2.jar;C:\Users\SoftA\.m2\repository\org\junit\platform\junit-platform-engine\1.0.2\junit-platform-engine-1.0.2.jar;"/>
<property name="sun.cpu.endian" value="little"/>
@@ -30,7 +30,7 @@
<property name="line.separator" value="&#10;"/>
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
<property name="java.specification.name" value="Java Platform API Specification"/>
- <property name="surefire.real.class.path" value="C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564\surefirebooter14738086644009111251.jar"/>
+ <property name="surefire.real.class.path" value="C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303\surefirebooter13413967179469073364.jar"/>
<property name="user.script" value=""/>
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
<property name="java.runtime.version" value="16.0.1+9-24"/>
@@ -55,7 +55,7 @@
<property name="sun.io.unicode.encoding" value="UnicodeLittle"/>
<property name="java.class.version" value="60.0"/>
</properties>
- <testcase name="testLogHandlerClass" classname="musichub.util.LogHandlerTest" time="0"/>
- <testcase name="testWrite" classname="musichub.util.LogHandlerTest" time="0.002"/>
- <testcase name="testRead" classname="musichub.util.LogHandlerTest" time="0.018"/>
+ <testcase name="testLogHandlerClass" classname="musichub.util.LogHandlerTest" time="0.001"/>
+ <testcase name="testWrite" classname="musichub.util.LogHandlerTest" time="0"/>
+ <testcase name="testRead" classname="musichub.util.LogHandlerTest" time="0.071"/>
</testsuite> \ No newline at end of file
diff --git a/target/surefire-reports/TEST-musichub.util.PathValidationTest.xml b/target/surefire-reports/TEST-musichub.util.PathValidationTest.xml
index 10ec3d9..2ed37c9 100644
--- a/target/surefire-reports/TEST-musichub.util.PathValidationTest.xml
+++ b/target/surefire-reports/TEST-musichub.util.PathValidationTest.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" name="musichub.util.PathValidationTest" time="0.001" tests="2" errors="0" skipped="0" failures="0">
+<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" name="musichub.util.PathValidationTest" time="0.002" tests="2" errors="0" skipped="0" failures="0">
<properties>
<property name="java.specification.version" value="16"/>
<property name="sun.cpu.isalist" value="amd64"/>
@@ -15,7 +15,7 @@
<property name="sun.java.launcher" value="SUN_STANDARD"/>
<property name="user.country" value="FR"/>
<property name="sun.boot.library.path" value="C:\Users\SoftA\.jdks\openjdk-16.0.1\bin"/>
- <property name="sun.java.command" value="C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564\surefirebooter14738086644009111251.jar C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564 2021-06-27T22-23-26_881-jvmRun1 surefire7843695504690115096tmp surefire_04088083116107885099tmp"/>
+ <property name="sun.java.command" value="C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303\surefirebooter13413967179469073364.jar C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303 2021-06-28T23-36-31_184-jvmRun1 surefire14735445854373430078tmp surefire_017738082907736466932tmp"/>
<property name="jdk.debug" value="release"/>
<property name="surefire.test.class.path" value="C:\Users\SoftA\Documents\spoteezer\target\test-classes;C:\Users\SoftA\Documents\spoteezer\target\classes;C:\Users\SoftA\.m2\repository\org\junit\jupiter\junit-jupiter-api\5.0.2\junit-jupiter-api-5.0.2.jar;C:\Users\SoftA\.m2\repository\org\opentest4j\opentest4j\1.0.0\opentest4j-1.0.0.jar;C:\Users\SoftA\.m2\repository\org\junit\platform\junit-platform-commons\1.0.2\junit-platform-commons-1.0.2.jar;C:\Users\SoftA\.m2\repository\org\junit\jupiter\junit-jupiter-engine\5.0.2\junit-jupiter-engine-5.0.2.jar;C:\Users\SoftA\.m2\repository\org\junit\platform\junit-platform-engine\1.0.2\junit-platform-engine-1.0.2.jar;"/>
<property name="sun.cpu.endian" value="little"/>
@@ -30,7 +30,7 @@
<property name="line.separator" value="&#10;"/>
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
<property name="java.specification.name" value="Java Platform API Specification"/>
- <property name="surefire.real.class.path" value="C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564\surefirebooter14738086644009111251.jar"/>
+ <property name="surefire.real.class.path" value="C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303\surefirebooter13413967179469073364.jar"/>
<property name="user.script" value=""/>
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
<property name="java.runtime.version" value="16.0.1+9-24"/>
diff --git a/target/surefire-reports/TEST-musichub.util.XMLHandlerTest.xml b/target/surefire-reports/TEST-musichub.util.XMLHandlerTest.xml
index 3022713..6ee5744 100644
--- a/target/surefire-reports/TEST-musichub.util.XMLHandlerTest.xml
+++ b/target/surefire-reports/TEST-musichub.util.XMLHandlerTest.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" name="musichub.util.XMLHandlerTest" time="0.119" tests="2" errors="0" skipped="0" failures="0">
+<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" name="musichub.util.XMLHandlerTest" time="0.094" tests="2" errors="0" skipped="0" failures="0">
<properties>
<property name="java.specification.version" value="16"/>
<property name="sun.cpu.isalist" value="amd64"/>
@@ -15,7 +15,7 @@
<property name="sun.java.launcher" value="SUN_STANDARD"/>
<property name="user.country" value="FR"/>
<property name="sun.boot.library.path" value="C:\Users\SoftA\.jdks\openjdk-16.0.1\bin"/>
- <property name="sun.java.command" value="C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564\surefirebooter14738086644009111251.jar C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564 2021-06-27T22-23-26_881-jvmRun1 surefire7843695504690115096tmp surefire_04088083116107885099tmp"/>
+ <property name="sun.java.command" value="C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303\surefirebooter13413967179469073364.jar C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303 2021-06-28T23-36-31_184-jvmRun1 surefire14735445854373430078tmp surefire_017738082907736466932tmp"/>
<property name="jdk.debug" value="release"/>
<property name="surefire.test.class.path" value="C:\Users\SoftA\Documents\spoteezer\target\test-classes;C:\Users\SoftA\Documents\spoteezer\target\classes;C:\Users\SoftA\.m2\repository\org\junit\jupiter\junit-jupiter-api\5.0.2\junit-jupiter-api-5.0.2.jar;C:\Users\SoftA\.m2\repository\org\opentest4j\opentest4j\1.0.0\opentest4j-1.0.0.jar;C:\Users\SoftA\.m2\repository\org\junit\platform\junit-platform-commons\1.0.2\junit-platform-commons-1.0.2.jar;C:\Users\SoftA\.m2\repository\org\junit\jupiter\junit-jupiter-engine\5.0.2\junit-jupiter-engine-5.0.2.jar;C:\Users\SoftA\.m2\repository\org\junit\platform\junit-platform-engine\1.0.2\junit-platform-engine-1.0.2.jar;"/>
<property name="sun.cpu.endian" value="little"/>
@@ -30,7 +30,7 @@
<property name="line.separator" value="&#10;"/>
<property name="java.vm.specification.vendor" value="Oracle Corporation"/>
<property name="java.specification.name" value="Java Platform API Specification"/>
- <property name="surefire.real.class.path" value="C:\Users\SoftA\AppData\Local\Temp\surefire9308943938457390564\surefirebooter14738086644009111251.jar"/>
+ <property name="surefire.real.class.path" value="C:\Users\SoftA\AppData\Local\Temp\surefire12987402337600427303\surefirebooter13413967179469073364.jar"/>
<property name="user.script" value=""/>
<property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
<property name="java.runtime.version" value="16.0.1+9-24"/>
@@ -55,6 +55,6 @@
<property name="sun.io.unicode.encoding" value="UnicodeLittle"/>
<property name="java.class.version" value="60.0"/>
</properties>
- <testcase name="testParseXMLFile" classname="musichub.util.XMLHandlerTest" time="0.118"/>
+ <testcase name="testParseXMLFile" classname="musichub.util.XMLHandlerTest" time="0.093"/>
<testcase name="testCreateXML" classname="musichub.util.XMLHandlerTest" time="0"/>
</testsuite> \ No newline at end of file
diff --git a/target/surefire-reports/musichub.business.PlayListTest.txt b/target/surefire-reports/musichub.business.PlayListTest.txt
index c738c60..7109820 100644
--- a/target/surefire-reports/musichub.business.PlayListTest.txt
+++ b/target/surefire-reports/musichub.business.PlayListTest.txt
@@ -1,4 +1,4 @@
-------------------------------------------------------------------------------
Test set: musichub.business.PlayListTest
-------------------------------------------------------------------------------
-Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.018 s - in musichub.business.PlayListTest
+Tests run: 5, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.019 s - in musichub.business.PlayListTest
diff --git a/target/surefire-reports/musichub.business.SongTest.txt b/target/surefire-reports/musichub.business.SongTest.txt
index 4e87759..b940dd9 100644
--- a/target/surefire-reports/musichub.business.SongTest.txt
+++ b/target/surefire-reports/musichub.business.SongTest.txt
@@ -1,4 +1,4 @@
-------------------------------------------------------------------------------
Test set: musichub.business.SongTest
-------------------------------------------------------------------------------
-Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.019 s - in musichub.business.SongTest
+Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.013 s - in musichub.business.SongTest
diff --git a/target/surefire-reports/musichub.util.LogHandlerTest.txt b/target/surefire-reports/musichub.util.LogHandlerTest.txt
index 14d9938..520c865 100644
--- a/target/surefire-reports/musichub.util.LogHandlerTest.txt
+++ b/target/surefire-reports/musichub.util.LogHandlerTest.txt
@@ -1,4 +1,4 @@
-------------------------------------------------------------------------------
Test set: musichub.util.LogHandlerTest
-------------------------------------------------------------------------------
-Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.023 s - in musichub.util.LogHandlerTest
+Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.075 s - in musichub.util.LogHandlerTest
diff --git a/target/surefire-reports/musichub.util.PathValidationTest.txt b/target/surefire-reports/musichub.util.PathValidationTest.txt
index 39ffd40..73b70d5 100644
--- a/target/surefire-reports/musichub.util.PathValidationTest.txt
+++ b/target/surefire-reports/musichub.util.PathValidationTest.txt
@@ -1,4 +1,4 @@
-------------------------------------------------------------------------------
Test set: musichub.util.PathValidationTest
-------------------------------------------------------------------------------
-Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.001 s - in musichub.util.PathValidationTest
+Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.002 s - in musichub.util.PathValidationTest
diff --git a/target/surefire-reports/musichub.util.XMLHandlerTest.txt b/target/surefire-reports/musichub.util.XMLHandlerTest.txt
index 8938cdc..975dc3e 100644
--- a/target/surefire-reports/musichub.util.XMLHandlerTest.txt
+++ b/target/surefire-reports/musichub.util.XMLHandlerTest.txt
@@ -1,4 +1,4 @@
-------------------------------------------------------------------------------
Test set: musichub.util.XMLHandlerTest
-------------------------------------------------------------------------------
-Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.119 s - in musichub.util.XMLHandlerTest
+Tests run: 2, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.094 s - in musichub.util.XMLHandlerTest