Creating classes and managers (also first view create)

Function_Implementation
Emre KARTAL 2 years ago
parent 61d8c77e42
commit 7b03b1a933

@ -1 +1 @@
<mxfile host="app.diagrams.net" modified="2023-03-06T18:51:31.565Z" agent="5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36" etag="EuD2mpcxvjraMMdQioWu" version="21.0.1" type="device"><diagram name="Page-1" id="U-0PpQiEOQf81rjpV_C7">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</diagram></mxfile>
<mxfile host="app.diagrams.net" modified="2023-03-10T19:31:17.296Z" agent="5.0 (X11)" etag="7hur-XWhWse8_LjVapTz" version="21.0.6" type="device"><diagram name="Page-1" id="U-0PpQiEOQf81rjpV_C7">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</diagram></mxfile>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 133 KiB

After

Width:  |  Height:  |  Size: 157 KiB

@ -1,3 +0,0 @@
# Default ignored files
/shelf/
/workspace.xml

@ -1 +1 @@
Scor'It
Scor_It

@ -1,123 +0,0 @@
<component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173">
<JetCodeStyleSettings>
<option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" />
</JetCodeStyleSettings>
<codeStyleSettings language="XML">
<option name="FORCE_REARRANGE_MODE" value="1" />
<indentOptions>
<option name="CONTINUATION_INDENT_SIZE" value="4" />
</indentOptions>
<arrangement>
<rules>
<section>
<rule>
<match>
<AND>
<NAME>xmlns:android</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>xmlns:.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*:id</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*:name</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>name</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>style</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
<order>ANDROID_ATTRIBUTE_ORDER</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>.*</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
</rules>
</arrangement>
</codeStyleSettings>
<codeStyleSettings language="kotlin">
<option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" />
</codeStyleSettings>
</code_scheme>
</component>

@ -1,5 +0,0 @@
<component name="ProjectCodeStyleConfiguration">
<state>
<option name="USE_PER_PROJECT_SETTINGS" value="true" />
</state>
</component>

@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="GradleMigrationSettings" migrationVersion="1" />
<component name="GradleSettings">
<option name="linkedExternalProjectsSettings">
<GradleProjectSettings>

