MACSyncClientServiceTracker.java 1.72 KB
/*
 * Decompiled with CFR 0_118.
 * 
 * Could not load the following classes:
 *  org.osgi.framework.BundleContext
 *  org.osgi.framework.ServiceReference
 *  org.osgi.util.tracker.ServiceTracker
 *  org.osgi.util.tracker.ServiceTrackerCustomizer
 *  org.slf4j.Logger
 *  org.slf4j.LoggerFactory
 */
package com.adobe.cq.dam.mac.sync.helper.impl;

import com.adobe.cq.dam.mac.sync.helper.impl.MACSyncClient;
import java.util.Map;
import org.osgi.framework.BundleContext;
import org.osgi.framework.ServiceReference;
import org.osgi.util.tracker.ServiceTracker;
import org.osgi.util.tracker.ServiceTrackerCustomizer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class MACSyncClientServiceTracker
extends ServiceTracker {
    private static final Logger log = LoggerFactory.getLogger(MACSyncClientServiceTracker.class);
    private BundleContext bundleContext;
    private String accessTokenProviderPid;
    private static final long TIMEOUT = 5000;

    public MACSyncClientServiceTracker(BundleContext bc, String pid) {
        super(bc, MACSyncClient.class.getName(), null);
        this.bundleContext = bc;
        this.accessTokenProviderPid = pid;
    }

    public Object addingService(ServiceReference reference) {
        Object o = super.addingService(reference);
        if (o instanceof MACSyncClient) {
            Map props = ((MACSyncClient)o).getAccessTokenProviderProperties();
            log.info("matching pid {}", (Object)this.accessTokenProviderPid);
            if (this.accessTokenProviderPid.equals(props.get("service.pid"))) {
                log.info("found matching pid {}", (Object)this.accessTokenProviderPid);
                return o;
            }
            return null;
        }
        return null;
    }
}