1460718284-451c7d7d-be02-4850-9b8f-050607f44519

1. A method of provisioning one or more Network Elements, comprising:
receiving a Customer Service Order (CSO) from a Business Support System, the CSO comprising:
a successfully completed part corresponding to commands successfully completed during a previous execution of the CSO, the previous execution of the CSO causing generation of historical processing data;
an uncompleted part corresponding to commands not successfully completed during the previous execution of the CSO;

calling respective provisioning logic for performing the CSO;
in response to detecting that the performance of the CSO is to be resumed from the previous execution of the CSO, re-executing the CSO by:
directing the successfully completed part of the CSO to a fake environment in which the commands successfully completed during the previous execution of the CSO are fulfilled by retrieving the historical processing data; and
directing commands corresponding to the uncompleted part of the CSO to actual Network Elements.
2. The method of claim 1, wherein the historical processing data is stored as log data.
3. The method of claim 1, further comprising:
generating at least one provisioning command from said CSO; and
executing the at least one provisioning command.
4. The method of claim 3, wherein the successfully completed part of the CSO comprises one or more successfully executed provisioning commands.
5. The method of claim 4, wherein the historical processing data comprises one or more successfully executed provisioning commands and corresponding responses.
6. The method of claim 5, wherein directing the successfully completed part of the CSO to the fake environment comprises:
retrieving a stored response corresponding to a command that was previously successfully executed; and
forwarding the retrieved response to the respective provisioning logic.
7. The method of claim 1, wherein the fake environment is built up by a provisioning system framework configured to host various provisioning logics.
8. The method of claim 1, wherein the fake environment is configured to pretend to be the actual Network Elements to be provisioned based on the stored historical processing data.
9. The method of claim 1, further comprising storing the CSO.
10. The method of claim 9, further comprising:
if the CSO is performed successfully, marking the CSO as completed; and
otherwise, marking the CSO as failed.
11. The method of claim 10, further comprising automatically resuming a CSO marked as failed.
12. A method of resuming a failed Customer Service Order (CSO) for provisioning one or more Network Elements, comprising:
calling a provisioning logic to re-execute the failed CSO, the failed CSO comprising:
a successfully completed part corresponding to commands successfully completed during a previous execution of the failed CSO, the previous execution of the failed CSO causing generation of historical processing data;
an uncompleted part corresponding to commands not successfully completed during the previous execution of the failed CSO;

directing the successfully completed part of the failed CSO to a fake environment in which the commands successfully completed during the previous execution of the failed CSO are fulfilled by retrieving the historical processing data; and
directing commands corresponding to the uncompleted part of the failed CSO to actual Network Elements.
13. The method of claim 12, further comprising retrieving the historical processing data from a log database.
14. An apparatus configured to resume a failed Customer Service Order (CSO) for provisioning one or more Network Elements, the failed CSO comprising a successfully completed part and an uncompleted part, the successfully completed part corresponding to commands successfully completed during a previous execution of the failed CSO, the uncompleted part corresponding to commands not successfully completed during the previous execution of the failed CSO, the previous execution of the CSO causing generation of historical processing data, the apparatus comprising:
a memory for storing the historical processing data;
one or more processing circuits configured to function as a provisioning logic framework, the provisioning logic framework configured to call a provisioning logic in order to re-execute the failed CSO by:
directing the successfully completed part of the failed CSO to a fake environment in which the commands successfully completed during the previous execution of the failed CSO are fulfilled by retrieving the historical processing data; and
directing commands corresponding to an uncompleted part of the failed CSO to actual Network Elements.
15. The apparatus of claim 14, wherein the one or more processing circuits are further configured to retrieve said historical processing data from a log database.
16. The apparatus of claim 14, wherein the one or more processing circuits are further configured to:
generate at least one provisioning command from the failed CSO; and
execute said at least one provisioning command via said provisioning logic.
17. The apparatus of claim 16:
wherein the historical processing data comprises successfully executed provisioning commands and corresponding responses; and
wherein the one or more processing circuits are further configured to direct the successfully completed part of the failed CSO to the fake environment by:
retrieving a stored response corresponding with a command that was previously successfully executed; and
forwarding the retrieved response to the provisioning logic.
18. A provisioning system, comprising:
a memory for storing historical processing data stored from a previous execution of one or more Customer Service Orders (CSOs), at least one of the one or more CSOs being a failed CSO comprising:
a successfully completed part corresponding to commands successfully completed during a previous execution of the failed CSO;
an uncompleted part corresponding to commands not successfully completed during the previous execution of the failed CSO; and

one or more processing circuits configured to function as a provisioning logic framework that:
hosts at least one provisioning logic;
communicates with one or more Network Elements; and
is configured to resume the failed CSO for provisioning the one or more Network Elements by calling a provisioning logic to re-execute the failed CSO, in which:
the successfully completed part of the failed CSO is directed to a fake environment in which the commands successfully completed during the previous execution of the failed CSO are fulfilled by retrieving the historical processing data; and
commands corresponding to an uncompleted part of the failed CSO are directed to actual Network elements.
19. The provisioning system of claim 18, further comprising CSO storage for storing CSOs received from a Business Support System.
20. The provisioning system of claim 19, wherein the provisioning logic framework is further configured to mark a CSO as completed if that CSO is performed successfully and, otherwise, to mark the CSO as failed.
21. The provisioning system of claim 20, wherein the provisioning logic framework is further configured to automatically resume a CSO marked as failed.
22. A computer program product stored on a non-transitory computer readable medium and comprising program instructions that, when executed by one or more processing circuits associated with a provisioning system, cause the provisioning system to provision one or more Network Elements, the computer program instructions causing the provisioning system to:
call respective provisioning logic for performing a Customer Service Order (CSO) received from a Business Support System, the CSO comprising:
a successfully completed part corresponding to commands successfully completed during a previous execution of the CSO, the previous execution of the CSO causing generation of historical processing data;
an uncompleted part corresponding to commands not successfully completed during the previous execution of the CSO;

