Revision 28484 branches/v2_0_0_prep/libraries/libFMap_dal/src/org/gvsig/fmap/dal/resource/impl/DefaultResourceManager.java
DefaultResourceManager.java | ||
---|---|---|
45 | 45 |
private Timer timer = null; |
46 | 46 |
private Logger logger; |
47 | 47 |
|
48 |
private long mlsecondsToBeIdle = 0; |
|
49 |
|
|
48 | 50 |
public DefaultResourceManager() { |
49 | 51 |
/* |
50 | 52 |
* Create te extensions point in te registry. |
... | ... | |
112 | 114 |
key = (String) iter.next(); |
113 | 115 |
res = (ResourceProvider) this.resources.get(key); |
114 | 116 |
if (res.getConsumersCount() < 1) { |
117 |
res.closeRequest(); |
|
115 | 118 |
res.notifyDispose(); |
116 | 119 |
iter.remove(); |
120 |
continue; |
|
117 | 121 |
} |
122 |
if (mlsecondsToBeIdle > 0 |
|
123 |
&& System.currentTimeMillis() |
|
124 |
- res.getLastTimeUsed().getTime() > mlsecondsToBeIdle) { |
|
118 | 125 |
|
126 |
} |
|
127 |
|
|
119 | 128 |
} |
120 | 129 |
} |
121 | 130 |
|
... | ... | |
316 | 325 |
} |
317 | 326 |
} |
318 | 327 |
|
328 |
public int getTimeToBeIdle() { |
|
329 |
if (mlsecondsToBeIdle == 0) { |
|
330 |
return 0; |
|
331 |
} |
|
332 |
return (int) (mlsecondsToBeIdle / 1000); |
|
333 |
} |
|
334 |
|
|
335 |
public void setTimeToBeIdle(int seconds) { |
|
336 |
if (seconds < 0) { |
|
337 |
throw new IllegalArgumentException("seconds must be >= 0"); |
|
338 |
} |
|
339 |
mlsecondsToBeIdle = seconds * 1000; |
|
340 |
} |
|
341 |
|
|
319 | 342 |
} |
Also available in: Unified diff