Skip to content
This repository was archived by the owner on Jun 28, 2019. It is now read-only.

Commit 31bd1bb

Browse files
committed
[change]StudyRecordAmountの設計修正
1 parent 7675ebc commit 31bd1bb

File tree

6 files changed

+44
-47
lines changed

6 files changed

+44
-47
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ Create a record and post.
7676
val record = StudyRecord(
7777
duration = 2 * 60,
7878
comment = "勉強した!!!",
79-
amount = StudyRecordAmount(30)
79+
amount = StudyRecordAmountTotal(30)
8080
)
8181
Studyplus.instance.postRecord(this@MainActivity, record,
8282
object : Studyplus.Companion.OnPostRecordListener {

sdk-example-java/src/main/java/jp/studyplus/android/sdk_example_java/MainActivity.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
import androidx.appcompat.app.AppCompatActivity;
1212
import jp.studyplus.android.sdk.Studyplus;
1313
import jp.studyplus.android.sdk.record.StudyRecord;
14-
import jp.studyplus.android.sdk.record.StudyRecordAmount;
14+
import jp.studyplus.android.sdk.record.StudyRecordAmountTotal;
1515

1616
import java.util.Locale;
1717

@@ -41,7 +41,7 @@ protected void onCreate(Bundle savedInstanceState) {
4141
Button postRecordButton = findViewById(R.id.post_study_record);
4242
postRecordButton.setOnClickListener(view -> {
4343
StudyRecord record = new StudyRecord(2 * 60);
44-
record.setAmount(new StudyRecordAmount(30));
44+
record.setAmount(new StudyRecordAmountTotal(30));
4545
record.setComment("勉強した!!!");
4646

4747
Studyplus.getInstance().postRecord(MainActivity.this, record,

sdk-example-kt/src/main/java/jp/studyplus/android/sdk_example_kt/MainActivity.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import android.widget.Toast
1010
import androidx.appcompat.app.AppCompatActivity
1111
import jp.studyplus.android.sdk.Studyplus
1212
import jp.studyplus.android.sdk.record.StudyRecord
13-
import jp.studyplus.android.sdk.record.StudyRecordAmount
13+
import jp.studyplus.android.sdk.record.StudyRecordAmountTotal
1414

1515
class MainActivity : AppCompatActivity() {
1616

@@ -43,7 +43,7 @@ class MainActivity : AppCompatActivity() {
4343
val record = StudyRecord(
4444
duration = 2 * 60,
4545
comment = "勉強した!!!",
46-
amount = StudyRecordAmount(30)
46+
amount = StudyRecordAmountTotal(30)
4747
)
4848
Studyplus.instance.postRecord(this@MainActivity, record,
4949
object : Studyplus.Companion.OnPostRecordListener {

studyplus-android-sdk2/src/main/java/jp/studyplus/android/sdk/record/StudyRecord.kt

Lines changed: 1 addition & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import java.util.*
1111
* @param recordedTime 学習を終えた日時
1212
* @param comment 学習に関するコメント
1313
* @param amount 学習量
14-
* @since 2.3.0
14+
* @since 2.5.0
1515
*/
1616
data class StudyRecord @JvmOverloads constructor(
1717
var duration: Int,
@@ -44,41 +44,3 @@ data class StudyRecord @JvmOverloads constructor(
4444
}
4545

4646
}
47-
48-
/**
49-
* Studyplusに投稿する学習記録の学習量
50-
*
51-
* @since 2.3.0
52-
*/
53-
class StudyRecordAmount {
54-
55-
val amountTotal: Int?
56-
val startPosition: Int?
57-
val endPosition: Int?
58-
59-
/**
60-
* 学習記録の合計学習量
61-
*
62-
* @param amountTotal 合計学習量
63-
* @since 2.3.0
64-
*/
65-
constructor(amountTotal: Int) {
66-
this.amountTotal = amountTotal
67-
this.startPosition = null
68-
this.endPosition = null
69-
}
70-
71-
/**
72-
* 学習記録の学習範囲
73-
*
74-
* @param startPosition 学習量の起点
75-
* @param endPosition 学習量の終点
76-
* @since 2.3.0
77-
*/
78-
constructor(startPosition: Int, endPosition: Int) {
79-
this.amountTotal = null
80-
this.startPosition = startPosition
81-
this.endPosition = endPosition
82-
}
83-
84-
}
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
package jp.studyplus.android.sdk.record
2+
3+
/**
4+
* Studyplusに投稿する学習記録の学習量
5+
*
6+
* @since 2.5.0
7+
*/
8+
interface StudyRecordAmount {
9+
val amountTotal: Int?
10+
val startPosition: Int?
11+
val endPosition: Int?
12+
}
13+
14+
/**
15+
* 学習記録の合計学習量
16+
*
17+
* @param amountTotal 合計学習量
18+
* @since 2.5.0
19+
*/
20+
data class StudyRecordAmountTotal(override val amountTotal: Int) : StudyRecordAmount {
21+
override val startPosition: Int? = null
22+
override val endPosition: Int? = null
23+
}
24+
25+
/**
26+
* 学習記録の学習範囲
27+
*
28+
* @param startPosition 学習量の起点
29+
* @param endPosition 学習量の終点
30+
* @since 2.5.0
31+
*/
32+
data class StudyRecordAmountRange(override val startPosition: Int, override val endPosition: Int) : StudyRecordAmount {
33+
override val amountTotal: Int? = null
34+
}

studyplus-android-sdk2/src/test/java/jp/studyplus/android/sdk/StudyRecordUnitTest.kt

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
package jp.studyplus.android.sdk
22

33
import jp.studyplus.android.sdk.record.StudyRecord
4-
import jp.studyplus.android.sdk.record.StudyRecordAmount
4+
import jp.studyplus.android.sdk.record.StudyRecordAmountRange
5+
import jp.studyplus.android.sdk.record.StudyRecordAmountTotal
56
import org.junit.Assert.assertEquals
67
import org.junit.Test
78
import java.util.*
@@ -24,7 +25,7 @@ class StudyRecordUnitTest {
2425
duration = 2 * 60,
2526
recordedTime = Calendar.getInstance().apply { set(2019, 5, 1, 1, 2, 3) },
2627
comment = "perfect!",
27-
amount = StudyRecordAmount(30)
28+
amount = StudyRecordAmountTotal(30)
2829
)
2930

3031
assertEquals(
@@ -39,7 +40,7 @@ class StudyRecordUnitTest {
3940
duration = 2 * 60,
4041
recordedTime = Calendar.getInstance().apply { set(2019, 5, 1, 1, 2, 3) },
4142
comment = "perfect!",
42-
amount = StudyRecordAmount(5, 12)
43+
amount = StudyRecordAmountRange(5, 12)
4344
)
4445

4546
assertEquals(

0 commit comments

Comments
 (0)