@ -10,7 +10,7 @@ android {
defaultConfig {
applicationId "uca.iut.clermont"
minSdk 16
targetSdk 33
targetSdk 32
versionCode 1
versionName "1.0"
@ -35,9 +35,10 @@ android {
dependencies {
implementation 'androidx.core:core-ktx:1.7.0'
implementation 'androidx.appcompat:appcompat:1.4.1'
implementation 'com.google.android.material:material:1.5.0'
implementation 'androidx.appcompat:appcompat:1.6.1'
implementation 'com.google.android.material:material:1.8.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
androidTestImplementation 'androidx.test.ext:junit:1.1.5'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
}

@ -8,8 +8,19 @@
android:fullBackupContent="@xml/backup_rules"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.ScorIt"
tools:targetApi="31" />
android:theme="@style/Theme.Scor_It"
tools:targetApi="31">
<activity
android:name=".view.HomeActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.intent.action.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>

@ -0,0 +1,92 @@
package uca.iut.clermont.data
import AreaManager
import CompetitionsManager
import DataManager
import MatchesManager
import PeopleManager
import TeamsManager
import uca.iut.clermont.model.*
class StubData: DataManager() {
override val areaMgr: AreaManager = StubAreaManager()
override val peopleMgr: PeopleManager = StubPeopleManager()
override val matchesMgr: MatchesManager = StubMatchesManager()
override val competitionsMgr: CompetitionsManager = StubCompetitionsManager()
override val teamsMgr: TeamsManager = StubTeamsManager()
class StubAreaManager : AreaManager {
override fun getItemsByName(substring: String): List<Area> {
TODO("Not yet implemented")
}
override fun getItems(): List<Area> {
TODO("Not yet implemented")
}
override fun getItemById(id: Int): Area? {
TODO("Not yet implemented")
}
}
class StubPeopleManager : PeopleManager {
override fun getItemsByName(substring: String): List<Personne> {
TODO("Not yet implemented")
}
override fun getItems(): List<Personne> {
TODO("Not yet implemented")
}
override fun getItemById(id: Int): Personne? {
TODO("Not yet implemented")
}
}
class StubMatchesManager : MatchesManager {
override fun getItemsByName(substring: String): List<Match> {
TODO("Not yet implemented")
}
override fun getItems(): List<Match> {
TODO("Not yet implemented")
}
override fun getItemById(id: Int): Match? {
TODO("Not yet implemented")
}
}
class StubCompetitionsManager : CompetitionsManager {
override fun getItemsByName(substring: String): List<Competition> {
TODO("Not yet implemented")
}
override fun getItems(): List<Competition> {
TODO("Not yet implemented")
}
override fun getItemById(id: Int): Competition? {
TODO("Not yet implemented")
}
}
class StubTeamsManager : TeamsManager {
override fun getItemsByName(substring: String): List<Team> {
TODO("Not yet implemented")
}
override fun getItems(): List<Team> {
TODO("Not yet implemented")
}
override fun getItemById(id: Int): Team? {
TODO("Not yet implemented")
}
}
}

@ -0,0 +1,91 @@
package uca.iut.clermont.model
import AreaManager
import CompetitionsManager
import DataManager
import MatchesManager
import PeopleManager
import TeamsManager
class StubData : DataManager() {
override val areaMgr: AreaManager = ApiAreaManager()
override val peopleMgr: PeopleManager = ApiPeopleManager()
override val matchesMgr: MatchesManager = ApiMatchesManager()
override val competitionsMgr: CompetitionsManager = ApiCompetitionsManager()
override val teamsMgr: TeamsManager = ApiTeamsManager()
class ApiAreaManager : AreaManager {
override fun getItemsByName(substring: String): List<Area> {
TODO("Not yet implemented")
}
override fun getItems(): List<Area> {
TODO("Not yet implemented")
}
override fun getItemById(id: Int): Area? {
TODO("Not yet implemented")
}
}
class ApiPeopleManager : PeopleManager {
override fun getItemsByName(substring: String): List<Personne> {
TODO("Not yet implemented")
}
override fun getItems(): List<Personne> {
TODO("Not yet implemented")
}
override fun getItemById(id: Int): Personne? {
TODO("Not yet implemented")
}
}
class ApiMatchesManager : MatchesManager {
override fun getItemsByName(substring: String): List<Match> {
TODO("Not yet implemented")
}
override fun getItems(): List<Match> {
TODO("Not yet implemented")
}
override fun getItemById(id: Int): Match? {
TODO("Not yet implemented")
}
}
class ApiCompetitionsManager : CompetitionsManager {
override fun getItemsByName(substring: String): List<Competition> {
TODO("Not yet implemented")
}
override fun getItems(): List<Competition> {
TODO("Not yet implemented")
}
override fun getItemById(id: Int): Competition? {
TODO("Not yet implemented")
}
}
class ApiTeamsManager : TeamsManager {
override fun getItemsByName(substring: String): List<Team> {
TODO("Not yet implemented")
}
override fun getItems(): List<Team> {
TODO("Not yet implemented")
}
override fun getItemById(id: Int): Team? {
TODO("Not yet implemented")
}
}
}

@ -0,0 +1,10 @@
package uca.iut.clermont.model
class Area(
val id: Int,
val name: String,
val code: String,
val flag: String,
val parentArea: String
) {
}

@ -0,0 +1,14 @@
package uca.iut.clermont.model
import java.util.*
class Coach(
id: Int,
firstName: String,
lastName: String,
name: String,
dateOfBirth: Date,
nationality: String,
contract: Contract
) : Personne(id, firstName, lastName, name, dateOfBirth, nationality, contract) {
}

@ -0,0 +1,12 @@
package uca.iut.clermont.model
class Competition(
val id: Int,
val name: String,
val code: String,
val type: String,
val emblem: String,
val currentSeason: season,
val area: Area
) {
}

@ -0,0 +1,14 @@
package uca.iut.clermont.model
import java.util.*
import java.util.concurrent.TimeUnit
class Contract(
val start: Date,
val until: Date
) {
fun duration(): Int {
val diffInMillies = until.time - start.time
return TimeUnit.DAYS.convert(diffInMillies, TimeUnit.MILLISECONDS).toInt()
}
}

@ -0,0 +1,19 @@
import uca.iut.clermont.model.*
abstract class DataManager {
abstract val areaMgr: AreaManager
abstract val peopleMgr: PeopleManager
abstract val matchesMgr: MatchesManager
abstract val competitionsMgr: CompetitionsManager
abstract val teamsMgr: TeamsManager
}
interface AreaManager : GenericDataManager<Area>
interface PeopleManager : GenericDataManager<Personne>
interface MatchesManager : GenericDataManager<Match>
interface CompetitionsManager : GenericDataManager<Competition>
interface TeamsManager : GenericDataManager<Team>

@ -0,0 +1,7 @@
package uca.iut.clermont.model
interface GenericDataManager<T> {
fun getItemsByName(substring: String): List<T>
fun getItems(): List<T>
fun getItemById(id: Int): T?
}

@ -0,0 +1,10 @@
package uca.iut.clermont.model
class Match(
val id: Int,
val idHomeTeam: Int,
val idAwayTeam: Int,
val status: String,
val winner: String
) {
}

@ -0,0 +1,14 @@
package uca.iut.clermont.model
import java.util.Date
abstract class Personne(
val id: Int,
val firstName: String,
val lastName: String,
val name: String,
val dateOfBirth: Date,
val nationality: String,
val contract: Contract
) {
}

@ -0,0 +1,16 @@
package uca.iut.clermont.model
import java.util.*
class Player(
id: Int,
firstName: String,
lastName: String,
name: String,
dateOfBirth: Date,
nationality: String,
contract: Contract,
val position: String,
val shirtNumber: Int
) : Personne(id, firstName, lastName, name, dateOfBirth, nationality, contract) {
}

@ -0,0 +1,14 @@
package uca.iut.clermont.model
import java.util.Date
class Staff(
id: Int,
firstName: String,
lastName: String,
name: String,
dateOfBirth: Date,
nationality: String,
contract: Contract
) : Personne(id, firstName, lastName, name, dateOfBirth, nationality, contract) {
}

@ -0,0 +1,18 @@
package uca.iut.clermont.model
class Team(
val id: Int,
val name: String,
val shortName: String,
val crest: String,
val address: String,
val website: String,
val founded: String,
val clubColors: String,
val area: Area,
val venue: String,
val coach: Coach,
val staff: Staff,
val squads: List<Player>
) {
}

@ -0,0 +1,12 @@
package uca.iut.clermont.model
import java.util.Date
class season(
val id: Int,
val startDate: Date,
val endDate: Date,
val currentMatchday: Int,
val winner: Int
) {
}

@ -0,0 +1,13 @@
package uca.iut.clermont.view
import android.app.Activity
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import uca.iut.clermont.R
class HomeActivity : Activity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_home)
}
}

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".view.HomeActivity">
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button"
tools:layout_editor_absoluteX="25dp"
tools:layout_editor_absoluteY="14dp" />
</androidx.constraintlayout.widget.ConstraintLayout>

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
<background android:drawable="@drawable/ic_launcher_background" />
<foreground android:drawable="@drawable/ic_launcher_foreground" />
<monochrome android:drawable="@drawable/ic_launcher_foreground" />
</adaptive-icon>

