0

我正在添加一个 TFS WorkItemSaveListener 但在保存工作项时没有收到任何事件。

public static void main(String[] args) {
        // Connecting to Project
        final TFSTeamProjectCollection collection = ConsoleSettings.connectToTFS();

        // Creating an object of listener
        WorkItemSaveListenerImpl listener = new WorkItemSaveListenerImpl();

        //Adding the listener
        collection.getWorkItemClient().getEventEngine().addWorkItemSaveListener(listener);

        for(;;) {
            // keeping the program alive
            try {

                Thread.sleep(10000);
            }
            catch (InterruptedException exception) {
                // TODO Auto-generated catch block
                exception.printStackTrace();
            }
        } 


    }
4

1 回答 1

0

因为我不知道java sdk,所以只是在这里猜测。但是,addWorkItemSaveListener 事件是否可能仅针对由该特定工作项客户端更改的工作项触发?

你可能需要设置一个soap订阅,或者写一个服务器插件。

C# 设置一个肥皂订阅

对不起,这是错误的事件,但它可能足以给你一个想法。

TfsTeamProjectCollection tpc = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(new Uri(txtServerUrl.Text));
tpc.EnsureAuthenticated();
IEventService eventSrv = tpc.GetService(typeof(IEventService)) as IEventService;
DeliveryPreference delPref = new DeliveryPreference();
delPref.Address = "http://" + System.Environment.MachineName + ":8001/CheckInNotify";
delPref.Schedule = DeliverySchedule.Immediate;
delPref.Type = DeliveryType.Soap;
subscriptionId = eventSrv.SubscribeEvent(System.Environment.UserDomainName + "\\" +     System.Environment.UserName, "CheckInNotify", "", delPref); 
于 2012-11-01T17:54:06.140 回答