Skip to content
This repository has been archived by the owner on Oct 7, 2022. It is now read-only.

Hide classes not intended for public use #91

Closed
llorllale opened this issue Dec 5, 2017 · 2 comments · Fixed by #106
Closed

Hide classes not intended for public use #91

llorllale opened this issue Dec 5, 2017 · 2 comments · Fixed by #106
Assignees
Labels
Milestone

Comments

@llorllale
Copy link
Owner

The problem is that as a user of this library, when I wish to eg. import Issue with my IDE I get two results - org.llorllale.youtrack.api.Issue and org.llorllale.youtrack.api.jaxb.Isssue - which is confusing.

@llorllale llorllale added the bug label Dec 5, 2017
@llorllale llorllale added this to the 1.0.0 milestone Dec 5, 2017
@llorllale llorllale self-assigned this Dec 6, 2017
@llorllale
Copy link
Owner Author

Hiding org.llorllale.youtrack.api.util and org.llorllale.youtrack.api.util.response is easy... just stick them all inside org.llorllale.youtrack.api and give them package access.

The generated JAXB classes though are much harder to hide.

@llorllale
Copy link
Owner Author

org.llorllale.youtrack.api.util and org.llorllale.youtrack.api.util.response removed in #93

llorllale pushed a commit that referenced this issue Dec 7, 2017
(NEW) XmlObject: class that exposes xpath operations on a
      org.w3c.dom.Node. After converting an HttpEntity's contents
      to a Node, all implementations that relied on JAXB are
      expected to now use this class to access their data
(NEW) Several handy classes: StringAsDocument, ResponseAsNodes,
      NodeListAsCollection
(REF) XmlComment now takes an XmlObject instead of a JAXB class
(REF) DefaultComments: to satisfy XmlComment's change
llorllale added a commit that referenced this issue Dec 8, 2017
XmlComment:

(FIX) checkstyle issues
(FIX) Tests
llorllale added a commit that referenced this issue Dec 8, 2017
llorllale pushed a commit that referenced this issue Dec 8, 2017
(NEW) XmlObject: exposes several xpath functions on a
      given org.w3c.dom.Node
(NEW) XmlObjects: encapsulates several inputs as
      Collection<XmlObject>
(DEL) No longer in use:
      - ExceptionalSupplier
      - HttpEntityAsJaxb
      - MapIfNoError
      - MapIfPresent
      - Mapping
      - ResponseAsXmlObjects
      - StandardErrorCheck
      - XmlStringAsJaxb
      - NodeListAsCollection
(REF) all classes that formerly used JAXB types now use the XmlObject
(REF) pom.xml:
      - removed jaxb2-maven-plugin
      - modified configuration of javadoc plugin to account
        for the fact that we no longer require excluding
        jaxb classes
llorllale pushed a commit that referenced this issue Dec 11, 2017
(REF) Unit tests to support switch JAXB -> XmlObject
(FIX) Some xpaths
(FIX) checkstyle issues
llorllale pushed a commit that referenced this issue Dec 11, 2017
llorllale pushed a commit that referenced this issue Dec 12, 2017
(FIX) Some integration tests
llorllale added a commit that referenced this issue Dec 13, 2017
(FIX) DefaultIssues.stream()/Pagination/Page: infinite loop
llorllale pushed a commit that referenced this issue Dec 13, 2017
llorllale pushed a commit that referenced this issue Dec 14, 2017
(FIX) Issues in several of the equals() and hashCode() methods
      for the Field and FieldValue implementations
(REF) Refactored some tests so that the new
      MockField/MockFieldValue/MockAssignedField are used instead
llorllale pushed a commit that referenced this issue Dec 14, 2017
(FIX) Bug in DefaultAssignedFieldIT.testChange()
llorllale pushed a commit that referenced this issue Dec 14, 2017
(FIX) Unit tests for XmlAssignedField
(NEW) MockField, MockFields, MockFieldValue, MockAssignedField
(NEW) MockProject.withField/withFieldValue
llorllale pushed a commit that referenced this issue Dec 14, 2017
(REF) pom.xml: removed old jaxb exclusions from the cobertura plugin
(DEL) Removed now unushed XSD files
llorllale pushed a commit that referenced this issue Dec 14, 2017
(NEW) DefaultIssues constructor for testing:
      DefaultIssues(Session, Project, HttpClient)
(NEW) DefaultIssuesTest
llorllale added a commit that referenced this issue Dec 15, 2017
(FIX) XmlUsersOfIssue now has unit tests
(NEW) MockUsersOfProject
(REF) MockProject.users() now returns an instance of MockUsersOfProject
(NEW) MockProject.withUser(User): adds the user to the collection of
      users configured for the project
