Class CpSolverResponse.Builder

  • All Implemented Interfaces:
    CpSolverResponseOrBuilder, com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, java.lang.Cloneable
    Enclosing class:
    CpSolverResponse

    public static final class CpSolverResponse.Builder
    extends com.google.protobuf.GeneratedMessageV3.Builder<CpSolverResponse.Builder>
    implements CpSolverResponseOrBuilder
     The response returned by a solver trying to solve a CpModelProto.
    
     Next id: 31
     
    Protobuf type operations_research.sat.CpSolverResponse
    • Method Detail

      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<CpSolverResponse.Builder>
      • clear

        public CpSolverResponse.Builder clear()
        Specified by:
        clear in interface com.google.protobuf.Message.Builder
        Specified by:
        clear in interface com.google.protobuf.MessageLite.Builder
        Overrides:
        clear in class com.google.protobuf.GeneratedMessageV3.Builder<CpSolverResponse.Builder>
      • getDescriptorForType

        public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
        Specified by:
        getDescriptorForType in interface com.google.protobuf.Message.Builder
        Specified by:
        getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
        Overrides:
        getDescriptorForType in class com.google.protobuf.GeneratedMessageV3.Builder<CpSolverResponse.Builder>
      • getDefaultInstanceForType

        public CpSolverResponse getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
      • build

        public CpSolverResponse build()
        Specified by:
        build in interface com.google.protobuf.Message.Builder
        Specified by:
        build in interface com.google.protobuf.MessageLite.Builder
      • buildPartial

        public CpSolverResponse buildPartial()
        Specified by:
        buildPartial in interface com.google.protobuf.Message.Builder
        Specified by:
        buildPartial in interface com.google.protobuf.MessageLite.Builder
      • clone

        public CpSolverResponse.Builder clone()
        Specified by:
        clone in interface com.google.protobuf.Message.Builder
        Specified by:
        clone in interface com.google.protobuf.MessageLite.Builder
        Overrides:
        clone in class com.google.protobuf.GeneratedMessageV3.Builder<CpSolverResponse.Builder>
      • setField

        public CpSolverResponse.Builder setField​(com.google.protobuf.Descriptors.FieldDescriptor field,
                                                 java.lang.Object value)
        Specified by:
        setField in interface com.google.protobuf.Message.Builder
        Overrides:
        setField in class com.google.protobuf.GeneratedMessageV3.Builder<CpSolverResponse.Builder>
      • clearField

        public CpSolverResponse.Builder clearField​(com.google.protobuf.Descriptors.FieldDescriptor field)
        Specified by:
        clearField in interface com.google.protobuf.Message.Builder
        Overrides:
        clearField in class com.google.protobuf.GeneratedMessageV3.Builder<CpSolverResponse.Builder>
      • clearOneof

        public CpSolverResponse.Builder clearOneof​(com.google.protobuf.Descriptors.OneofDescriptor oneof)
        Specified by:
        clearOneof in interface com.google.protobuf.Message.Builder
        Overrides:
        clearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<CpSolverResponse.Builder>
      • setRepeatedField

        public CpSolverResponse.Builder setRepeatedField​(com.google.protobuf.Descriptors.FieldDescriptor field,
                                                         int index,
                                                         java.lang.Object value)
        Specified by:
        setRepeatedField in interface com.google.protobuf.Message.Builder
        Overrides:
        setRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<CpSolverResponse.Builder>
      • addRepeatedField

        public CpSolverResponse.Builder addRepeatedField​(com.google.protobuf.Descriptors.FieldDescriptor field,
                                                         java.lang.Object value)
        Specified by:
        addRepeatedField in interface com.google.protobuf.Message.Builder
        Overrides:
        addRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<CpSolverResponse.Builder>
      • mergeFrom

        public CpSolverResponse.Builder mergeFrom​(com.google.protobuf.Message other)
        Specified by:
        mergeFrom in interface com.google.protobuf.Message.Builder
        Overrides:
        mergeFrom in class com.google.protobuf.AbstractMessage.Builder<CpSolverResponse.Builder>
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<CpSolverResponse.Builder>
      • mergeFrom

        public CpSolverResponse.Builder mergeFrom​(com.google.protobuf.CodedInputStream input,
                                                  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                           throws java.io.IOException
        Specified by:
        mergeFrom in interface com.google.protobuf.Message.Builder
        Specified by:
        mergeFrom in interface com.google.protobuf.MessageLite.Builder
        Overrides:
        mergeFrom in class com.google.protobuf.AbstractMessage.Builder<CpSolverResponse.Builder>
        Throws:
        java.io.IOException
      • getStatusValue

        public int getStatusValue()
         The status of the solve.
         
        .operations_research.sat.CpSolverStatus status = 1;
        Specified by:
        getStatusValue in interface CpSolverResponseOrBuilder
        Returns:
        The enum numeric value on the wire for status.
      • setStatusValue

        public CpSolverResponse.Builder setStatusValue​(int value)
         The status of the solve.
         
        .operations_research.sat.CpSolverStatus status = 1;
        Parameters:
        value - The enum numeric value on the wire for status to set.
        Returns:
        This builder for chaining.
      • setStatus

        public CpSolverResponse.Builder setStatus​(CpSolverStatus value)
         The status of the solve.
         
        .operations_research.sat.CpSolverStatus status = 1;
        Parameters:
        value - The status to set.
        Returns:
        This builder for chaining.
      • clearStatus

        public CpSolverResponse.Builder clearStatus()
         The status of the solve.
         
        .operations_research.sat.CpSolverStatus status = 1;
        Returns:
        This builder for chaining.
      • getSolutionList

        public java.util.List<java.lang.Long> getSolutionList()
         A feasible solution to the given problem. Depending on the returned status
         it may be optimal or just feasible. This is in one-to-one correspondence
         with a CpModelProto::variables repeated field and list the values of all
         the variables.
         
        repeated int64 solution = 2;
        Specified by:
        getSolutionList in interface CpSolverResponseOrBuilder
        Returns:
        A list containing the solution.
      • getSolutionCount

        public int getSolutionCount()
         A feasible solution to the given problem. Depending on the returned status
         it may be optimal or just feasible. This is in one-to-one correspondence
         with a CpModelProto::variables repeated field and list the values of all
         the variables.
         
        repeated int64 solution = 2;
        Specified by:
        getSolutionCount in interface CpSolverResponseOrBuilder
        Returns:
        The count of solution.
      • getSolution

        public long getSolution​(int index)
         A feasible solution to the given problem. Depending on the returned status
         it may be optimal or just feasible. This is in one-to-one correspondence
         with a CpModelProto::variables repeated field and list the values of all
         the variables.
         
        repeated int64 solution = 2;
        Specified by:
        getSolution in interface CpSolverResponseOrBuilder
        Parameters:
        index - The index of the element to return.
        Returns:
        The solution at the given index.
      • setSolution

        public CpSolverResponse.Builder setSolution​(int index,
                                                    long value)
         A feasible solution to the given problem. Depending on the returned status
         it may be optimal or just feasible. This is in one-to-one correspondence
         with a CpModelProto::variables repeated field and list the values of all
         the variables.
         
        repeated int64 solution = 2;
        Parameters:
        index - The index to set the value at.
        value - The solution to set.
        Returns:
        This builder for chaining.
      • addSolution

        public CpSolverResponse.Builder addSolution​(long value)
         A feasible solution to the given problem. Depending on the returned status
         it may be optimal or just feasible. This is in one-to-one correspondence
         with a CpModelProto::variables repeated field and list the values of all
         the variables.
         
        repeated int64 solution = 2;
        Parameters:
        value - The solution to add.
        Returns:
        This builder for chaining.
      • addAllSolution

        public CpSolverResponse.Builder addAllSolution​(java.lang.Iterable<? extends java.lang.Long> values)
         A feasible solution to the given problem. Depending on the returned status
         it may be optimal or just feasible. This is in one-to-one correspondence
         with a CpModelProto::variables repeated field and list the values of all
         the variables.
         
        repeated int64 solution = 2;
        Parameters:
        values - The solution to add.
        Returns:
        This builder for chaining.
      • clearSolution

        public CpSolverResponse.Builder clearSolution()
         A feasible solution to the given problem. Depending on the returned status
         it may be optimal or just feasible. This is in one-to-one correspondence
         with a CpModelProto::variables repeated field and list the values of all
         the variables.
         
        repeated int64 solution = 2;
        Returns:
        This builder for chaining.
      • getObjectiveValue

        public double getObjectiveValue()
         Only make sense for an optimization problem. The objective value of the
         returned solution if it is non-empty. If there is no solution, then for a
         minimization problem, this will be an upper-bound of the objective of any
         feasible solution, and a lower-bound for a maximization problem.
         
        double objective_value = 3;
        Specified by:
        getObjectiveValue in interface CpSolverResponseOrBuilder
        Returns:
        The objectiveValue.
      • setObjectiveValue

        public CpSolverResponse.Builder setObjectiveValue​(double value)
         Only make sense for an optimization problem. The objective value of the
         returned solution if it is non-empty. If there is no solution, then for a
         minimization problem, this will be an upper-bound of the objective of any
         feasible solution, and a lower-bound for a maximization problem.
         
        double objective_value = 3;
        Parameters:
        value - The objectiveValue to set.
        Returns:
        This builder for chaining.
      • clearObjectiveValue

        public CpSolverResponse.Builder clearObjectiveValue()
         Only make sense for an optimization problem. The objective value of the
         returned solution if it is non-empty. If there is no solution, then for a
         minimization problem, this will be an upper-bound of the objective of any
         feasible solution, and a lower-bound for a maximization problem.
         
        double objective_value = 3;
        Returns:
        This builder for chaining.
      • getBestObjectiveBound

        public double getBestObjectiveBound()
         Only make sense for an optimization problem. A proven lower-bound on the
         objective for a minimization problem, or a proven upper-bound for a
         maximization problem.
         
        double best_objective_bound = 4;
        Specified by:
        getBestObjectiveBound in interface CpSolverResponseOrBuilder
        Returns:
        The bestObjectiveBound.
      • setBestObjectiveBound

        public CpSolverResponse.Builder setBestObjectiveBound​(double value)
         Only make sense for an optimization problem. A proven lower-bound on the
         objective for a minimization problem, or a proven upper-bound for a
         maximization problem.
         
        double best_objective_bound = 4;
        Parameters:
        value - The bestObjectiveBound to set.
        Returns:
        This builder for chaining.
      • clearBestObjectiveBound

        public CpSolverResponse.Builder clearBestObjectiveBound()
         Only make sense for an optimization problem. A proven lower-bound on the
         objective for a minimization problem, or a proven upper-bound for a
         maximization problem.
         
        double best_objective_bound = 4;
        Returns:
        This builder for chaining.
      • getAdditionalSolutionsList

        public java.util.List<CpSolverSolution> getAdditionalSolutionsList()
         If the parameter fill_additional_solutions_in_response is set, then we
         copy all the solutions from our internal solution pool here.
        
         Note that the one returned in the solution field will likely appear here
         too. Do not rely on the solutions order as it depends on our internal
         representation (after postsolve).
         
        repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;
        Specified by:
        getAdditionalSolutionsList in interface CpSolverResponseOrBuilder
      • getAdditionalSolutionsCount

        public int getAdditionalSolutionsCount()
         If the parameter fill_additional_solutions_in_response is set, then we
         copy all the solutions from our internal solution pool here.
        
         Note that the one returned in the solution field will likely appear here
         too. Do not rely on the solutions order as it depends on our internal
         representation (after postsolve).
         
        repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;
        Specified by:
        getAdditionalSolutionsCount in interface CpSolverResponseOrBuilder
      • getAdditionalSolutions

        public CpSolverSolution getAdditionalSolutions​(int index)
         If the parameter fill_additional_solutions_in_response is set, then we
         copy all the solutions from our internal solution pool here.
        
         Note that the one returned in the solution field will likely appear here
         too. Do not rely on the solutions order as it depends on our internal
         representation (after postsolve).
         
        repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;
        Specified by:
        getAdditionalSolutions in interface CpSolverResponseOrBuilder
      • setAdditionalSolutions

        public CpSolverResponse.Builder setAdditionalSolutions​(int index,
                                                               CpSolverSolution value)
         If the parameter fill_additional_solutions_in_response is set, then we
         copy all the solutions from our internal solution pool here.
        
         Note that the one returned in the solution field will likely appear here
         too. Do not rely on the solutions order as it depends on our internal
         representation (after postsolve).
         
        repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;
      • setAdditionalSolutions

        public CpSolverResponse.Builder setAdditionalSolutions​(int index,
                                                               CpSolverSolution.Builder builderForValue)
         If the parameter fill_additional_solutions_in_response is set, then we
         copy all the solutions from our internal solution pool here.
        
         Note that the one returned in the solution field will likely appear here
         too. Do not rely on the solutions order as it depends on our internal
         representation (after postsolve).
         
        repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;
      • addAdditionalSolutions

        public CpSolverResponse.Builder addAdditionalSolutions​(CpSolverSolution value)
         If the parameter fill_additional_solutions_in_response is set, then we
         copy all the solutions from our internal solution pool here.
        
         Note that the one returned in the solution field will likely appear here
         too. Do not rely on the solutions order as it depends on our internal
         representation (after postsolve).
         
        repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;
      • addAdditionalSolutions

        public CpSolverResponse.Builder addAdditionalSolutions​(int index,
                                                               CpSolverSolution value)
         If the parameter fill_additional_solutions_in_response is set, then we
         copy all the solutions from our internal solution pool here.
        
         Note that the one returned in the solution field will likely appear here
         too. Do not rely on the solutions order as it depends on our internal
         representation (after postsolve).
         
        repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;
      • addAdditionalSolutions

        public CpSolverResponse.Builder addAdditionalSolutions​(CpSolverSolution.Builder builderForValue)
         If the parameter fill_additional_solutions_in_response is set, then we
         copy all the solutions from our internal solution pool here.
        
         Note that the one returned in the solution field will likely appear here
         too. Do not rely on the solutions order as it depends on our internal
         representation (after postsolve).
         
        repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;
      • addAdditionalSolutions

        public CpSolverResponse.Builder addAdditionalSolutions​(int index,
                                                               CpSolverSolution.Builder builderForValue)
         If the parameter fill_additional_solutions_in_response is set, then we
         copy all the solutions from our internal solution pool here.
        
         Note that the one returned in the solution field will likely appear here
         too. Do not rely on the solutions order as it depends on our internal
         representation (after postsolve).
         
        repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;
      • addAllAdditionalSolutions

        public CpSolverResponse.Builder addAllAdditionalSolutions​(java.lang.Iterable<? extends CpSolverSolution> values)
         If the parameter fill_additional_solutions_in_response is set, then we
         copy all the solutions from our internal solution pool here.
        
         Note that the one returned in the solution field will likely appear here
         too. Do not rely on the solutions order as it depends on our internal
         representation (after postsolve).
         
        repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;
      • clearAdditionalSolutions

        public CpSolverResponse.Builder clearAdditionalSolutions()
         If the parameter fill_additional_solutions_in_response is set, then we
         copy all the solutions from our internal solution pool here.
        
         Note that the one returned in the solution field will likely appear here
         too. Do not rely on the solutions order as it depends on our internal
         representation (after postsolve).
         
        repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;
      • removeAdditionalSolutions

        public CpSolverResponse.Builder removeAdditionalSolutions​(int index)
         If the parameter fill_additional_solutions_in_response is set, then we
         copy all the solutions from our internal solution pool here.
        
         Note that the one returned in the solution field will likely appear here
         too. Do not rely on the solutions order as it depends on our internal
         representation (after postsolve).
         
        repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;
      • getAdditionalSolutionsBuilder

        public CpSolverSolution.Builder getAdditionalSolutionsBuilder​(int index)
         If the parameter fill_additional_solutions_in_response is set, then we
         copy all the solutions from our internal solution pool here.
        
         Note that the one returned in the solution field will likely appear here
         too. Do not rely on the solutions order as it depends on our internal
         representation (after postsolve).
         
        repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;
      • getAdditionalSolutionsOrBuilder

        public CpSolverSolutionOrBuilder getAdditionalSolutionsOrBuilder​(int index)
         If the parameter fill_additional_solutions_in_response is set, then we
         copy all the solutions from our internal solution pool here.
        
         Note that the one returned in the solution field will likely appear here
         too. Do not rely on the solutions order as it depends on our internal
         representation (after postsolve).
         
        repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;
        Specified by:
        getAdditionalSolutionsOrBuilder in interface CpSolverResponseOrBuilder
      • getAdditionalSolutionsOrBuilderList

        public java.util.List<? extends CpSolverSolutionOrBuilder> getAdditionalSolutionsOrBuilderList()
         If the parameter fill_additional_solutions_in_response is set, then we
         copy all the solutions from our internal solution pool here.
        
         Note that the one returned in the solution field will likely appear here
         too. Do not rely on the solutions order as it depends on our internal
         representation (after postsolve).
         
        repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;
        Specified by:
        getAdditionalSolutionsOrBuilderList in interface CpSolverResponseOrBuilder
      • addAdditionalSolutionsBuilder

        public CpSolverSolution.Builder addAdditionalSolutionsBuilder()
         If the parameter fill_additional_solutions_in_response is set, then we
         copy all the solutions from our internal solution pool here.
        
         Note that the one returned in the solution field will likely appear here
         too. Do not rely on the solutions order as it depends on our internal
         representation (after postsolve).
         
        repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;
      • addAdditionalSolutionsBuilder

        public CpSolverSolution.Builder addAdditionalSolutionsBuilder​(int index)
         If the parameter fill_additional_solutions_in_response is set, then we
         copy all the solutions from our internal solution pool here.
        
         Note that the one returned in the solution field will likely appear here
         too. Do not rely on the solutions order as it depends on our internal
         representation (after postsolve).
         
        repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;
      • getAdditionalSolutionsBuilderList

        public java.util.List<CpSolverSolution.Builder> getAdditionalSolutionsBuilderList()
         If the parameter fill_additional_solutions_in_response is set, then we
         copy all the solutions from our internal solution pool here.
        
         Note that the one returned in the solution field will likely appear here
         too. Do not rely on the solutions order as it depends on our internal
         representation (after postsolve).
         
        repeated .operations_research.sat.CpSolverSolution additional_solutions = 27;
      • getTightenedVariablesList

        public java.util.List<IntegerVariableProto> getTightenedVariablesList()
         Advanced usage.
        
         If the option fill_tightened_domains_in_response is set, then this field
         will be a copy of the CpModelProto.variables where each domain has been
         reduced using the information the solver was able to derive. Note that this
         is only filled with the info derived during a normal search and we do not
         have any dedicated algorithm to improve it.
        
         If the problem is a feasibility problem, then these bounds will be valid
         for any feasible solution. If the problem is an optimization problem, then
         these bounds will only be valid for any OPTIMAL solutions, it can exclude
         sub-optimal feasible ones.
         
        repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
        Specified by:
        getTightenedVariablesList in interface CpSolverResponseOrBuilder
      • getTightenedVariablesCount

        public int getTightenedVariablesCount()
         Advanced usage.
        
         If the option fill_tightened_domains_in_response is set, then this field
         will be a copy of the CpModelProto.variables where each domain has been
         reduced using the information the solver was able to derive. Note that this
         is only filled with the info derived during a normal search and we do not
         have any dedicated algorithm to improve it.
        
         If the problem is a feasibility problem, then these bounds will be valid
         for any feasible solution. If the problem is an optimization problem, then
         these bounds will only be valid for any OPTIMAL solutions, it can exclude
         sub-optimal feasible ones.
         
        repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
        Specified by:
        getTightenedVariablesCount in interface CpSolverResponseOrBuilder
      • getTightenedVariables

        public IntegerVariableProto getTightenedVariables​(int index)
         Advanced usage.
        
         If the option fill_tightened_domains_in_response is set, then this field
         will be a copy of the CpModelProto.variables where each domain has been
         reduced using the information the solver was able to derive. Note that this
         is only filled with the info derived during a normal search and we do not
         have any dedicated algorithm to improve it.
        
         If the problem is a feasibility problem, then these bounds will be valid
         for any feasible solution. If the problem is an optimization problem, then
         these bounds will only be valid for any OPTIMAL solutions, it can exclude
         sub-optimal feasible ones.
         
        repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
        Specified by:
        getTightenedVariables in interface CpSolverResponseOrBuilder
      • setTightenedVariables

        public CpSolverResponse.Builder setTightenedVariables​(int index,
                                                              IntegerVariableProto value)
         Advanced usage.
        
         If the option fill_tightened_domains_in_response is set, then this field
         will be a copy of the CpModelProto.variables where each domain has been
         reduced using the information the solver was able to derive. Note that this
         is only filled with the info derived during a normal search and we do not
         have any dedicated algorithm to improve it.
        
         If the problem is a feasibility problem, then these bounds will be valid
         for any feasible solution. If the problem is an optimization problem, then
         these bounds will only be valid for any OPTIMAL solutions, it can exclude
         sub-optimal feasible ones.
         
        repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
      • setTightenedVariables

        public CpSolverResponse.Builder setTightenedVariables​(int index,
                                                              IntegerVariableProto.Builder builderForValue)
         Advanced usage.
        
         If the option fill_tightened_domains_in_response is set, then this field
         will be a copy of the CpModelProto.variables where each domain has been
         reduced using the information the solver was able to derive. Note that this
         is only filled with the info derived during a normal search and we do not
         have any dedicated algorithm to improve it.
        
         If the problem is a feasibility problem, then these bounds will be valid
         for any feasible solution. If the problem is an optimization problem, then
         these bounds will only be valid for any OPTIMAL solutions, it can exclude
         sub-optimal feasible ones.
         
        repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
      • addTightenedVariables

        public CpSolverResponse.Builder addTightenedVariables​(IntegerVariableProto value)
         Advanced usage.
        
         If the option fill_tightened_domains_in_response is set, then this field
         will be a copy of the CpModelProto.variables where each domain has been
         reduced using the information the solver was able to derive. Note that this
         is only filled with the info derived during a normal search and we do not
         have any dedicated algorithm to improve it.
        
         If the problem is a feasibility problem, then these bounds will be valid
         for any feasible solution. If the problem is an optimization problem, then
         these bounds will only be valid for any OPTIMAL solutions, it can exclude
         sub-optimal feasible ones.
         
        repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
      • addTightenedVariables

        public CpSolverResponse.Builder addTightenedVariables​(int index,
                                                              IntegerVariableProto value)
         Advanced usage.
        
         If the option fill_tightened_domains_in_response is set, then this field
         will be a copy of the CpModelProto.variables where each domain has been
         reduced using the information the solver was able to derive. Note that this
         is only filled with the info derived during a normal search and we do not
         have any dedicated algorithm to improve it.
        
         If the problem is a feasibility problem, then these bounds will be valid
         for any feasible solution. If the problem is an optimization problem, then
         these bounds will only be valid for any OPTIMAL solutions, it can exclude
         sub-optimal feasible ones.
         
        repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
      • addTightenedVariables

        public CpSolverResponse.Builder addTightenedVariables​(IntegerVariableProto.Builder builderForValue)
         Advanced usage.
        
         If the option fill_tightened_domains_in_response is set, then this field
         will be a copy of the CpModelProto.variables where each domain has been
         reduced using the information the solver was able to derive. Note that this
         is only filled with the info derived during a normal search and we do not
         have any dedicated algorithm to improve it.
        
         If the problem is a feasibility problem, then these bounds will be valid
         for any feasible solution. If the problem is an optimization problem, then
         these bounds will only be valid for any OPTIMAL solutions, it can exclude
         sub-optimal feasible ones.
         
        repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
      • addTightenedVariables

        public CpSolverResponse.Builder addTightenedVariables​(int index,
                                                              IntegerVariableProto.Builder builderForValue)
         Advanced usage.
        
         If the option fill_tightened_domains_in_response is set, then this field
         will be a copy of the CpModelProto.variables where each domain has been
         reduced using the information the solver was able to derive. Note that this
         is only filled with the info derived during a normal search and we do not
         have any dedicated algorithm to improve it.
        
         If the problem is a feasibility problem, then these bounds will be valid
         for any feasible solution. If the problem is an optimization problem, then
         these bounds will only be valid for any OPTIMAL solutions, it can exclude
         sub-optimal feasible ones.
         
        repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
      • addAllTightenedVariables

        public CpSolverResponse.Builder addAllTightenedVariables​(java.lang.Iterable<? extends IntegerVariableProto> values)
         Advanced usage.
        
         If the option fill_tightened_domains_in_response is set, then this field
         will be a copy of the CpModelProto.variables where each domain has been
         reduced using the information the solver was able to derive. Note that this
         is only filled with the info derived during a normal search and we do not
         have any dedicated algorithm to improve it.
        
         If the problem is a feasibility problem, then these bounds will be valid
         for any feasible solution. If the problem is an optimization problem, then
         these bounds will only be valid for any OPTIMAL solutions, it can exclude
         sub-optimal feasible ones.
         
        repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
      • clearTightenedVariables

        public CpSolverResponse.Builder clearTightenedVariables()
         Advanced usage.
        
         If the option fill_tightened_domains_in_response is set, then this field
         will be a copy of the CpModelProto.variables where each domain has been
         reduced using the information the solver was able to derive. Note that this
         is only filled with the info derived during a normal search and we do not
         have any dedicated algorithm to improve it.
        
         If the problem is a feasibility problem, then these bounds will be valid
         for any feasible solution. If the problem is an optimization problem, then
         these bounds will only be valid for any OPTIMAL solutions, it can exclude
         sub-optimal feasible ones.
         
        repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
      • removeTightenedVariables

        public CpSolverResponse.Builder removeTightenedVariables​(int index)
         Advanced usage.
        
         If the option fill_tightened_domains_in_response is set, then this field
         will be a copy of the CpModelProto.variables where each domain has been
         reduced using the information the solver was able to derive. Note that this
         is only filled with the info derived during a normal search and we do not
         have any dedicated algorithm to improve it.
        
         If the problem is a feasibility problem, then these bounds will be valid
         for any feasible solution. If the problem is an optimization problem, then
         these bounds will only be valid for any OPTIMAL solutions, it can exclude
         sub-optimal feasible ones.
         
        repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
      • getTightenedVariablesBuilder

        public IntegerVariableProto.Builder getTightenedVariablesBuilder​(int index)
         Advanced usage.
        
         If the option fill_tightened_domains_in_response is set, then this field
         will be a copy of the CpModelProto.variables where each domain has been
         reduced using the information the solver was able to derive. Note that this
         is only filled with the info derived during a normal search and we do not
         have any dedicated algorithm to improve it.
        
         If the problem is a feasibility problem, then these bounds will be valid
         for any feasible solution. If the problem is an optimization problem, then
         these bounds will only be valid for any OPTIMAL solutions, it can exclude
         sub-optimal feasible ones.
         
        repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
      • getTightenedVariablesOrBuilder

        public IntegerVariableProtoOrBuilder getTightenedVariablesOrBuilder​(int index)
         Advanced usage.
        
         If the option fill_tightened_domains_in_response is set, then this field
         will be a copy of the CpModelProto.variables where each domain has been
         reduced using the information the solver was able to derive. Note that this
         is only filled with the info derived during a normal search and we do not
         have any dedicated algorithm to improve it.
        
         If the problem is a feasibility problem, then these bounds will be valid
         for any feasible solution. If the problem is an optimization problem, then
         these bounds will only be valid for any OPTIMAL solutions, it can exclude
         sub-optimal feasible ones.
         
        repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
        Specified by:
        getTightenedVariablesOrBuilder in interface CpSolverResponseOrBuilder
      • getTightenedVariablesOrBuilderList

        public java.util.List<? extends IntegerVariableProtoOrBuilder> getTightenedVariablesOrBuilderList()
         Advanced usage.
        
         If the option fill_tightened_domains_in_response is set, then this field
         will be a copy of the CpModelProto.variables where each domain has been
         reduced using the information the solver was able to derive. Note that this
         is only filled with the info derived during a normal search and we do not
         have any dedicated algorithm to improve it.
        
         If the problem is a feasibility problem, then these bounds will be valid
         for any feasible solution. If the problem is an optimization problem, then
         these bounds will only be valid for any OPTIMAL solutions, it can exclude
         sub-optimal feasible ones.
         
        repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
        Specified by:
        getTightenedVariablesOrBuilderList in interface CpSolverResponseOrBuilder
      • addTightenedVariablesBuilder

        public IntegerVariableProto.Builder addTightenedVariablesBuilder()
         Advanced usage.
        
         If the option fill_tightened_domains_in_response is set, then this field
         will be a copy of the CpModelProto.variables where each domain has been
         reduced using the information the solver was able to derive. Note that this
         is only filled with the info derived during a normal search and we do not
         have any dedicated algorithm to improve it.
        
         If the problem is a feasibility problem, then these bounds will be valid
         for any feasible solution. If the problem is an optimization problem, then
         these bounds will only be valid for any OPTIMAL solutions, it can exclude
         sub-optimal feasible ones.
         
        repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
      • addTightenedVariablesBuilder

        public IntegerVariableProto.Builder addTightenedVariablesBuilder​(int index)
         Advanced usage.
        
         If the option fill_tightened_domains_in_response is set, then this field
         will be a copy of the CpModelProto.variables where each domain has been
         reduced using the information the solver was able to derive. Note that this
         is only filled with the info derived during a normal search and we do not
         have any dedicated algorithm to improve it.
        
         If the problem is a feasibility problem, then these bounds will be valid
         for any feasible solution. If the problem is an optimization problem, then
         these bounds will only be valid for any OPTIMAL solutions, it can exclude
         sub-optimal feasible ones.
         
        repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
      • getTightenedVariablesBuilderList

        public java.util.List<IntegerVariableProto.Builder> getTightenedVariablesBuilderList()
         Advanced usage.
        
         If the option fill_tightened_domains_in_response is set, then this field
         will be a copy of the CpModelProto.variables where each domain has been
         reduced using the information the solver was able to derive. Note that this
         is only filled with the info derived during a normal search and we do not
         have any dedicated algorithm to improve it.
        
         If the problem is a feasibility problem, then these bounds will be valid
         for any feasible solution. If the problem is an optimization problem, then
         these bounds will only be valid for any OPTIMAL solutions, it can exclude
         sub-optimal feasible ones.
         
        repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
      • getSufficientAssumptionsForInfeasibilityList

        public java.util.List<java.lang.Integer> getSufficientAssumptionsForInfeasibilityList()
         A subset of the model "assumptions" field. This will only be filled if the
         status is INFEASIBLE. This subset of assumption will be enough to still get
         an infeasible problem.
        
         This is related to what is called the irreducible inconsistent subsystem or
         IIS. Except one is only concerned by the provided assumptions. There is
         also no guarantee that we return an irreducible (aka minimal subset).
         However, this is based on SAT explanation and there is a good chance it is
         not too large.
        
         If you really want a minimal subset, a possible way to get one is by
         changing your model to minimize the number of assumptions at false, but
         this is likely an harder problem to solve.
        
         Important: Currently, this is minimized only in single-thread and if the
         problem is not an optimization problem, otherwise, it will always include
         all the assumptions.
        
         TODO(user): Allows for returning multiple core at once.
         
        repeated int32 sufficient_assumptions_for_infeasibility = 23;
        Specified by:
        getSufficientAssumptionsForInfeasibilityList in interface CpSolverResponseOrBuilder
        Returns:
        A list containing the sufficientAssumptionsForInfeasibility.
      • getSufficientAssumptionsForInfeasibilityCount

        public int getSufficientAssumptionsForInfeasibilityCount()
         A subset of the model "assumptions" field. This will only be filled if the
         status is INFEASIBLE. This subset of assumption will be enough to still get
         an infeasible problem.
        
         This is related to what is called the irreducible inconsistent subsystem or
         IIS. Except one is only concerned by the provided assumptions. There is
         also no guarantee that we return an irreducible (aka minimal subset).
         However, this is based on SAT explanation and there is a good chance it is
         not too large.
        
         If you really want a minimal subset, a possible way to get one is by
         changing your model to minimize the number of assumptions at false, but
         this is likely an harder problem to solve.
        
         Important: Currently, this is minimized only in single-thread and if the
         problem is not an optimization problem, otherwise, it will always include
         all the assumptions.
        
         TODO(user): Allows for returning multiple core at once.
         
        repeated int32 sufficient_assumptions_for_infeasibility = 23;
        Specified by:
        getSufficientAssumptionsForInfeasibilityCount in interface CpSolverResponseOrBuilder
        Returns:
        The count of sufficientAssumptionsForInfeasibility.
      • getSufficientAssumptionsForInfeasibility

        public int getSufficientAssumptionsForInfeasibility​(int index)
         A subset of the model "assumptions" field. This will only be filled if the
         status is INFEASIBLE. This subset of assumption will be enough to still get
         an infeasible problem.
        
         This is related to what is called the irreducible inconsistent subsystem or
         IIS. Except one is only concerned by the provided assumptions. There is
         also no guarantee that we return an irreducible (aka minimal subset).
         However, this is based on SAT explanation and there is a good chance it is
         not too large.
        
         If you really want a minimal subset, a possible way to get one is by
         changing your model to minimize the number of assumptions at false, but
         this is likely an harder problem to solve.
        
         Important: Currently, this is minimized only in single-thread and if the
         problem is not an optimization problem, otherwise, it will always include
         all the assumptions.
        
         TODO(user): Allows for returning multiple core at once.
         
        repeated int32 sufficient_assumptions_for_infeasibility = 23;
        Specified by:
        getSufficientAssumptionsForInfeasibility in interface CpSolverResponseOrBuilder
        Parameters:
        index - The index of the element to return.
        Returns:
        The sufficientAssumptionsForInfeasibility at the given index.
      • setSufficientAssumptionsForInfeasibility

        public CpSolverResponse.Builder setSufficientAssumptionsForInfeasibility​(int index,
                                                                                 int value)
         A subset of the model "assumptions" field. This will only be filled if the
         status is INFEASIBLE. This subset of assumption will be enough to still get
         an infeasible problem.
        
         This is related to what is called the irreducible inconsistent subsystem or
         IIS. Except one is only concerned by the provided assumptions. There is
         also no guarantee that we return an irreducible (aka minimal subset).
         However, this is based on SAT explanation and there is a good chance it is
         not too large.
        
         If you really want a minimal subset, a possible way to get one is by
         changing your model to minimize the number of assumptions at false, but
         this is likely an harder problem to solve.
        
         Important: Currently, this is minimized only in single-thread and if the
         problem is not an optimization problem, otherwise, it will always include
         all the assumptions.
        
         TODO(user): Allows for returning multiple core at once.
         
        repeated int32 sufficient_assumptions_for_infeasibility = 23;
        Parameters:
        index - The index to set the value at.
        value - The sufficientAssumptionsForInfeasibility to set.
        Returns:
        This builder for chaining.
      • addSufficientAssumptionsForInfeasibility

        public CpSolverResponse.Builder addSufficientAssumptionsForInfeasibility​(int value)
         A subset of the model "assumptions" field. This will only be filled if the
         status is INFEASIBLE. This subset of assumption will be enough to still get
         an infeasible problem.
        
         This is related to what is called the irreducible inconsistent subsystem or
         IIS. Except one is only concerned by the provided assumptions. There is
         also no guarantee that we return an irreducible (aka minimal subset).
         However, this is based on SAT explanation and there is a good chance it is
         not too large.
        
         If you really want a minimal subset, a possible way to get one is by
         changing your model to minimize the number of assumptions at false, but
         this is likely an harder problem to solve.
        
         Important: Currently, this is minimized only in single-thread and if the
         problem is not an optimization problem, otherwise, it will always include
         all the assumptions.
        
         TODO(user): Allows for returning multiple core at once.
         
        repeated int32 sufficient_assumptions_for_infeasibility = 23;
        Parameters:
        value - The sufficientAssumptionsForInfeasibility to add.
        Returns:
        This builder for chaining.
      • addAllSufficientAssumptionsForInfeasibility

        public CpSolverResponse.Builder addAllSufficientAssumptionsForInfeasibility​(java.lang.Iterable<? extends java.lang.Integer> values)
         A subset of the model "assumptions" field. This will only be filled if the
         status is INFEASIBLE. This subset of assumption will be enough to still get
         an infeasible problem.
        
         This is related to what is called the irreducible inconsistent subsystem or
         IIS. Except one is only concerned by the provided assumptions. There is
         also no guarantee that we return an irreducible (aka minimal subset).
         However, this is based on SAT explanation and there is a good chance it is
         not too large.
        
         If you really want a minimal subset, a possible way to get one is by
         changing your model to minimize the number of assumptions at false, but
         this is likely an harder problem to solve.
        
         Important: Currently, this is minimized only in single-thread and if the
         problem is not an optimization problem, otherwise, it will always include
         all the assumptions.
        
         TODO(user): Allows for returning multiple core at once.
         
        repeated int32 sufficient_assumptions_for_infeasibility = 23;
        Parameters:
        values - The sufficientAssumptionsForInfeasibility to add.
        Returns:
        This builder for chaining.
      • clearSufficientAssumptionsForInfeasibility

        public CpSolverResponse.Builder clearSufficientAssumptionsForInfeasibility()
         A subset of the model "assumptions" field. This will only be filled if the
         status is INFEASIBLE. This subset of assumption will be enough to still get
         an infeasible problem.
        
         This is related to what is called the irreducible inconsistent subsystem or
         IIS. Except one is only concerned by the provided assumptions. There is
         also no guarantee that we return an irreducible (aka minimal subset).
         However, this is based on SAT explanation and there is a good chance it is
         not too large.
        
         If you really want a minimal subset, a possible way to get one is by
         changing your model to minimize the number of assumptions at false, but
         this is likely an harder problem to solve.
        
         Important: Currently, this is minimized only in single-thread and if the
         problem is not an optimization problem, otherwise, it will always include
         all the assumptions.
        
         TODO(user): Allows for returning multiple core at once.
         
        repeated int32 sufficient_assumptions_for_infeasibility = 23;
        Returns:
        This builder for chaining.
      • hasIntegerObjective

        public boolean hasIntegerObjective()
         Contains the integer objective optimized internally. This is only filled if
         the problem had a floating point objective, and on the final response, not
         the ones given to callbacks.
         
        .operations_research.sat.CpObjectiveProto integer_objective = 28;
        Specified by:
        hasIntegerObjective in interface CpSolverResponseOrBuilder
        Returns:
        Whether the integerObjective field is set.
      • getIntegerObjective

        public CpObjectiveProto getIntegerObjective()
         Contains the integer objective optimized internally. This is only filled if
         the problem had a floating point objective, and on the final response, not
         the ones given to callbacks.
         
        .operations_research.sat.CpObjectiveProto integer_objective = 28;
        Specified by:
        getIntegerObjective in interface CpSolverResponseOrBuilder
        Returns:
        The integerObjective.
      • setIntegerObjective

        public CpSolverResponse.Builder setIntegerObjective​(CpObjectiveProto value)
         Contains the integer objective optimized internally. This is only filled if
         the problem had a floating point objective, and on the final response, not
         the ones given to callbacks.
         
        .operations_research.sat.CpObjectiveProto integer_objective = 28;
      • setIntegerObjective

        public CpSolverResponse.Builder setIntegerObjective​(CpObjectiveProto.Builder builderForValue)
         Contains the integer objective optimized internally. This is only filled if
         the problem had a floating point objective, and on the final response, not
         the ones given to callbacks.
         
        .operations_research.sat.CpObjectiveProto integer_objective = 28;
      • mergeIntegerObjective

        public CpSolverResponse.Builder mergeIntegerObjective​(CpObjectiveProto value)
         Contains the integer objective optimized internally. This is only filled if
         the problem had a floating point objective, and on the final response, not
         the ones given to callbacks.
         
        .operations_research.sat.CpObjectiveProto integer_objective = 28;
      • clearIntegerObjective

        public CpSolverResponse.Builder clearIntegerObjective()
         Contains the integer objective optimized internally. This is only filled if
         the problem had a floating point objective, and on the final response, not
         the ones given to callbacks.
         
        .operations_research.sat.CpObjectiveProto integer_objective = 28;
      • getIntegerObjectiveBuilder

        public CpObjectiveProto.Builder getIntegerObjectiveBuilder()
         Contains the integer objective optimized internally. This is only filled if
         the problem had a floating point objective, and on the final response, not
         the ones given to callbacks.
         
        .operations_research.sat.CpObjectiveProto integer_objective = 28;
      • getIntegerObjectiveOrBuilder

        public CpObjectiveProtoOrBuilder getIntegerObjectiveOrBuilder()
         Contains the integer objective optimized internally. This is only filled if
         the problem had a floating point objective, and on the final response, not
         the ones given to callbacks.
         
        .operations_research.sat.CpObjectiveProto integer_objective = 28;
        Specified by:
        getIntegerObjectiveOrBuilder in interface CpSolverResponseOrBuilder
      • getInnerObjectiveLowerBound

        public long getInnerObjectiveLowerBound()
         Advanced usage.
        
         A lower bound on the inner integer expression of the objective. This is
         either a bound on the expression in the returned integer_objective or on
         the integer expression of the original objective if the problem already has
         an integer objective.
         
        int64 inner_objective_lower_bound = 29;
        Specified by:
        getInnerObjectiveLowerBound in interface CpSolverResponseOrBuilder
        Returns:
        The innerObjectiveLowerBound.
      • setInnerObjectiveLowerBound

        public CpSolverResponse.Builder setInnerObjectiveLowerBound​(long value)
         Advanced usage.
        
         A lower bound on the inner integer expression of the objective. This is
         either a bound on the expression in the returned integer_objective or on
         the integer expression of the original objective if the problem already has
         an integer objective.
         
        int64 inner_objective_lower_bound = 29;
        Parameters:
        value - The innerObjectiveLowerBound to set.
        Returns:
        This builder for chaining.
      • clearInnerObjectiveLowerBound

        public CpSolverResponse.Builder clearInnerObjectiveLowerBound()
         Advanced usage.
        
         A lower bound on the inner integer expression of the objective. This is
         either a bound on the expression in the returned integer_objective or on
         the integer expression of the original objective if the problem already has
         an integer objective.
         
        int64 inner_objective_lower_bound = 29;
        Returns:
        This builder for chaining.
      • getNumIntegers

        public long getNumIntegers()
         Some statistics about the solve.
        
         Important: in multithread, this correspond the statistics of the first
         subsolver. Which is usually the one with the user defined parameters. Or
         the default-search if none are specified.
         
        int64 num_integers = 30;
        Specified by:
        getNumIntegers in interface CpSolverResponseOrBuilder
        Returns:
        The numIntegers.
      • setNumIntegers

        public CpSolverResponse.Builder setNumIntegers​(long value)
         Some statistics about the solve.
        
         Important: in multithread, this correspond the statistics of the first
         subsolver. Which is usually the one with the user defined parameters. Or
         the default-search if none are specified.
         
        int64 num_integers = 30;
        Parameters:
        value - The numIntegers to set.
        Returns:
        This builder for chaining.
      • clearNumIntegers

        public CpSolverResponse.Builder clearNumIntegers()
         Some statistics about the solve.
        
         Important: in multithread, this correspond the statistics of the first
         subsolver. Which is usually the one with the user defined parameters. Or
         the default-search if none are specified.
         
        int64 num_integers = 30;
        Returns:
        This builder for chaining.
      • setNumBooleans

        public CpSolverResponse.Builder setNumBooleans​(long value)
        int64 num_booleans = 10;
        Parameters:
        value - The numBooleans to set.
        Returns:
        This builder for chaining.
      • clearNumBooleans

        public CpSolverResponse.Builder clearNumBooleans()
        int64 num_booleans = 10;
        Returns:
        This builder for chaining.
      • setNumConflicts

        public CpSolverResponse.Builder setNumConflicts​(long value)
        int64 num_conflicts = 11;
        Parameters:
        value - The numConflicts to set.
        Returns:
        This builder for chaining.
      • clearNumConflicts

        public CpSolverResponse.Builder clearNumConflicts()
        int64 num_conflicts = 11;
        Returns:
        This builder for chaining.
      • setNumBranches

        public CpSolverResponse.Builder setNumBranches​(long value)
        int64 num_branches = 12;
        Parameters:
        value - The numBranches to set.
        Returns:
        This builder for chaining.
      • clearNumBranches

        public CpSolverResponse.Builder clearNumBranches()
        int64 num_branches = 12;
        Returns:
        This builder for chaining.
      • setNumBinaryPropagations

        public CpSolverResponse.Builder setNumBinaryPropagations​(long value)
        int64 num_binary_propagations = 13;
        Parameters:
        value - The numBinaryPropagations to set.
        Returns:
        This builder for chaining.
      • clearNumBinaryPropagations

        public CpSolverResponse.Builder clearNumBinaryPropagations()
        int64 num_binary_propagations = 13;
        Returns:
        This builder for chaining.
      • setNumIntegerPropagations

        public CpSolverResponse.Builder setNumIntegerPropagations​(long value)
        int64 num_integer_propagations = 14;
        Parameters:
        value - The numIntegerPropagations to set.
        Returns:
        This builder for chaining.
      • clearNumIntegerPropagations

        public CpSolverResponse.Builder clearNumIntegerPropagations()
        int64 num_integer_propagations = 14;
        Returns:
        This builder for chaining.
      • setNumRestarts

        public CpSolverResponse.Builder setNumRestarts​(long value)
        int64 num_restarts = 24;
        Parameters:
        value - The numRestarts to set.
        Returns:
        This builder for chaining.
      • clearNumRestarts

        public CpSolverResponse.Builder clearNumRestarts()
        int64 num_restarts = 24;
        Returns:
        This builder for chaining.
      • setNumLpIterations

        public CpSolverResponse.Builder setNumLpIterations​(long value)
        int64 num_lp_iterations = 25;
        Parameters:
        value - The numLpIterations to set.
        Returns:
        This builder for chaining.
      • clearNumLpIterations

        public CpSolverResponse.Builder clearNumLpIterations()
        int64 num_lp_iterations = 25;
        Returns:
        This builder for chaining.
      • getWallTime

        public double getWallTime()
         The time counted from the beginning of the Solve() call.
         
        double wall_time = 15;
        Specified by:
        getWallTime in interface CpSolverResponseOrBuilder
        Returns:
        The wallTime.
      • setWallTime

        public CpSolverResponse.Builder setWallTime​(double value)
         The time counted from the beginning of the Solve() call.
         
        double wall_time = 15;
        Parameters:
        value - The wallTime to set.
        Returns:
        This builder for chaining.
      • clearWallTime

        public CpSolverResponse.Builder clearWallTime()
         The time counted from the beginning of the Solve() call.
         
        double wall_time = 15;
        Returns:
        This builder for chaining.
      • setUserTime

        public CpSolverResponse.Builder setUserTime​(double value)
        double user_time = 16;
        Parameters:
        value - The userTime to set.
        Returns:
        This builder for chaining.
      • clearUserTime

        public CpSolverResponse.Builder clearUserTime()
        double user_time = 16;
        Returns:
        This builder for chaining.
      • setDeterministicTime

        public CpSolverResponse.Builder setDeterministicTime​(double value)
        double deterministic_time = 17;
        Parameters:
        value - The deterministicTime to set.
        Returns:
        This builder for chaining.
      • clearDeterministicTime

        public CpSolverResponse.Builder clearDeterministicTime()
        double deterministic_time = 17;
        Returns:
        This builder for chaining.
      • getGapIntegral

        public double getGapIntegral()
         The integral of log(1 + absolute_objective_gap) over time.
         
        double gap_integral = 22;
        Specified by:
        getGapIntegral in interface CpSolverResponseOrBuilder
        Returns:
        The gapIntegral.
      • setGapIntegral

        public CpSolverResponse.Builder setGapIntegral​(double value)
         The integral of log(1 + absolute_objective_gap) over time.
         
        double gap_integral = 22;
        Parameters:
        value - The gapIntegral to set.
        Returns:
        This builder for chaining.
      • clearGapIntegral

        public CpSolverResponse.Builder clearGapIntegral()
         The integral of log(1 + absolute_objective_gap) over time.
         
        double gap_integral = 22;
        Returns:
        This builder for chaining.
      • getSolutionInfo

        public java.lang.String getSolutionInfo()
         Additional information about how the solution was found. It also stores
         model or parameters errors that caused the model to be invalid.
         
        string solution_info = 20;
        Specified by:
        getSolutionInfo in interface CpSolverResponseOrBuilder
        Returns:
        The solutionInfo.
      • getSolutionInfoBytes

        public com.google.protobuf.ByteString getSolutionInfoBytes()
         Additional information about how the solution was found. It also stores
         model or parameters errors that caused the model to be invalid.
         
        string solution_info = 20;
        Specified by:
        getSolutionInfoBytes in interface CpSolverResponseOrBuilder
        Returns:
        The bytes for solutionInfo.
      • setSolutionInfo

        public CpSolverResponse.Builder setSolutionInfo​(java.lang.String value)
         Additional information about how the solution was found. It also stores
         model or parameters errors that caused the model to be invalid.
         
        string solution_info = 20;
        Parameters:
        value - The solutionInfo to set.
        Returns:
        This builder for chaining.
      • clearSolutionInfo

        public CpSolverResponse.Builder clearSolutionInfo()
         Additional information about how the solution was found. It also stores
         model or parameters errors that caused the model to be invalid.
         
        string solution_info = 20;
        Returns:
        This builder for chaining.
      • setSolutionInfoBytes

        public CpSolverResponse.Builder setSolutionInfoBytes​(com.google.protobuf.ByteString value)
         Additional information about how the solution was found. It also stores
         model or parameters errors that caused the model to be invalid.
         
        string solution_info = 20;
        Parameters:
        value - The bytes for solutionInfo to set.
        Returns:
        This builder for chaining.
      • getSolveLog

        public java.lang.String getSolveLog()
         The solve log will be filled if the parameter log_to_response is set to
         true.
         
        string solve_log = 26;
        Specified by:
        getSolveLog in interface CpSolverResponseOrBuilder
        Returns:
        The solveLog.
      • getSolveLogBytes

        public com.google.protobuf.ByteString getSolveLogBytes()
         The solve log will be filled if the parameter log_to_response is set to
         true.
         
        string solve_log = 26;
        Specified by:
        getSolveLogBytes in interface CpSolverResponseOrBuilder
        Returns:
        The bytes for solveLog.
      • setSolveLog

        public CpSolverResponse.Builder setSolveLog​(java.lang.String value)
         The solve log will be filled if the parameter log_to_response is set to
         true.
         
        string solve_log = 26;
        Parameters:
        value - The solveLog to set.
        Returns:
        This builder for chaining.
      • clearSolveLog

        public CpSolverResponse.Builder clearSolveLog()
         The solve log will be filled if the parameter log_to_response is set to
         true.
         
        string solve_log = 26;
        Returns:
        This builder for chaining.
      • setSolveLogBytes

        public CpSolverResponse.Builder setSolveLogBytes​(com.google.protobuf.ByteString value)
         The solve log will be filled if the parameter log_to_response is set to
         true.
         
        string solve_log = 26;
        Parameters:
        value - The bytes for solveLog to set.
        Returns:
        This builder for chaining.
      • setUnknownFields

        public final CpSolverResponse.Builder setUnknownFields​(com.google.protobuf.UnknownFieldSet unknownFields)
        Specified by:
        setUnknownFields in interface com.google.protobuf.Message.Builder
        Overrides:
        setUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<CpSolverResponse.Builder>
      • mergeUnknownFields

        public final CpSolverResponse.Builder mergeUnknownFields​(com.google.protobuf.UnknownFieldSet unknownFields)
        Specified by:
        mergeUnknownFields in interface com.google.protobuf.Message.Builder
        Overrides:
        mergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<CpSolverResponse.Builder>