ChildLogger機能を削除, FactoryInjectionに切り替え

This commit is contained in:
ろむねこ 2024-07-02 16:35:58 +09:00
parent b3d95b9ba3
commit bafe40e096
Signed by: Fujimatsu
GPG Key ID: FA1F39A1BA37D168
4 changed files with 15 additions and 43 deletions

View File

@ -5,9 +5,6 @@ import java.util.List;
import one.nem.kidshift.utils.models.LogModel;
public interface KSLogger {
KSLogger getChildLogger(String tag);
KSLogger get(String tag);
KSLogger setTag(String tag);
KSLogger addTag(String tag);
List<LogModel> getHistory();
void info(String message);

View File

@ -0,0 +1,10 @@
package one.nem.kidshift.utils.factory;
import dagger.assisted.AssistedFactory;
import one.nem.kidshift.utils.impl.KSLoggerImpl;
@AssistedFactory
public interface KSLoggerFactory {
KSLoggerImpl create(String name);
}

View File

@ -5,10 +5,12 @@ import static one.nem.kidshift.utils.enums.LogLevelEnum.INFO;
import android.util.Log;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import javax.inject.Inject;
import dagger.assisted.Assisted;
import one.nem.kidshift.utils.KSLogger;
import one.nem.kidshift.utils.SharedPrefUtils;
import one.nem.kidshift.utils.enums.LogLevelEnum;
@ -22,31 +24,10 @@ public class KSLoggerImpl implements KSLogger {
private SharedPrefUtils sharedPrefUtils;
@Inject
public KSLoggerImpl(SharedPrefUtilsFactory sharedPrefUtilsFactory) {
tags.add("UNTAGGED");
this.sharedPrefUtils = sharedPrefUtilsFactory.create("KSLogger");
}
public KSLoggerImpl(String tag) {
tags.add(tag);
}
@Override
public KSLogger getChildLogger(String tag) {
tags.add(tag);
return this;
}
@Override
public KSLogger get(String tag) {
return new KSLoggerImpl(tag);
}
@Override
public KSLogger setTag(String tag) {
public KSLoggerImpl(SharedPrefUtilsFactory sharedPrefUtilsFactory, @Assisted String name) {
sharedPrefUtils = sharedPrefUtilsFactory.create("KSLogger");
tags.clear();
tags.add(tag);
return this;
tags.add(name);
}
@Override

View File

@ -1,16 +0,0 @@
package one.nem.kidshift.utils.modules;
import dagger.Binds;
import dagger.Module;
import dagger.hilt.InstallIn;
import dagger.hilt.components.SingletonComponent;
import one.nem.kidshift.utils.KSLogger;
import one.nem.kidshift.utils.impl.KSLoggerImpl;
@Module
@InstallIn(SingletonComponent.class)
abstract public class KSLoggerModule {
@Binds
public abstract KSLogger bindKSLogger(KSLoggerImpl ksLoggerImpl);
}