@ -1,6 +1,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Base application theme. -->
<style name="Theme.ScorIt" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
<style name="Theme.Scor_It" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
<!-- Primary brand color. -->
<item name="colorPrimary">@color/purple_200</item>
<item name="colorPrimaryVariant">@color/purple_700</item>

@ -1,3 +1,3 @@
<resources>
<string name="app_name">Scor\'It</string>
<string name="app_name">Scor_It</string>
</resources>

@ -1,6 +1,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Base application theme. -->
<style name="Theme.ScorIt" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
<style name="Theme.Scor_It" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
<!-- Primary brand color. -->
<item name="colorPrimary">@color/purple_500</item>
<item name="colorPrimaryVariant">@color/purple_700</item>

@ -1,6 +1,6 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
plugins {
id 'com.android.application' version '7.4.1' apply false
id 'com.android.library' version '7.4.1' apply false
id 'org.jetbrains.kotlin.android' version '1.8.0' apply false
id 'com.android.application' version '7.3.0' apply false
id 'com.android.library' version '7.3.0' apply false
id 'org.jetbrains.kotlin.android' version '1.7.10' apply false
}

@ -1,6 +1,6 @@
#Mon Mar 06 09:24:23 CET 2023
#Fri Mar 10 08:32:43 CET 2023
distributionBase=GRADLE_USER_HOME
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-bin.zip
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME

