We wondered something similar some time ago. From memory... it's submitted as a single job/transaction from the Tridion/TMS perspective and within 2013 there's no concept of retrieving 'bits' of the job.
Although this single TMS job/transaction may then split into several different workflow processes (depends on the Translation Service you're using) Tridion only retrieves the original, full transaction when notified it's been completed successfully or with errors.
You can see the complexity even in your seemingly simple scenario here - how would "that language service" and then Tridion TMS know which collection of content represented langauge 1 or language 2 in order to deem one language at a specific state whilst another at a different state? And, what would happen if part of the original job was passed back and then there was a blocking issue with another part of the same job?
I've just had a quick look at the docs and see this from LiveContent:
In Translation Manager 2.0 SP1, the Translation Job remains In Translation until all SDL TMS jobs are either completed or terminated. If the one or more SDL TMS jobs was terminated, the state of the Translation Job is set to Canceled. If all SDL TMS jobs were completed successfully, the Translation Job is set to Completed.
- Could you manage the specific language collections in a bundle,
you could still collate those together in an "install_x_language" bundle if you need to;
- this way you could submit each language separately and
- have an extension that updates the parent bundle metadata
- indicating which languages are complete and
- which are still in translation
... just a thought.
On the suggestion of intercepting the send of the job - I guess the difference is more related to the process in your case etc.
Assuming you have a job being sent that contains translations for multiple languages then intercepting the send is perfectly feasible as we create/send language jobs from within Workflow today for at least one client.
Obviously I don't know your overall process (or if Worfklow is involved) but pay attention to
- how the editor will see the response to the sending of a job given that you'll likely have to fail that specific send transaction (in favour of sending multiple other ones)
- the fact that the jobs will then come in as and when each language is translated - you may need some mechanism to alert the original sender when the final translation job comes back so they understand when it's truly complete.