@Override public String getName() { return MSystem.getObjectId(this); } }
public synchronized String getObjectId(DbTransactionable owner) { String id = objectIdList.get(owner); if (id == null) { id = MSystem.getObjectId(owner); objectIdList.put(owner, id); } return id; }
private void createService(String name, TimerTask task, String interval) { Bundle caller = FrameworkUtil.getBundle(task.getClass()); ScheduledServiceWrap service = new ScheduledServiceWrap(name, caller,task, interval); Hashtable<String,Object> properties = new Hashtable<>(); String n = service.getName(); properties.put("job.name", n == null ? "?" : n); properties.put("job.task", task.getClass()); properties.put("job.interval", interval); properties.put("job.bundle", caller.getSymbolicName()); properties.put("job.timer", MSystem.getObjectId(this)); caller.getBundleContext().registerService(SchedulerService.class, service, properties); }
private void createService(SchedulerJob job) { Bundle caller = FrameworkUtil.getBundle(job.getTask() == null ? job.getClass() : job.getTask().getClass()); ScheduledServiceWrap service = new ScheduledServiceWrap(caller,job); Hashtable<String,Object> properties = new Hashtable<>(); String n = job.getName(); properties.put("job.name", n == null ? "?" : n); properties.put("job.scheduler", job.getClass()); properties.put("job.task", job.getTask().getClass()); properties.put("job.bundle", caller.getSymbolicName()); properties.put("job.timer", MSystem.getObjectId(this)); caller.getBundleContext().registerService(SchedulerService.class, service, properties); }
@Override public void cancel() { for (Service<SchedulerService> ref : MOsgi.getServiceRefs(SchedulerService.class, "(job.timer=" + MSystem.getObjectId(this) + ")")) try { ref.getReference().getBundle().getBundleContext().ungetService(ref.getReference()); } catch (Throwable t) { log().d("unset SchedulerService",MSystem.getObjectId(this),ref,t); } }
@Override public void close() { if (instance == null) return; log().t(id,"close",instance.getInstanceId()); setUsed(false); // close of the proxy will free the connection if (traceCaller.value()) pool.getStackTraces().remove(MSystem.getObjectId(this)); }
public DbConnectionProxy(DbPool pool, DbConnection instance) { if (traceCaller.value()) { this.pool = pool; pool.getStackTraces().put(MSystem.getObjectId(this), new ConnectionTrace(this)); // instance.setUsedTrace(createStackTrace); } this.instance = instance; log().t(id,"created",instance.getInstanceId()); }
if (obj != null) { System.out.println("Owner Bundle: " + FrameworkUtil.getBundle(ifc)); System.out.println("Object Id : " + MSystem.getObjectId(obj)); if (obj != null) { System.out.println(" Owner Bundle: " + FrameworkUtil.getBundle(ifc)); System.out.println(" Object Id : " + MSystem.getObjectId(obj));
@Override protected void finalize() throws Throwable { log().t(id,"finalized",instance.getInstanceId()); if (instance != null) { log().i(id,"final closed", instance.getInstanceId() ); ConnectionTrace trace = pool.getStackTraces().get(MSystem.getObjectId(this)); if (trace != null) trace.log(log()); setUsed(false); } if (traceCaller.value()) pool.getStackTraces().remove(MSystem.getObjectId(this)); super.finalize(); }