Magisk/src/main/java/com/topjohnwu/magisk/container/Module.java

66 lines
1.5 KiB
Java
Raw Normal View History

2017-09-29 21:04:23 +02:00
package com.topjohnwu.magisk.container;
2016-08-17 13:00:55 +02:00
2016-08-22 23:18:28 +02:00
import com.topjohnwu.magisk.utils.Utils;
public class Module extends BaseModule {
2016-08-17 13:00:55 +02:00
2016-09-28 21:37:57 +02:00
private String mRemoveFile, mDisableFile, mUpdateFile;
private boolean mEnable, mRemove, mUpdated;
2016-08-29 00:35:07 +02:00
2017-10-15 17:02:44 +02:00
public Module(String path) {
2016-09-02 20:18:37 +02:00
try {
2017-10-15 17:02:44 +02:00
parseProps(Utils.readFile(path + "/module.prop"));
} catch (NumberFormatException ignored) {}
mRemoveFile = path + "/remove";
mDisableFile = path + "/disable";
2016-09-28 21:37:57 +02:00
mUpdateFile = path + "/update";
if (getId() == null) {
int sep = path.lastIndexOf('/');
setId(path.substring(sep + 1));
}
if (getName() == null) {
setName(getId());
}
2016-09-06 23:54:08 +02:00
2017-10-15 17:02:44 +02:00
mEnable = !Utils.itemExist(mDisableFile);
mRemove = Utils.itemExist(mRemoveFile);
mUpdated = Utils.itemExist(mUpdateFile);
2016-08-17 13:00:55 +02:00
}
2017-10-15 17:02:44 +02:00
public void createDisableFile() {
mEnable = false;
2017-10-15 17:02:44 +02:00
Utils.createFile(mDisableFile);
}
2017-10-15 17:02:44 +02:00
public void removeDisableFile() {
mEnable = true;
2017-10-15 17:02:44 +02:00
Utils.removeItem(mDisableFile);
}
public boolean isEnabled() {
return mEnable;
}
2017-10-15 17:02:44 +02:00
public void createRemoveFile() {
mRemove = true;
2017-10-15 17:02:44 +02:00
Utils.createFile(mRemoveFile);
}
2017-10-15 17:02:44 +02:00
public void deleteRemoveFile() {
mRemove = false;
2017-10-15 17:02:44 +02:00
Utils.removeItem(mRemoveFile);
}
public boolean willBeRemoved() {
return mRemove;
}
2016-09-28 21:37:57 +02:00
public boolean isUpdated() {
return mUpdated;
}
2016-08-17 13:00:55 +02:00
}