// Path: services/google/api/src/main/java/eu/hlavki/identity/services/google/PushNotificationService.java
// public interface PushNotificationService {
// 
//     /**
//      * Enable push notification. Set hostname for push service
//      *
//      * @param hostname
//      */
//     void enablePushNotifications(String hostname);
// 
// 
//     void disablePushNotifications();
// 
// 
//     void refreshPushNotifications();
// 
// 
//     void stopPushChannel(String id, String resourceId);
// 
// 
//     boolean isEnabled();
// }


import eu.hlavki.identity.services.google.PushNotificationService;
import org.apache.karaf.shell.api.action.Action;
import org.apache.karaf.shell.api.action.Argument;
import org.apache.karaf.shell.api.action.Command;
import org.apache.karaf.shell.api.action.lifecycle.Reference;
import org.apache.karaf.shell.api.action.lifecycle.Service;
package eu.hlavki.identity.services.google.client;


@Service
@Command(scope = "google", name = "stop-channel", description = "Stop channel")
public class StopPushChannel implements Action {

    @Argument(index = 0, name = "id", description = "Channel id", required = true, multiValued = false)
    String id;

    @Argument(index = 1, name = "resourceId", description = "Resource id", required = true, multiValued = false)
    String resourceId;

    @Reference
// Path: services/google/api/src/main/java/eu/hlavki/identity/services/google/PushNotificationService.java
// public interface PushNotificationService {
// 
//     /**
//      * Enable push notification. Set hostname for push service
//      *
//      * @param hostname
//      */
//     void enablePushNotifications(String hostname);
// 
// 
//     void disablePushNotifications();
// 
// 
//     void refreshPushNotifications();
// 
// 
//     void stopPushChannel(String id, String resourceId);
// 
// 
//     boolean isEnabled();
// }


// Path: services/google/client/src/main/java/eu/hlavki/identity/services/google/client/StopPushChannel.java
import eu.hlavki.identity.services.google.PushNotificationService;
import org.apache.karaf.shell.api.action.Action;
import org.apache.karaf.shell.api.action.Argument;
import org.apache.karaf.shell.api.action.Command;
import org.apache.karaf.shell.api.action.lifecycle.Reference;
import org.apache.karaf.shell.api.action.lifecycle.Service;

package eu.hlavki.identity.services.google.client;


@Service
@Command(scope = "google", name = "stop-channel", description = "Stop channel")
public class StopPushChannel implements Action {

    @Argument(index = 0, name = "id", description = "Channel id", required = true, multiValued = false)
    String id;

    @Argument(index = 1, name = "resourceId", description = "Resource id", required = true, multiValued = false)
    String resourceId;

    @Reference
    PushNotificationService pushService;