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

Commit 94cc4ff

Browse files
committed
Update core version
1 parent 524f26e commit 94cc4ff

27 files changed

+116
-209
lines changed

pom.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<modelVersion>4.0.0</modelVersion>
44
<groupId>fi.helsinki.cs.tmc.cli</groupId>
55
<artifactId>tmc-cli</artifactId>
6-
<version>0.9.1</version>
6+
<version>0.9.2</version>
77
<packaging>jar</packaging>
88
<properties>
99
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@@ -36,7 +36,7 @@
3636
<dependency>
3737
<groupId>fi.helsinki.cs.tmc</groupId>
3838
<artifactId>core</artifactId>
39-
<version>0.10.3-SNAPSHOT</version>
39+
<version>0.10.12-SNAPSHOT</version>
4040
</dependency>
4141
<dependency>
4242
<groupId>commons-cli</groupId>

src/main/java/fi/helsinki/cs/tmc/cli/Application.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@
2222
import fi.helsinki.cs.tmc.core.utilities.TmcRequestProcessor;
2323
import fi.helsinki.cs.tmc.langs.util.TaskExecutor;
2424
import fi.helsinki.cs.tmc.langs.util.TaskExecutorImpl;
25-
import fi.helsinki.cs.tmc.spyware.EventSendBuffer;
26-
import fi.helsinki.cs.tmc.spyware.EventStore;
25+
import fi.helsinki.cs.tmc.snapshots.EventSendBuffer;
26+
import fi.helsinki.cs.tmc.snapshots.EventStore;
2727
import org.apache.commons.cli.CommandLine;
2828
import org.apache.commons.cli.GnuParser;
2929
import org.apache.commons.cli.Option;
@@ -219,8 +219,8 @@ public static void main(String[] args) {
219219
Settings settings = new Settings();
220220
TaskExecutor tmcLangs = new TaskExecutorImpl();
221221
TmcCore core = new TmcCore(settings, tmcLangs);
222-
EventSendBuffer eventSendBuffer = new EventSendBuffer(settings, new EventStore());
223-
AnalyticsFacade analyticsFacade = new AnalyticsFacade(settings, eventSendBuffer);
222+
EventSendBuffer eventSendBuffer = new EventSendBuffer(new EventStore());
223+
AnalyticsFacade analyticsFacade = new AnalyticsFacade(eventSendBuffer);
224224
Application app = new Application(new CliContext(null, core, new WorkDir(), settings, analyticsFacade));
225225
app.run(args);
226226
// Because of EventSendBuffer

src/main/java/fi/helsinki/cs/tmc/cli/analytics/AnalyticsFacade.java

Lines changed: 3 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,59 +2,41 @@
22

33
import fi.helsinki.cs.tmc.core.domain.Course;
44
import fi.helsinki.cs.tmc.core.domain.Exercise;
5-
import fi.helsinki.cs.tmc.spyware.EventSendBuffer;
6-
import fi.helsinki.cs.tmc.spyware.LoggableEvent;
7-
import fi.helsinki.cs.tmc.spyware.SpywareSettings;
5+
import fi.helsinki.cs.tmc.snapshots.EventSendBuffer;
6+
import fi.helsinki.cs.tmc.snapshots.LoggableEvent;
87
import org.slf4j.LoggerFactory;
98
import java.util.Optional;
109

1110
public class AnalyticsFacade {
1211
private static final org.slf4j.Logger logger = LoggerFactory.getLogger(AnalyticsFacade.class);
1312

1413
private EventSendBuffer eventSendBuffer;
15-
private SpywareSettings settings;
1614

17-
public AnalyticsFacade(SpywareSettings settings, EventSendBuffer eventSendBuffer) {
18-
this.settings = settings;
15+
public AnalyticsFacade(EventSendBuffer eventSendBuffer) {
1916
this.eventSendBuffer = eventSendBuffer;
2017
}
2118

2219
public void saveAnalytics(String command) {
23-
if (!settings.isSpywareEnabled()) {
24-
return;
25-
}
2620
LoggableEvent event = LoggableEventCreator.createEvent(command);
2721
saveEvent(event);
2822
}
2923

3024
public void saveAnalytics(String courseName, String command) {
31-
if (!settings.isSpywareEnabled()) {
32-
return;
33-
}
3425
LoggableEvent event = LoggableEventCreator.createEvent(courseName, command);
3526
saveEvent(event);
3627
}
3728

3829
public void saveAnalytics(Course course, String command) {
39-
if (!settings.isSpywareEnabled()) {
40-
return;
41-
}
4230
LoggableEvent event = LoggableEventCreator.createEvent(course, command);
4331
saveEvent(event);
4432
}
4533

4634
public void saveAnalytics(Exercise exercise, String command) {
47-
if (!settings.isSpywareEnabled()) {
48-
return;
49-
}
5035
LoggableEvent event = LoggableEventCreator.createEvent(exercise, command);
5136
saveEvent(event);
5237
}
5338

5439
public Optional<Thread> sendAnalytics() {
55-
if (!settings.isSpywareEnabled()) {
56-
return Optional.empty();
57-
}
5840
Thread t = new Thread(() -> this.eventSendBuffer.sendNow());
5941
t.run();
6042
return Optional.of(t);

src/main/java/fi/helsinki/cs/tmc/cli/analytics/LoggableEventCreator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import com.google.gson.Gson;
44
import fi.helsinki.cs.tmc.core.domain.Course;
55
import fi.helsinki.cs.tmc.core.domain.Exercise;
6-
import fi.helsinki.cs.tmc.spyware.LoggableEvent;
6+
import fi.helsinki.cs.tmc.snapshots.LoggableEvent;
77

88
import java.nio.charset.Charset;
99
import java.util.Collections;

src/main/java/fi/helsinki/cs/tmc/cli/backend/Account.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ public class Account {
1717
private OauthCredentials oauthCredentials;
1818
private Course currentCourse;
1919
private String token;
20+
private Integer id;
2021
private Organization organization;
2122
private boolean sendDiagnostics;
2223
private boolean sendAnalytics;
@@ -153,6 +154,14 @@ public void setServerAddressToDefault() {
153154
this.serverAddress = DEFAULT_SERVER;
154155
}
155156

157+
public void setId(Integer id) {
158+
this.id = id;
159+
}
160+
161+
public Integer getId() {
162+
return this.id;
163+
}
164+
156165
@Override
157166
public String toString() {
158167
return "Account{" +

src/main/java/fi/helsinki/cs/tmc/cli/backend/Settings.java

Lines changed: 26 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -15,17 +15,15 @@
1515
import fi.helsinki.cs.tmc.core.domain.Organization;
1616
import fi.helsinki.cs.tmc.core.domain.ProgressObserver;
1717
import fi.helsinki.cs.tmc.core.utilities.TmcServerAddressNormalizer;
18-
import fi.helsinki.cs.tmc.spyware.SpywareSettings;
1918
import org.apache.http.impl.conn.SystemDefaultRoutePlanner;
2019
import org.slf4j.Logger;
2120
import org.slf4j.LoggerFactory;
2221

23-
import javax.swing.text.html.Option;
2422
import java.nio.file.Path;
2523
import java.util.Locale;
2624
import java.util.concurrent.Callable;
2725

28-
public class Settings implements TmcSettings, SpywareSettings {
26+
public class Settings implements TmcSettings {
2927

3028
private static final Logger logger = LoggerFactory.getLogger(Settings.class);
3129
private WorkDir workDir;
@@ -127,11 +125,36 @@ public void setPassword(Optional<String> password) {
127125
account.setPassword(password);
128126
}
129127

128+
@Override
129+
public Optional<Integer> getId() {
130+
return Optional.fromNullable(account.getId());
131+
}
132+
133+
@Override
134+
public void setId(int i) {
135+
account.setId(i);
136+
}
137+
130138
@Override
131139
public Optional<String> getUsername() {
132140
return account.getUsername();
133141
}
134142

143+
@Override
144+
public void setUsername(String s) {
145+
146+
}
147+
148+
@Override
149+
public Optional<String> getEmail() {
150+
return null;
151+
}
152+
153+
@Override
154+
public void setEmail(String s) {
155+
156+
}
157+
135158
@Override
136159
public boolean userDataExists() {
137160
return getUsername().isPresent() && getPassword().isPresent();
@@ -227,21 +250,4 @@ public void setOrganization(Optional<Organization> organization) {
227250
account.setOrganization(organization);
228251
}
229252

230-
@Override
231-
public boolean isSpywareEnabled() {
232-
return account.getSendAnalytics();
233-
}
234-
235-
public void setSpywareEnabled(boolean spywareEnabled) {
236-
account.setSendAnalytics(spywareEnabled);
237-
}
238-
239-
@Override
240-
public boolean isDetailedSpywareEnabled() {
241-
return account.getSendDetailedAnalytics();
242-
}
243-
244-
public void setDetailedSpywareEnabled(boolean detailedSpywareEnabled) {
245-
account.setSendDetailedAnalytics(detailedSpywareEnabled);
246-
}
247253
}

src/main/java/fi/helsinki/cs/tmc/cli/command/ConfigCommand.java

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ public class ConfigCommand extends AbstractCommand {
2525
private Io io;
2626
private static final Map<String, PropertyFunctions> ALLOWED_KEYS = new HashMap<>();
2727
private static final Set<String> PROGRESS_BAR_COLORS = new HashSet<>(Arrays.asList("black", "red", "green", "blue", "yellow", "blue", "purple", "cyan", "white", "none"));
28-
private static final String sendAnalyticsKey = "send-analytics";
2928
private static final String serverAddressKey = "server-address";
3029
private static final String testResultRightKey = "testresults-right";
3130
private static final String testResultLeftKey = "testresults-left";
@@ -57,19 +56,7 @@ public void setter(String value) throws BadValueTypeException {
5756
SettingsIo.saveCurrentSettingsToAccountList(context.getSettings());
5857
}
5958
});
60-
ALLOWED_KEYS.put(sendAnalyticsKey, new PropertyFunctions() {
61-
@Override
62-
public String getter() {
63-
return Boolean.toString(context.getSettings().isSpywareEnabled());
64-
}
6559

66-
@Override
67-
public void setter(String value) throws BadValueTypeException {
68-
boolean send = getBooleanSendValue(value);
69-
context.getSettings().setSpywareEnabled(send);
70-
SettingsIo.saveCurrentSettingsToAccountList(context.getSettings());
71-
}
72-
});
7360
ALLOWED_KEYS.put(serverAddressKey, new PropertyFunctions() {
7461
@Override
7562
public String getter() {

src/main/java/fi/helsinki/cs/tmc/cli/command/LoginCommand.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -107,10 +107,6 @@ public boolean login(CliContext ctx, CommandLine args, Optional<String> serverAd
107107
"Do you want to send crash reports for client development?",
108108
ctx.getSettings().getSendDiagnostics(), io);
109109
account.setSendDiagnostics(sendDiagnostics);
110-
boolean sendAnalytics = getBooleanAnswerFromUser(Optional.fromNullable(username),
111-
"Do you want to send analytics data for research?",
112-
ctx.getSettings().isSpywareEnabled(), io);
113-
account.setSendAnalytics(sendAnalytics);
114110

115111
AccountList list = SettingsIo.loadAccountList();
116112
list.addAccount(account);

src/main/resources/log4j.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Root logger option
22
log4j.rootLogger=INFO, file
33
log4j.category.fi.helsinki.cs.tmc.core=DEBUG, file
4-
log4j.category.fi.helsinki.cs.tmc.spyware=DEBUG, file
4+
log4j.category.fi.helsinki.cs.tmc.snapshots=DEBUG, file
55

66
# Direct log messages to a log file
77
log4j.appender.file=org.apache.log4j.RollingFileAppender

src/test/java/fi/helsinki/cs/tmc/cli/ApplicationTest.java

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,8 @@
2222
import fi.helsinki.cs.tmc.core.TmcCore;
2323
import fi.helsinki.cs.tmc.langs.util.TaskExecutor;
2424
import fi.helsinki.cs.tmc.langs.util.TaskExecutorImpl;
25-
import fi.helsinki.cs.tmc.spyware.EventSendBuffer;
26-
import fi.helsinki.cs.tmc.spyware.EventStore;
27-
import fi.helsinki.cs.tmc.spyware.SpywareSettings;
25+
import fi.helsinki.cs.tmc.snapshots.EventSendBuffer;
26+
import fi.helsinki.cs.tmc.snapshots.EventStore;
2827
import org.junit.Before;
2928
import org.junit.Test;
3029
import org.junit.runner.RunWith;
@@ -46,9 +45,8 @@ public void setUp() {
4645
Settings settings = new Settings();
4746
TaskExecutor tmcLangs = new TaskExecutorImpl();
4847
TmcCore core = new TmcCore(settings, tmcLangs);
49-
SpywareSettings analyticsSettings = new Settings();
50-
EventSendBuffer eventSendBuffer = new EventSendBuffer(analyticsSettings, new EventStore());
51-
AnalyticsFacade analyticsFacade = new AnalyticsFacade(analyticsSettings, eventSendBuffer);
48+
EventSendBuffer eventSendBuffer = new EventSendBuffer(new EventStore());
49+
AnalyticsFacade analyticsFacade = new AnalyticsFacade(eventSendBuffer);
5250
app = new Application(new CliContext(io, core, new WorkDir(), settings, analyticsFacade));
5351
mockStatic(AutoUpdater.class);
5452
}

0 commit comments

Comments
 (0)