Skip to content

Commit

Permalink
Add number of logs seekbar
Browse files Browse the repository at this point in the history
  • Loading branch information
MatkovIvan committed Nov 2, 2018
1 parent 67785a9 commit 7597881
Show file tree
Hide file tree
Showing 3 changed files with 76 additions and 27 deletions.
18 changes: 15 additions & 3 deletions apps/sasquatch/src/main/res/layout/activity_event.xml
Original file line number Diff line number Diff line change
Expand Up @@ -85,18 +85,30 @@
android:visibility="gone" />

<TextView
android:id="@+id/persistence_flag_label"
android:id="@+id/event_priority_label"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/persistence_flag" />
android:text="@string/event_priority" />

<Spinner
android:id="@+id/persistence_flag_spinner"
android:id="@+id/event_priority_spinner"
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@android:drawable/btn_dropdown"
android:spinnerMode="dropdown" />

<TextView
android:id="@+id/number_of_logs_label"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/number_of_logs" />

<SeekBar
android:id="@+id/number_of_logs"
android:layout_width="match_parent"
android:layout_height="50dp"
android:max="1000" />

<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
Expand Down
5 changes: 3 additions & 2 deletions apps/sasquatch/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -76,11 +76,12 @@
<string name="max_storage_size_change_success" tools:ignore="MissingTranslation">Max storage size has changed to %s successfully. Check SDK logs for actual size of storage.</string>
<string name="max_storage_size_change_failed" tools:ignore="MissingTranslation">Failed to change max storage size.</string>
<string name="size_in_bytes" tools:ignore="MissingTranslation">Size in bytes</string>
<string name="persistence_flag" tools:ignore="MissingTranslation">Persistence Flag</string>
<string-array name="persistence_flag_values" tools:ignore="MissingTranslation">
<string name="event_priority" tools:ignore="MissingTranslation">Event Priority</string>
<string-array name="event_priority_values" tools:ignore="MissingTranslation">
<item>Default</item>
<item>Normal</item>
<item>Critical</item>
<item>Invalid</item>
</string-array>
<string name="number_of_logs" tools:ignore="MissingTranslation">Number of logs: %d</string>
</resources>
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.SeekBar;
import android.widget.Spinner;
import android.widget.TextView;

Expand All @@ -32,7 +33,7 @@


/**
* TODO move to main resource folder and delete jCenter version during release process.
* TODO move to main folder and delete jCenter version during release process.
*/
public class EventActivity extends AppCompatActivity {

Expand All @@ -44,6 +45,8 @@ public class EventActivity extends AppCompatActivity {

private final List<TypedPropertyFragment> mProperties = new ArrayList<>();

private TextView mName;

private Spinner mTransmissionTargetSpinner;

private CheckBox mTransmissionEnabledCheckBox;
Expand All @@ -60,6 +63,10 @@ public class EventActivity extends AppCompatActivity {

private Spinner mPersistenceFlagSpinner;

private TextView mNumberOfLogsLabel;

private SeekBar mNumberOfLogs;

private List<AnalyticsTransmissionTarget> mTransmissionTargets = new ArrayList<>();

@Override
Expand All @@ -70,6 +77,9 @@ public void onCreate(Bundle savedInstanceState) {
/* Test start from library. */
AppCenter.startFromLibrary(this, Analytics.class);

/* Init name field. */
mName = findViewById(R.id.name);

/* Transmission target views init. */
mTransmissionTargetSpinner = findViewById(R.id.transmission_target);
ArrayAdapter<String> targetAdapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_dropdown_item, getResources().getStringArray(R.array.target_id_names));
Expand Down Expand Up @@ -144,9 +154,29 @@ public void onClick(View v) {
});

/* Persistence flag. */
mPersistenceFlagSpinner = findViewById(R.id.persistence_flag_spinner);
ArrayAdapter<String> persistenceFlagAdapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_dropdown_item, getResources().getStringArray(R.array.persistence_flag_values));
mPersistenceFlagSpinner = findViewById(R.id.event_priority_spinner);
ArrayAdapter<String> persistenceFlagAdapter = new ArrayAdapter<>(this, android.R.layout.simple_spinner_dropdown_item, getResources().getStringArray(R.array.event_priority_values));
mPersistenceFlagSpinner.setAdapter(persistenceFlagAdapter);

/* Number of logs. */
mNumberOfLogsLabel = findViewById(R.id.number_of_logs_label);
mNumberOfLogs = findViewById(R.id.number_of_logs);
mNumberOfLogsLabel.setText(String.format(getString(R.string.number_of_logs), getNumberOfLogs()));
mNumberOfLogs.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {

@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
mNumberOfLogsLabel.setText(String.format(getString(R.string.number_of_logs), getNumberOfLogs()));
}

@Override
public void onStartTrackingTouch(SeekBar seekBar) {
}

@Override
public void onStopTrackingTouch(SeekBar seekBar) {
}
});
}

@Override
Expand All @@ -165,6 +195,10 @@ public boolean onOptionsItemSelected(MenuItem item) {
return true;
}

private int getNumberOfLogs() {
return Math.max(mNumberOfLogs.getProgress(), 1);
}

private void addProperty() {
TypedPropertyFragment fragment = new TypedPropertyFragment();
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
Expand All @@ -185,7 +219,7 @@ private boolean onlyStringProperties() {
public void send(@SuppressWarnings("UnusedParameters") View view) {
PersistenceFlag persistenceFlag = PersistenceFlag.values()[mPersistenceFlagSpinner.getSelectedItemPosition()];
int flags = getFlags(persistenceFlag);
String name = ((TextView) findViewById(R.id.name)).getText().toString();
String name = mName.getText().toString();
Map<String, String> properties = null;
EventProperties typedProperties = null;
if (mProperties.size() > 0) {
Expand All @@ -204,25 +238,27 @@ public void send(@SuppressWarnings("UnusedParameters") View view) {

/* First item is always empty as it's default value which means either AppCenter, one collector or both. */
AnalyticsTransmissionTarget target = getSelectedTarget();
if (target == null) {
if (persistenceFlag != PersistenceFlag.DEFAULT) {
Analytics.trackEvent(name, typedProperties, flags);
} else if (typedProperties != null) {
Analytics.trackEvent(name, typedProperties);
} else if (properties != null) {
Analytics.trackEvent(name, properties);
} else {
Analytics.trackEvent(name);
}
} else {
if (persistenceFlag != PersistenceFlag.DEFAULT) {
target.trackEvent(name, typedProperties, flags);
} else if (typedProperties != null) {
target.trackEvent(name, typedProperties);
} else if (properties != null) {
target.trackEvent(name, properties);
for (int i = 0; i < getNumberOfLogs(); i++) {
if (target == null) {
if (persistenceFlag != PersistenceFlag.DEFAULT) {
Analytics.trackEvent(name, typedProperties, flags);
} else if (typedProperties != null) {
Analytics.trackEvent(name, typedProperties);
} else if (properties != null) {
Analytics.trackEvent(name, properties);
} else {
Analytics.trackEvent(name);
}
} else {
target.trackEvent(name);
if (persistenceFlag != PersistenceFlag.DEFAULT) {
target.trackEvent(name, typedProperties, flags);
} else if (typedProperties != null) {
target.trackEvent(name, typedProperties);
} else if (properties != null) {
target.trackEvent(name, properties);
} else {
target.trackEvent(name);
}
}
}
}
Expand Down

0 comments on commit 7597881

Please sign in to comment.