Skip to content

Commit fdbaade

Browse files
authored
feature/lesson04 (#6)
+ New files: - directory test, classes AbstractArrayStorageTest, ArrayStorageTest, SortedArrayStorageTest - package ru.topjava.webapp.exception, classes StorageException, ExistStorageException, NotExistStorageException - class MainReflection + Resume - constructors Resume() and Resume(String uuid) added, instead of method setUuid(String uuid) + AbstractArrayStorage, ArrayStorage, SortedArrayStorage - exceptions throwing added, instead of System.out.println + Gradle support added
1 parent d09e61c commit fdbaade

19 files changed

Lines changed: 509 additions & 27 deletions

build.gradle

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
plugins {
2+
id 'java'
3+
id 'idea'
4+
}
5+
6+
group = 'ru.topjava.webapp'
7+
version '1.0'
8+
9+
repositories {
10+
mavenLocal()
11+
mavenCentral()
12+
// maven { url "http://artapp/artifactory/public" }
13+
}
14+
15+
sourceSets {
16+
test.java.srcDir 'test'
17+
18+
main {
19+
java {
20+
srcDirs = ['src']
21+
}
22+
}
23+
}
24+
25+
configurations{
26+
compile {
27+
transitive = true
28+
}
29+
}
30+
31+
dependencies {
32+
compile 'junit:junit:4.13.1'
33+
}

gradle/wrapper/gradle-wrapper.jar

57.8 KB
Binary file not shown.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
distributionBase=GRADLE_USER_HOME
2+
distributionPath=wrapper/dists
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-bin.zip
4+
#distributionUrl=http\://artapp/artifactory/gradle-wrapper-remote-cache/distributions/gradle-6.7.1-bin.zip
5+
zipStoreBase=GRADLE_USER_HOME
6+
zipStorePath=wrapper/dists
7+
file.encoding=utf-8

gradlew

Lines changed: 186 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

gradlew.bat

Lines changed: 90 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lesson/lesson1.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ r1, r2, r3,..., rn, null, null,..., null
8888
<----- size ----->
8989
<------- storage.length (10000) ------->
9090
```
91-
- Протестируйте вашу реализацию с помощью классов `MainArray.main()` и `MainTestArrayStorage.main()`
91+
- Протестируйте вашу реализацию с помощью классов `ru.topjava.webapp.MainArray.main()` и `ru.topjava.webapp.MainTestArrayStorage.main()`
9292
- Изучите дополнительные материалы по IntelliJ IDEA:
9393
- [Idea Wiki](https://github.com/JavaOPs/topjava/wiki/IDEA) ([поставьте кодировку UTF-8](https://github.com/JavaOPs/topjava/wiki/IDEA#Поставить-кодировку-utf-8), [поменяйте шрифт по умолчанию на DejaVu](https://github.com/JavaOPs/topjava/wiki/IDEA#Поменять-фонт-по-умолчанию-dejavu))
9494
- [Руководство пользователя IntelliJ IDEA. Отладчик](http://info.javarush.ru/idea_help/2014/01/22/Руководство-пользователя-IntelliJ-IDEA-Отладчик-.html)

settings.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
rootProject.name = "basejava"

src/ru/topjava/webapp/MainArray.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -62,14 +62,12 @@ public static void main(String[] args) throws IOException {
6262
System.out.println(arrayStorage.size());
6363
break;
6464
case "save":
65-
resume = new Resume();
66-
resume.setUuid(uuid);
65+
resume = new Resume(uuid);
6766
arrayStorage.save(resume);
6867
printAll();
6968
break;
7069
case "update":
71-
resume = new Resume();
72-
resume.setUuid(uuid);
70+
resume = new Resume(uuid);
7371
arrayStorage.update(resume);
7472
printAll();
7573
break;
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
package ru.topjava.webapp;
2+
3+
import ru.topjava.webapp.model.Resume;
4+
5+
import java.lang.reflect.InvocationTargetException;
6+
import java.lang.reflect.Method;
7+
8+
public class MainReflection {
9+
public static void main(String[] args) throws NoSuchMethodException, InvocationTargetException, IllegalAccessException {
10+
Resume resume = new Resume("test_reflection");
11+
Method toStringMethod = resume.getClass().getMethod("toString");
12+
System.out.println(toStringMethod.invoke(resume));
13+
}
14+
}

src/ru/topjava/webapp/MainTestArrayStorage.java

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,16 +13,11 @@ public class MainTestArrayStorage {
1313
static final Storage ARRAY_STORAGE = new SortedArrayStorage();
1414

1515
public static void main(String[] args) {
16-
Resume resume1 = new Resume();
17-
resume1.setUuid("uuid1");
18-
Resume resume3 = new Resume();
19-
resume3.setUuid("uuid3");
20-
Resume resume2 = new Resume();
21-
resume2.setUuid("uuid2");
22-
Resume resume3Update = new Resume();
23-
resume3Update.setUuid("uuid3");
24-
Resume resume4 = new Resume();
25-
resume4.setUuid("uuid4");
16+
Resume resume1 = new Resume("uuid1");
17+
Resume resume3 = new Resume("uuid3");
18+
Resume resume2 = new Resume("uuid2");
19+
Resume resume3Update = new Resume("uuid3");
20+
Resume resume4 = new Resume("uuid4");
2621

2722
ARRAY_STORAGE.save(resume1);
2823
ARRAY_STORAGE.save(resume2);

0 commit comments

Comments
 (0)