001
002 package com.skype.api;
003
004 import java.util.HashMap;
005
006 import com.skype.api.Skype;
007
008 public abstract class SkypeObject {
009
010 protected int mObjectId;
011 protected HashMap<Integer, Object> mPropCache;
012 protected Skype skype;
013
014 protected SkypeObject(int oid, Skype skype) {
015 mObjectId = oid;
016 mPropCache = new HashMap<Integer, Object>();
017 this.skype = skype;
018 skype.object_list.put(oid, this);
019 }
020
021 public int getOid() {
022 return mObjectId;
023 }
024
025 public void close() {
026 flush_cache();
027 skype.object_list.remove(mObjectId);
028 }
029
030 public abstract Object GetPropertyAsEnum(int propid);
031
032 void flush_cache()
033 {
034 mPropCache.clear();
035 }
036 }
037