Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4134d97a authored by 2bllw8's avatar 2bllw8
Browse files

Recorder: use java 8 time instead of Date

Change-Id: I434c4c37ddf6db5fad0b0ffa6d7a08120405ee6b
parent a8c6cb1f
Loading
Loading
Loading
Loading
+8 −8
Original line number Diff line number Diff line
@@ -19,7 +19,7 @@ import android.net.Uri;

import androidx.annotation.NonNull;

import java.util.Date;
import java.time.LocalDateTime;
import java.util.Objects;

public class RecordingData {
@@ -29,14 +29,14 @@ public class RecordingData {
    @NonNull
    private final String title;
    @NonNull
    private final Date date;
    private final LocalDateTime dateTime;
    private final long duration;

    public RecordingData(@NonNull Uri uri, @NonNull String title, @NonNull Date date,
    public RecordingData(@NonNull Uri uri, @NonNull String title, @NonNull LocalDateTime dateTime,
                         long duration) {
        this.uri = uri;
        this.title = title;
        this.date = date;
        this.dateTime = dateTime;
        this.duration = duration;
    }

@@ -51,8 +51,8 @@ public class RecordingData {
    }

    @NonNull
    public Date getDate() {
        return date;
    public LocalDateTime getDateTime() {
        return dateTime;
    }

    public long getDuration() {
@@ -71,11 +71,11 @@ public class RecordingData {
        return duration == that.duration
                && uri.equals(that.uri)
                && title.equals(that.title)
                && date.equals(that.date);
                && dateTime.equals(that.dateTime);
    }

    @Override
    public int hashCode() {
        return Objects.hash(uri, title, date, duration);
        return Objects.hash(uri, title, dateTime, duration);
    }
}
+4 −4
Original line number Diff line number Diff line
@@ -31,13 +31,13 @@ import androidx.recyclerview.widget.RecyclerView;

import org.lineageos.recorder.R;

import java.text.SimpleDateFormat;
import java.time.format.DateTimeFormatter;
import java.util.Locale;

public class RecordingItemViewHolder extends RecyclerView.ViewHolder {
    private static final String SUMMARY_FORMAT = "%s - %02d:%02d";

    private final SimpleDateFormat mDateFormat;
    private final DateTimeFormatter mDateFormat;
    private final ImageView mIconView;
    private final TextView mTitleView;
    private final TextView mSummaryView;
@@ -47,7 +47,7 @@ public class RecordingItemViewHolder extends RecyclerView.ViewHolder {

    public RecordingItemViewHolder(@NonNull View itemView,
                                   @NonNull RecordingItemCallbacks callbacks,
                                   @NonNull SimpleDateFormat dateFormat) {
                                   @NonNull DateTimeFormatter dateFormat) {
        super(itemView);

        mCallbacks = callbacks;
@@ -68,7 +68,7 @@ public class RecordingItemViewHolder extends RecyclerView.ViewHolder {
        long minutes = seconds / 60;
        seconds -= (minutes * 60);
        mSummaryView.setText(String.format(Locale.getDefault(), SUMMARY_FORMAT,
                mDateFormat.format(data.getDate()), minutes, seconds));
                mDateFormat.format(data.getDateTime()), minutes, seconds));

        switch (selection) {
            case ListItemStatus.DEFAULT:
+3 −3
Original line number Diff line number Diff line
@@ -25,7 +25,7 @@ import androidx.recyclerview.widget.RecyclerView;

import org.lineageos.recorder.R;

import java.text.SimpleDateFormat;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
@@ -37,7 +37,7 @@ public class RecordingsAdapter extends RecyclerView.Adapter<RecordingItemViewHol
    @NonNull
    private final RecordingListCallbacks mCallbacks;
    @NonNull
    private final SimpleDateFormat mDateFormat = new SimpleDateFormat(
    private final DateTimeFormatter mDateFormat = DateTimeFormatter.ofPattern(
            "yyyy-MM-dd HH:mm", Locale.getDefault());
    @NonNull
    private List<RecordingData> mData;
@@ -120,7 +120,7 @@ public class RecordingsAdapter extends RecyclerView.Adapter<RecordingItemViewHol

    public void onRename(int index, @NonNull String newTitle) {
        RecordingData oldData = mData.get(index);
        RecordingData newData = new RecordingData(oldData.getUri(), newTitle, oldData.getDate(),
        RecordingData newData = new RecordingData(oldData.getUri(), newTitle, oldData.getDateTime(),
                oldData.getDuration());
        mData.set(index, newData);

+5 −5
Original line number Diff line number Diff line
@@ -49,8 +49,8 @@ import org.lineageos.recorder.utils.Utils;

import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Locale;
import java.util.Timer;
import java.util.TimerTask;
@@ -88,8 +88,8 @@ public class SoundRecorderService extends Service {
    private final AtomicLong mElapsedTime = new AtomicLong();
    private final StringBuilder mSbRecycle = new StringBuilder();

    private final SimpleDateFormat mDateFormat = new SimpleDateFormat(FILE_NAME_DATE_FORMAT,
            Locale.getDefault());
    private final DateTimeFormatter mDateFormat = DateTimeFormatter.ofPattern(
            FILE_NAME_DATE_FORMAT, Locale.getDefault());
    private final BroadcastReceiver mShutdownReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
@@ -372,7 +372,7 @@ public class SoundRecorderService extends Service {
                                    @NonNull String extension) {
        String fileName = String.format(FILE_NAME_BASE,
                locationName == null ? FILE_NAME_LOCATION_FALLBACK : locationName,
                mDateFormat.format(new Date()),
                mDateFormat.format(LocalDateTime.now()),
                extension);
        File file = new File(getExternalFilesDir(Environment.DIRECTORY_RECORDINGS), fileName);
        File recordingDir = file.getParentFile();
+7 −5
Original line number Diff line number Diff line
@@ -26,9 +26,11 @@ import androidx.annotation.Nullable;
import org.lineageos.recorder.BuildConfig;
import org.lineageos.recorder.list.RecordingData;

import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.List;
import java.util.concurrent.Callable;

@@ -68,11 +70,11 @@ public final class GetRecordingsTask implements Callable<List<RecordingData>> {
                    final Uri uri = ContentUris.withAppendedId(
                            MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, id);
                    final String name = cursor.getString(1);
                    final long timeStamp = cursor.getLong(2) * 1000L;
                    // TODO: convert to LocalDateTime
                    final Date date = new Date(timeStamp);
                    final long timeStamp = cursor.getLong(2);
                    final LocalDateTime dateTime = LocalDateTime.ofInstant(
                            Instant.ofEpochSecond(timeStamp), ZoneId.systemDefault());
                    final long duration = cursor.getLong(3);
                    list.add(new RecordingData(uri, name, date, duration));
                    list.add(new RecordingData(uri, name, dateTime, duration));
                } while (cursor.moveToNext());
            }
        }