llorllale pushed a commit that referenced this issue Dec 15, 2017
(NEW) DefaultProjectTimeTracking(Project, Session, HttpClient):
      useful for unit tests
(FIX) Unit tests for DefaultProjectTimeTracking
(FIX) Javadoc on ProjectTimeTracking.enabled(): made it clearer
      what the rules are to determine whether timetracking is
      enabled for a project
llorllale pushed a commit that referenced this issue Dec 15, 2017
(FIX) pom.xml: fixed changes made to pom
llorllale pushed a commit that referenced this issue Dec 15, 2017
(NEW) XmlUsersOfProject(Project, Session, XmlObject, HttpClient): for
      tests
(FIX) Unit tests for XmlUsersOfProject
llorllale pushed a commit that referenced this issue Dec 15, 2017
Enabled logging on docker image in order to troubleshoot build error.
llorllale pushed a commit that referenced this issue Dec 18, 2017
pom.xml: re-commented the "showLogs" flag

Applied workaround described in #107
llorllale added a commit that referenced this issue Dec 18, 2017
(#91) Hide classes not intended for public use

(NEW) XmlObject: encapsulates and exposes xpath operations on
      org.w3c.dom.Nodes
(NEW) XmlObjects: collection of XmlObject
(NEW) Additional constructors that accept HttpClient for unit
      tests:
      - DefaultFields
      - DefaultProjectTimeTracking
      - DefaultProjects
(NEW) StringAsDocument: encapsulates an xml string as a 
      org.w3c.dom.Document
(NEW) MockHttpClient: now optionally accepts intermediate mock
      responses to return before giving a final response
(NEW) mocks:
      - MockAssignedField
      - MockField
      - MockFieldValue
      - MockFields
      - MockProjectField
      - MockUsersOfProject
(REF) Issue.fields() now returns Collection<AssignedField>, not
      List<AssignedField>
(REF) MappedCollection: changes in constructor arguments
(REF) Pagination: the ExceptionalFunction's input parameter 
      is now a Response isntead of HttpEntity. This is because
      client code now uses the new XmlObjects class
(REF) Pagination: now accepting HttpClient as constructor input
      arg, making unit tests possible
(FIX) Bug in DefaultAssignedFieldIT.testChange()
(FIX) ProjectTimeTracking.enabled(): additional clarifications in 
      javadoc
(FIX) Page: infinite loop in streams because the contents was 
      being constantly refilled with the same data after reaching
      EOF
(FIX) IssueTimeTracking.EntrySpec.asHttpEntity(): bug in value
      of the <duration> element
(FIX) bugs in hashCode() implementations:
      - BasicField
      - BasicFieldValue
      - XmlAssignedField
      - XmlFieldValue
      - XmlProjectField
(FIX) bugs in equals() implmentations:
      - BasicFieldValue
      - XmlAssignedField
      - XmlFieldValue
(FIX) UncheckedException: missing javadocs
(REF) rename: DefaultUsersOfProject -> XmlUsersOfProject to 
      better reflect the fact that this impl. uses an XML object
(REF) pom.xml: removed all references to jaxb 
(REF) Implementations changed for use with XmlObjects:
      - DefaultComments
      - DefaultFields
      - DefaultIssueTimeTracking
      - DefaultIssues
      - DefaultProjectTimeTracking
      - DefaultProjects
      - XmlAssignedField
      - XmlComment
      - XmlFieldValue
      - XmlIssue
      - XmlProject
      - XmlProjectField
      - XmlTimeTrackEntry
      - XmlTimeTrackEntryType
      - XmlUser
      - XmlUsersOfIssue
      - XmlUsersOfProject
(FIX) Missing unit tests:
      - DefaultFieldsTest
      - DefaultProjectTimeTrackingTest
      - XmlAssignedFieldTest
      - XmlUsersOfIssueTest
      - XmlUsersOfProjectTest
      - DefaultIssuesTest.testStream()
(DEL) ExceptionalSupplier: no longer used
(DEL) HttpEntityAsJaxb: no longer used
(DEL) MapIfNoError: no longer used
(DEL) MapIfPresent: no longer used
(DEL) Mapping: no longer used
(DEL) XmlStringAsJaxb: no longer used
(DEL) StandardErrorCheck: no longer used. Implementations are now
      using XmlObject.child("//error"").isPresent() to test for
      error
(DEL) StreamOf: unused constructor
(DEL) All the *.xsd files in src/main/resources/schema
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant