// ********************************************************************** // // Copyright (c) 2003-2013 ZeroC, Inc. All rights reserved. // // This copy of Ice is licensed to you under the terms described in the // ICE_LICENSE file included in this distribution. // // ********************************************************************** package IceMX; public class ObserverFactoryWithDelegate, O extends Ice.Instrumentation.Observer> extends ObserverFactory { public ObserverFactoryWithDelegate(IceInternal.MetricsAdminI metrics, String name, Class cl) { super(metrics, name, cl); } @SuppressWarnings("unchecked") public O getObserver(MetricsHelper helper, Class cl, O delegate) { OImpl o = super.getObserver(helper, cl); if(o != null) { o.setDelegate(delegate); return (O)o; } return delegate; } @SuppressWarnings("unchecked") public O getObserver(MetricsHelper helper, Object observer, Class cl, O delegate) { OImpl o = super.getObserver(helper, observer, cl); if(o != null) { o.setDelegate(delegate); return (O)o; } return delegate; } };