Poniżej przedstawiono opis wczytywania programu obsługi zadań (firmy Autodesk i podmiotów trzecich) przez Procesor zadań podczas uruchamiania:
2012 | 2013 | 2014 | |
---|---|---|---|
Autodesk Vault Basic |
![]() |
||
Autodesk Vault Workgroup |
![]() |
![]() |
![]() |
Autodesk Vault Collaboration |
![]() |
![]() |
![]() |
Autodesk Vault Professional |
![]() |
![]() |
![]() |
Rozszerzenia programów obsługi zadań innych firm
Każde rozszerzenie dostarczane przez inną firmę powinno się znajdować we własnym folderze w katalogu rozszerzeń:
%allusersprofile%\Autodesk\Vault 2012\Extensions\
Gdyby na przykład istniało rozszerzenie programu obsługi o nazwie „JobHandlerSample”, mogłoby znajdować się w katalogu %allusersprofile%\Autodesk\Vault 2013\Extensions\JobHandlerSample.
W odniesieniu do każdego folderu w katalogu rozszerzeń Procesor zadań sprawdza, czy istnieje plik konfiguracyjny. Plik konfiguracyjny jest zwykłym plikiem tekstowym, który może mieć dowolną nazwę, ale musi kończyć się rozszerzeniem .vcet.config. Jeśli plik konfiguracyjny nie istnieje, rozszerzenia nie da się wczytać. Oto zawartość przykładowego pliku konfiguracyjnego JobHandlerSample.vcet.config:
<configuration> <connectivity.ExtensionSettings2> <assembly>JobHandlerSample</assembly> <extensionType>JobProcessor</extensionType> </connectivity.ExtensionSettings2> </configuration>
Element assembly (zespół) określa nazwę pliku dll rozszerzenia. Dlatego w powyższym przykładzie plik dll rozszerzenia nosi nazwę JobHandlerSample.dll. Typ rozszerzenia JobProcessor wskazuje, że jest to rozszerzenie dla procesora zadań (w tym katalogu mogą też się znajdować rozszerzenia innych typów: WebService i VaultClient).
Wczytany jest zespół rozszerzenia (w naszym przykładzie jest to JobHandlerSample.dll). Po wczytaniu przeprowadzone zostają poniższe testy:
namespace JobHandlerSample { public class JobHandlerSample : IJobHandler { public bool CanProcess(string strJobType) { return strJobType.Equals("jobhandlersample"); } public JobOutcome Execute(IJobProcessorServices context, IJob job) { return JobOutcome.Success; } } }
Musi istnieć dokładnie jeden typ public w zespole, który implementuje IJobHandler. W przeciwnym razie rozszerzenia nie uda się wczytać. Wystąpienie tego typu uzyskuje realizację.
Konfiguracja programu obsługi zadań
Plik konfiguracyjny programu obsługi zadań to plik XML zawierający informacje konfiguracyjne Procesora zadań. Znajduje się w tym samym katalogu co plik JobProcessor.exe (zazwyczaj C:\Program Files\Autodesk\Vault Professional [rok]\Explorer) i nosi nazwę JobProcessor.exe.config. Odpowiednia sekcja dotycząca konfiguracji programów obsługi zadań znajduje się poniżej sekcji configuration\connectivityExplorer\jobHandlers. W tej sekcji pliku xml każdy element jobHandler reprezentuje jeden program obsługi zadań. Elementy xml jobHandler mają następującą formę:
<jobHandler class="jobType" handler="NameOfTypeImplementingIJobHandler"/>
Gdzie:
W rezultacie prawidłowy element jobHandler w przypadku naszego przykładowego rozszerzenia rozszerzenie miałby postać:
<jobHandler class="jobhandlersample" handler="JobHandlerSample.JobHandlerSample, JobHandlerSample"/>
W pliku JobProcessor.exe.config można zauważyć, że istnieje już wpis jobHandler dla każdego wbudowanego programu obsługi programu Autodesk. Wbudowane programy obsługi zostają wczytane tylko wtedy, gdy istnieje dla nich wpis jobHandler. Wbudowane pliki dll znajdują się w tym samym katalogu co JobProcessor.exe.
Sprawdź, czy programy obsługi zadań są włączone.
Wyżej wymienione informacje konfiguracyjne służą do kojarzenia typu zadania z określonym programem obsługi zadań. Po wykonaniu tej czynności poszczególne programy obsługi zadania będą otrzymywać zapytanie o możliwość przetworzenia określonego typu zadania. Program obsługi zadań odpowiada, implementując metodę interfejsu IJobHandler.CanProcess. W tym czasie program obsługi zadań powinien sprawdzić, czy dysponuje wszystkimi danymi wymaganymi do przetwarzania zadań danego typu (na przykład niektóre programy obsługi zadań służące do tworzenia pliku dwf sprawdzają, czy zainstalowany jest program Inventor).
W przypadku sprawdzania, które typy zadań są właśnie przetwarzane przez Procesor zadań (za pomocą menu Administracja -> Typy zadań...), każdy wpis na liście oznacza, że program obsługi zadań dla tego typu zadania został pomyślnie wczytany. Jeśli dana pozycja jest zaznaczona, oznacza to, że program obsługi zadań jest włączony (czyli że jego implementacja IJobHandler.CanProcess zwróciła wartość „true”). Aby Procesor zadań ponownie przesłał zapytanie do programu obsługi zadań o możliwość przetwarzania, użytkownik musi zamknąć Procesor zadań i uruchomić go ponownie.
Gdy wszystkie programy obsługi zadań zostały wczytane i otrzymały wszystkie zapytania, Procesor zadań jest gotowy do rozpoczęcia wyciągania zadań z kolejki i ich przetwarzania.
Przykładowy program obsługi zadań
Poniżej załączony jest przykładowy program obsługi zadań napisany w języku C#. Nie wykonuje on żadnego przydatnego działania (wywołuje okna dialogowe, gdy zostają wywołane metody CanProcess i Execute), ale może posłużyć jako szablon do tworzenia programów obsługi zadań.