in response to detecting that the performance of the CSO is to be resumed from the previous execution of the CSO, re-executing the CSO by:
directing the successfully completed part of the CSO to a fake environment in which the commands successfully completed during the previous execution of the CSO are fulfilled by retrieving the historical processing data; and
directing commands corresponding to the uncompleted part of the CSO to actual Network Elements.
23. A computer program product stored on a non-transitory computer readable medium and comprising program instructions that, when executed by one or more processing circuits associated with a provisioning system, cause the provisioning system to resume a failed Customer Service Order (CSO) for provisioning one or more Network Elements, the computer program instructions causing the provisioning system to:
call a provisioning logic for re-executing the failed CSO, the failed CSO comprising a successfully completed part and an uncompleted part, the successfully completed part corresponding to commands successfully completed during a previous execution of the failed CSO, the uncompleted part corresponding to commands not successfully completed during the previous execution of the failed CSO, the previous execution of the CSO causing generation of historical processing data, the re-executing comprising:
directing the successfully completed part of the failed CSO to a fake environment in which the commands successfully completed of the failed CSO are fulfilled by retrieving the historical processing data; and
directing commands corresponding to an uncompleted part of the failed CSO to actual Network Elements.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A fluid valve for use in a downhole environment, comprising:
a first port;
a second port;
a third port;
a chamber fluidly coupled to the second port;
a first slidable sleeve configured to selectively fluidly couple the first port to the chamber and the second port;
a second slidable sleeve configured to selectively fluidly couple the third port to the chamber and the second port; and
a piston forming at least part of the chamber and operatively coupled to the sleeves, wherein the piston is configured to move between:
a first position in which the first sleeve is displaced by the piston to fluidly couple the first port to the chamber and the second port;
a second position in which neither sleeve is displaced by the piston so that neither of the first and third ports is fluidly coupled to the second port; and
a third position in which the second sleeve is displaced by the piston to fluidly couple the third port to the chamber and the second port.
2. The fluid valve of claim 1 further comprising a motor coupled to the piston and configured to selectively cause the piston to engage the first sleeve, engage the second sleeve, or disengage the first and second sleeves.
3. The fluid valve of claim 1 further comprising a seal coupled to the piston and configured to fluidly decouple the chamber from at least one of the first port and the third port.
4. The fluid valve of claim 3 wherein the seal is protected by one of the first and second sleeves when the piston engages the respective sleeve.
5. The fluid valve of claim 1 further comprising a first spring coupled to the first sleeve and configured to urge the first sleeve toward a piston bore.
6. The fluid valve of claim 5 further comprising a second spring coupled to the second sleeve and configured to urge the second sleeve toward the piston bore.
7. The fluid valve of claim 5 wherein the piston engages the first sleeve to equalize a pressure difference between the second port and the first port.
8. The fluid valve of claim 7 wherein the piston disengages the first sleeve to decouple the chamber from the first port.
9. The fluid valve of claim 1 further comprising a pressure sensor configured to determine a pressure difference between the second port and the first port or the third port.
10. The fluid valve of claim 9 wherein the piston engages the first sleeve or the second sleeve in response to the respective pressure difference traversing a threshold.
11. The fluid valve of claim 1 wherein the first port comprises an opening having a diameter of at least 0.218 inch.
12. The fluid valve of claim 1 further comprising a piston bore encompassing at least the chamber, wherein the piston bore has an inner diameter substantially equal to an inner diameter of the first sleeve.
13. The fluid valve of claim 1 wherein the first port comprises an opening directed radially outward from a piston bore.
14. A method of routing fluid in a downhole environment, comprising:
moving a piston and a chamber in a first direction to displace a first sleeve;
fluidly coupling the chamber to a first port in response to the displacement of the first sleeve;
moving the piston and the chamber in a second direction to fluidly decouple the chamber from the first port and to displace a second sleeve;
fluidly coupling the chamber to a second port in response to the displacement of the second sleeve; and
moving the piston and the chamber in the first direction to return the second sleeve to fluidly decouple the second port from the chamber.
15. The method of claim 14 further comprising determining a pressure difference between the chamber and one of the first and second ports.
16. The method of claim 14 wherein moving the piston and the chamber is in response to determining a pressure difference between the chamber and one of the first and second ports.
17. The method of claim 14 wherein the chamber comprises space between the piston and a piston bore.
18. The method of claim 14 further comprising moving the piston and the chamber to a neutral position in which the chamber is fluidly decoupled from the first and second ports.
19. The method of claim 14 wherein the piston comprises a seal between the chamber and one of the first and second ports.
20. The method of claim 14 further comprising:
disengaging the first sleeve to fluidly decouple the first port from the chamber; and
disengaging the second sleeve to fluidly decouple the second port from the chamber.