import org.tizen.emulator.manager.resources.StringResources;
import org.tizen.emulator.manager.vms.EmulatorVMList;
import org.tizen.emulator.manager.vms.RESOLUTION;
+import org.tizen.emulator.manager.vms.SKIN_SHAPE;
import org.tizen.emulator.manager.vms.VMProperty;
import org.tizen.emulator.manager.vms.option.IOption;
import org.tizen.emulator.manager.vms.option.IOptionFactory;
}
}
- skinList = SkinList.getInstance().sortForPriority(skinList);
+ skinList = SkinList.sortForPriority(skinList);
}
public ArrayList<Skin> getSkins() {
}
public Skin findSkinUsePath(String path) {
- return SkinList.getInstance().findSkinUsePath(path, skinList);
+ return SkinList.findSkinUsePath(path, skinList);
}
public Skin findSkinUseName(String name) {
- return SkinList.getInstance().findSkinUseName(name, skinList);
+ return SkinList.findSkinUseName(name, skinList);
}
public ArrayList<Skin> findSkinList(RESOLUTION resolution) {
- return SkinList.getInstance().findSkinList(resolution, skinList);
+ return SkinList.findSkinList(resolution, skinList);
+ }
+
+ public ArrayList<Skin> findSkinList(RESOLUTION resolution, SKIN_SHAPE skinShape) {
+ return SkinList.findSkinList(resolution, skinShape, skinList);
}
public ArrayList<Skin> findGeneralSkinList() {
- return SkinList.getInstance().findGeneralSkinList(skinList);
+ return SkinList.findGeneralSkinList(skinList);
}
public boolean isChildPlatform() {
package org.tizen.emulator.manager.platform;
-import java.io.File;
-import java.io.FileFilter;
-import java.io.IOException;
import java.util.ArrayList;
-import org.tizen.emulator.manager.logging.EMLogger;
-import org.tizen.emulator.manager.resources.StringResources;
import org.tizen.emulator.manager.vms.RESOLUTION;
import org.tizen.emulator.manager.vms.SKIN_SHAPE;
import org.tizen.emulator.manager.vms.SKIN_TYPE;
public class SkinList {
- private ArrayList<Skin> skinList = new ArrayList<Skin>();
-
- private static SkinList instance = null;
- static {
- instance = new SkinList();
- }
-
- public static SkinList getInstance() {
- return instance;
- }
-
- private SkinList() {
- }
-
- private void makeSkinList(File dir) throws IOException {
- if (dir == null) {
- return;
- }
-
- if (dir.exists()) {
- File[] fileList = dir.listFiles(new FileFilter() {
- public boolean accept(File pathname) {
- if (!pathname.isDirectory()) {
- return false;
- }
- return true;
- }
- });
-
- if (fileList != null) {
- for (File skin : fileList) {
- Skin s = null;
- try {
- s = new Skin(skin);
- } catch(IOException e) {
- EMLogger.getLogger().warning("Failed adding Skin.."
- + StringResources.NEW_LINE + "Skin Path: " + skin.getAbsolutePath()
- + StringResources.NEW_LINE + "Error: " + e.getMessage());
- continue;
- }
- skinList.add(s);
- }
- sortSkinList();
- }
- } else {
- throw new IOException("This Skin path does not exist. (" + dir.getPath() + ")");
- }
- }
-
- private void sortSkinList() {
- ArrayList<Skin> generalSkinList = new ArrayList<Skin>();
- ArrayList<Skin> phoneSkinList = new ArrayList<Skin>();
- Skin s;
- // sort using skin path name
- for (int i = 0; i < skinList.size(); i++) {
- s = skinList.get(i);
- if (s.getType() == SKIN_TYPE.GENERAL) {
- generalSkinList.add(s);
- for (int j = generalSkinList.size() - 1; j > 0; j--) {
- if (generalSkinList.get(j).getName().compareTo(generalSkinList.get(j-1).getName()) < 0) {
- Skin t = generalSkinList.get(j-1);
- generalSkinList.set(j-1, generalSkinList.get(j));
- generalSkinList.set(j, t);
- } else {
- break;
- }
- }
- } else {
- phoneSkinList.add(s);
- for (int j = phoneSkinList.size() - 1; j > 0; j--) {
- if (phoneSkinList.get(j).getName().compareTo(phoneSkinList.get(j-1).getName()) < 0) {
- Skin t = phoneSkinList.get(j-1);
- phoneSkinList.set(j-1, phoneSkinList.get(j));
- phoneSkinList.set(j, t);
- } else {
- break;
- }
- }
- }
- }
- skinList.clear();
- for (Skin s1 : generalSkinList) {
- //System.out.println(s1.getName());
- skinList.add(s1);
- }
- for (Skin s2 : phoneSkinList) {
- //System.out.println(s2.getName());
- skinList.add(s2);
- }
- }
-
- public ArrayList<Skin> getSkinList() {
- return skinList;
- }
-
- public Skin findSkinUsePath(String path, ArrayList<Skin> list) {
+ public static Skin findSkinUsePath(String path, ArrayList<Skin> list) {
if (list != null) {
for (Skin skin : list) {
if (skin.getPath().equals(path)) {
return skin;
}
}
- } else if (skinList != null) {
- for (Skin skin : skinList) {
- if (skin.getPath().equals(path)) {
- return skin;
- }
- }
}
return null;
}
- public Skin findSkinUseName(String name, ArrayList<Skin> list) {
+ public static Skin findSkinUseName(String name, ArrayList<Skin> list) {
if (list != null) {
for (Skin skin : list) {
if (skin.getName().equals(name)) {
return skin;
}
}
- } else if (skinList != null) {
- for (Skin skin : skinList) {
- if (skin.getName().equals(name)) {
- return skin;
- }
- }
}
return null;
}
- private ArrayList<Skin> returnSkins = new ArrayList<Skin>();
- public ArrayList<Skin> findSkinList(RESOLUTION resolution, ArrayList<Skin> list) {
+ private static ArrayList<Skin> returnSkins = new ArrayList<Skin>();
+ public static ArrayList<Skin> findSkinList(RESOLUTION resolution, ArrayList<Skin> list) {
returnSkins.clear();
if (list != null) {
for (Skin skin : list) {
returnSkins.add(skin);
}
}
- } else if (skinList != null) {
- for (Skin skin : skinList) {
- if (skin.getType() == SKIN_TYPE.GENERAL) {
- returnSkins.add(skin);
- } else if (skin.getResolution().equals(resolution)) {
- returnSkins.add(skin);
- }
- }
}
return sortForPriority(returnSkins);
}
- public ArrayList<Skin> findImageSkinList(RESOLUTION resolution,ArrayList<Skin> list,
- SKIN_SHAPE imageSkinShape) {
+ public static ArrayList<Skin> findSkinList(RESOLUTION resolution, SKIN_SHAPE skinShape,
+ ArrayList<Skin> list) {
returnSkins.clear();
- ArrayList<Skin> sourceSkinList = (list != null) ? list : skinList;
- if (sourceSkinList != null) {
- for (Skin skin : sourceSkinList) {
+ if (list != null) {
+ for (Skin skin : list) {
if (skin.getType() == SKIN_TYPE.GENERAL || skin.getResolution().equals(resolution)) {
- if (imageSkinShape == SKIN_SHAPE.NONE || imageSkinShape == skin.getSkinShape()){
+ if (skinShape == SKIN_SHAPE.NONE || skinShape == skin.getSkinShape()){
returnSkins.add(skin);
}
}
return sortForPriority(returnSkins);
}
- public ArrayList<Skin> findGeneralSkinList( ArrayList<Skin> list) {
+ public static ArrayList<Skin> findGeneralSkinList( ArrayList<Skin> list) {
returnSkins.clear();
if (list != null) {
for (Skin skin : list) {
returnSkins.add(skin);
}
}
- }else if (skinList != null) {
- for (Skin skin : skinList) {
- if (skin.getType() == SKIN_TYPE.GENERAL) {
- returnSkins.add(skin);
- }
- }
}
return sortForPriority(returnSkins);
}
- public ArrayList<Skin> sortForPriority(ArrayList<Skin> list) {
+ public static ArrayList<Skin> sortForPriority(ArrayList<Skin> list) {
// sort using priority
ArrayList<Skin> tempList = new ArrayList<Skin>();
for (Skin s : list) {