178
src/gradlew.bat vendored

@ -1,89 +1,89 @@
@rem
@rem Copyright 2015 the original author or authors.
@rem
@rem Licensed under the Apache License, Version 2.0 (the "License");
@rem you may not use this file except in compliance with the License.
@rem You may obtain a copy of the License at
@rem
@rem https://www.apache.org/licenses/LICENSE-2.0
@rem
@rem Unless required by applicable law or agreed to in writing, software
@rem distributed under the License is distributed on an "AS IS" BASIS,
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
@if "%DEBUG%" == "" @echo off
@rem ##########################################################################
@rem
@rem Gradle startup script for Windows
@rem
@rem ##########################################################################
@rem Set local scope for the variables with windows NT shell
if "%OS%"=="Windows_NT" setlocal
set DIRNAME=%~dp0
if "%DIRNAME%" == "" set DIRNAME=.
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%
@rem Resolve any "." and ".." in APP_HOME to make it shorter.
for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if "%ERRORLEVEL%" == "0" goto execute
echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:findJavaFromJavaHome
set JAVA_HOME=%JAVA_HOME:"=%
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto execute
echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:execute
@rem Setup the command line
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
:end
@rem End local scope for the variables with windows NT shell
if "%ERRORLEVEL%"=="0" goto mainEnd
:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
exit /b 1
:mainEnd
if "%OS%"=="Windows_NT" endlocal
:omega
@rem
@rem Copyright 2015 the original author or authors.
@rem
@rem Licensed under the Apache License, Version 2.0 (the "License");
@rem you may not use this file except in compliance with the License.
@rem You may obtain a copy of the License at
@rem
@rem https://www.apache.org/licenses/LICENSE-2.0
@rem
@rem Unless required by applicable law or agreed to in writing, software
@rem distributed under the License is distributed on an "AS IS" BASIS,
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
@if "%DEBUG%" == "" @echo off
@rem ##########################################################################
@rem
@rem Gradle startup script for Windows
@rem
@rem ##########################################################################
@rem Set local scope for the variables with windows NT shell
if "%OS%"=="Windows_NT" setlocal
set DIRNAME=%~dp0
if "%DIRNAME%" == "" set DIRNAME=.
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%
@rem Resolve any "." and ".." in APP_HOME to make it shorter.
for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if "%ERRORLEVEL%" == "0" goto execute
echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:findJavaFromJavaHome
set JAVA_HOME=%JAVA_HOME:"=%
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto execute
echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:execute
@rem Setup the command line
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
:end
@rem End local scope for the variables with windows NT shell
if "%ERRORLEVEL%"=="0" goto mainEnd
:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
exit /b 1
:mainEnd
if "%OS%"=="Windows_NT" endlocal
:omega

@ -1,8 +1,8 @@
pluginManagement {
repositories {
gradlePluginPortal()
google()
mavenCentral()
gradlePluginPortal()
}
}
dependencyResolutionManagement {
@ -12,5 +12,5 @@ dependencyResolutionManagement {
mavenCentral()
}
}
rootProject.name = "Scor'It"
rootProject.name = "Scor_It"
include ':app'

Loading…
Cancel
Save