Emmanuel Lecharny wrote:
> Bernd Fondermann wrote:
>> To turn this into an actually task, could you point out areas/classes
>> that especially lack javadoc?
>>   
> I have conducted a quick review of around one third of the java files
> (test excluded). I have tagged all the files I reviewed with :
> * J  : files without javadoc
> * j  : files with partial Javadoc
> * H  : files without a description in the header
> * A  : missing @author tag
> * OK : files with all the needed javadoc, header and @author tag
> 
> Some of them combine mor ethan one of those missing elements.
> 
> I have found only 8 OK files oit of 96 files I checked. Here is the list
> (files without one of those tags haven't be checked yet)
> 
> Note that I may have been inaccurate to some extent.

Probably not, thanks for putting this together.

I have to admit that this kind of quantitive analysis doesn't tell me
much. I'd rather improve the javadoc for a central class than write a
new one for a simple interface setter method where the name and
parameters speak for themselves.

(I started programming when CPUs where slow, RAM was sparse and the
significant characters of a variable that were recognized by the
compiler were limited to the first 12 or so.
Today, we have code completion and no shortage of method or variable
name lengths. I try to make heavy use of that.)

It's like your total unit test coverage number. It doesn't tell you
anything about your test quality.

But if you point out critical code that misses a javadoc, unit test or
spec compliance annotation or code comment, you'll never find me
disagreeing with you. (I reserve the right to ask for a patch, though. ;-)

So my question is, where is that code which most deserves being improved
in this way?

  Bernd

> 
> 
> 
> J    org/apache/vysper/mina/MinaBackedSessionContext.java
> JH   org/apache/vysper/mina/XmppIoHandlerAdapter.java
> J    org/apache/vysper/mina/TCPEndpoint.java
> J    org/apache/vysper/mina/codec/XMLStreamTokenizer.java
> J    org/apache/vysper/mina/codec/StanzaWriteInfo.java
> J    org/apache/vysper/mina/codec/XMPPProtocolCodecFactory.java
> J    org/apache/vysper/mina/codec/StanzaWriterProtocolEncoder.java
> org/apache/vysper/xmpp/uuid/UUIDGenerator.java
> org/apache/vysper/xmpp/uuid/JVMBuiltinUUIDGenerator.java
> org/apache/vysper/xmpp/xmldecoder/UnsupportedXMLException.java
> org/apache/vysper/xmpp/xmldecoder/DecodingException.java
> org/apache/vysper/xmpp/xmldecoder/XMLParticle.java
> org/apache/vysper/xmpp/xmldecoder/XMLRawToFragmentConverter.java
> org/apache/vysper/xmpp/xmldecoder/ParticleDecoder.java
> JA    org/apache/vysper/xmpp/datetime/DateTimeProfile.java
> org/apache/vysper/xmpp/state/resourcebinding/ResourceRegistry.java
> org/apache/vysper/xmpp/state/resourcebinding/ResourceState.java
> org/apache/vysper/xmpp/state/resourcebinding/BindException.java
> org/apache/vysper/xmpp/state/presence/LatestPresenceCache.java
> org/apache/vysper/xmpp/state/presence/SimplePresenceCache.java
> org/apache/vysper/xmpp/state/presence/PresenceCachingException.java
> J     org/apache/vysper/xmpp/authorization/External.java
> OK    org/apache/vysper/xmpp/authorization/UserAuthorization.java
> J     org/apache/vysper/xmpp/authorization/SimpleUserAuthorization.java
> JH    org/apache/vysper/xmpp/authorization/AccountCreationException.java
> H     org/apache/vysper/xmpp/authorization/AccountManagement.java
> J     org/apache/vysper/xmpp/authorization/Anonymous.java
> J     org/apache/vysper/xmpp/authorization/AuthorizationResponses.java
> J     org/apache/vysper/xmpp/authorization/Plain.java
> OK    org/apache/vysper/xmpp/authorization/SASLMechanism.java
> JH    org/apache/vysper/xmpp/addressing/EntityFormatException.java
> A1    org/apache/vysper/xmpp/addressing/stringprep/StringPrepConstants.java
> jA1   org/apache/vysper/xmpp/addressing/stringprep/StringPrep.java
> JA1H 
> org/apache/vysper/xmpp/addressing/stringprep/StringPrepViolationException.java
> 
> ja1   org/apache/vysper/xmpp/addressing/stringprep/ResourcePrep.java
> ja1   org/apache/vysper/xmpp/addressing/stringprep/NodePrep.java
> J     org/apache/vysper/xmpp/addressing/Entity.java
> J     org/apache/vysper/xmpp/addressing/EntityImpl.java
> JH    org/apache/vysper/xmpp/addressing/EntityConformance.java
> J    
> org/apache/vysper/xmpp/modules/core/im/handler/PresenceAvailabilityHandler.java
> 
> J     org/apache/vysper/xmpp/modules/core/im/handler/PresenceHandler.java
> J    
> org/apache/vysper/xmpp/modules/core/im/handler/PresenceSubscriptionHandler.java
> 
> JH   
> org/apache/vysper/xmpp/modules/core/im/handler/AbstractPresenceSpecializedHandler.java
> 
> J    
> org/apache/vysper/xmpp/modules/core/base/BaseStreamStanzaDictionary.java
> J    
> org/apache/vysper/xmpp/modules/core/base/handler/DefaultIQHandler.java
> h    
> org/apache/vysper/xmpp/modules/core/base/handler/async/RunnableFuture.java
> J    
> org/apache/vysper/xmpp/modules/core/base/handler/async/ResponseFuture.java
> j    
> org/apache/vysper/xmpp/modules/core/base/handler/async/AbstractAsyncIQGetHandler.java
> 
> J     org/apache/vysper/xmpp/modules/core/base/handler/IQHandler.java
> JH   
> org/apache/vysper/xmpp/modules/core/base/handler/StreamStartHandler.java
> J    
> org/apache/vysper/xmpp/modules/core/base/handler/XMPPCoreStanzaHandler.java
> J     org/apache/vysper/xmpp/modules/core/base/handler/MessageHandler.java
> JH   
> org/apache/vysper/xmpp/modules/core/base/handler/XMLPrologHandler.java
> J     org/apache/vysper/xmpp/modules/core/bind/handler/BindIQHandler.java
> J     org/apache/vysper/xmpp/modules/core/bind/BindResourceDictionary.java
> J    
> org/apache/vysper/xmpp/modules/core/sasl/AuthorizationRetriesCounter.java
> J     org/apache/vysper/xmpp/modules/core/sasl/SASLFailureType.java
> J     org/apache/vysper/xmpp/modules/core/sasl/SASLStanzaDictionary.java
> JH    org/apache/vysper/xmpp/modules/core/sasl/handler/AuthHandler.java
> JH   
> org/apache/vysper/xmpp/modules/core/sasl/handler/AbstractSASLHandler.java
> JH    org/apache/vysper/xmpp/modules/core/sasl/handler/AbortHandler.java
> J    
> org/apache/vysper/xmpp/modules/core/session/SessionStanzaDictionary.java
> J    
> org/apache/vysper/xmpp/modules/core/session/handler/SessionIQHandler.java
> J    
> org/apache/vysper/xmpp/modules/core/compatibility/jabber_iq_auth/JabberIQAuthDictionary.java
> 
> J    
> org/apache/vysper/xmpp/modules/core/compatibility/jabber_iq_auth/handler/AuthCompatibilityIQHandler.java
> 
> JH   
> org/apache/vysper/xmpp/modules/core/starttls/handler/StartTLSHandler.java
> J    
> org/apache/vysper/xmpp/modules/core/starttls/StartTLSStanzaDictionary.java
> J    
> org/apache/vysper/xmpp/modules/servicediscovery/ServiceDiscoveryInfoDictionary.java
> 
> J    
> org/apache/vysper/xmpp/modules/servicediscovery/collection/ServiceDiscoveryRequestListenerRegistry.java
> 
> J    
> org/apache/vysper/xmpp/modules/servicediscovery/collection/ServiceCollector.java
> 
> J    
> org/apache/vysper/xmpp/modules/servicediscovery/ServiceDiscoveryItemDictionary.java
> 
> J    
> org/apache/vysper/xmpp/modules/servicediscovery/management/ServerInfoRequestListener.java
> 
> JH    org/apache/vysper/xmpp/modules/servicediscovery/management/Item.java
> JH   
> org/apache/vysper/xmpp/modules/servicediscovery/management/Feature.java
> JA   
> org/apache/vysper/xmpp/modules/servicediscovery/management/InfoDataForm.java
> 
> JH   
> org/apache/vysper/xmpp/modules/servicediscovery/management/ServiceDiscoveryRequestException.java
> 
> JH   
> org/apache/vysper/xmpp/modules/servicediscovery/management/InfoElement.java
> JH   
> org/apache/vysper/xmpp/modules/servicediscovery/management/InfoRequest.java
> JH   
> org/apache/vysper/xmpp/modules/servicediscovery/management/Identity.java
> J    
> org/apache/vysper/xmpp/modules/servicediscovery/management/InfoRequestListener.java
> 
> J    
> org/apache/vysper/xmpp/modules/servicediscovery/management/ItemRequestListener.java
> 
> J    
> org/apache/vysper/xmpp/modules/servicediscovery/handler/DiscoItemIQHandler.java
> 
> J    
> org/apache/vysper/xmpp/modules/servicediscovery/handler/DiscoInfoIQHandler.java
> 
> J    
> org/apache/vysper/xmpp/modules/servicediscovery/ServiceDiscoveryModule.java
> org/apache/vysper/xmpp/modules/DefaultModule.java
> org/apache/vysper/xmpp/modules/ModuleRegistry.java
> org/apache/vysper/xmpp/modules/Module.java
> org/apache/vysper/xmpp/modules/DefaultDiscoAwareModule.java
> JH   
> org/apache/vysper/xmpp/modules/roster/persistence/AbstractRosterManager.java
> 
> J    
> org/apache/vysper/xmpp/modules/roster/persistence/MemoryRosterManager.java
> J     org/apache/vysper/xmpp/modules/roster/persistence/RosterManager.java
> JH    org/apache/vysper/xmpp/modules/roster/RosterUtils.java
> J     org/apache/vysper/xmpp/modules/roster/SubscriptionType.java
> J     org/apache/vysper/xmpp/modules/roster/Roster.java
> JH    org/apache/vysper/xmpp/modules/roster/RosterGroup.java
> JH    org/apache/vysper/xmpp/modules/roster/RosterStanzaUtils.java
> JH    org/apache/vysper/xmpp/modules/roster/RosterBadRequestException.java
> JH    org/apache/vysper/xmpp/modules/roster/RosterException.java
> J     org/apache/vysper/xmpp/modules/roster/RosterModule.java
> JH    org/apache/vysper/xmpp/modules/roster/MutableRoster.java
> J     org/apache/vysper/xmpp/modules/roster/handler/RosterIQHandler.java
> J     org/apache/vysper/xmpp/modules/roster/RosterSubscriptionMutator.java
> J     org/apache/vysper/xmpp/modules/roster/RosterItem.java
> JH    org/apache/vysper/xmpp/modules/roster/RosterConfiguration.java
> JH   
> org/apache/vysper/xmpp/modules/roster/RosterNotAcceptableException.java
> JH    org/apache/vysper/xmpp/modules/roster/AskSubscriptionType.java
> J     org/apache/vysper/xmpp/modules/roster/RosterDictionary.java
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0092_software_version/SoftwareVersionIQHandler.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0092_software_version/SoftwareVersionModule.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/PubSubPersistenceManager.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/model/MultipleSubscriptionException.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/model/DuplicateNodeException.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/model/CollectionNode.java
> 
> jH   
> org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/model/LeafNode.java
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/SubscriberVisitor.java
> 
> J    
> org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/AbstractPublishSubscribeIQHandler.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/SubscriberNotificationVisitor.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/handler/PubSubPublishHandler.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/handler/owner/PubSubOwnerConfigureNodeHandler.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/handler/owner/AbstractPubSubOwnerHandler.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/handler/owner/PubSubOwnerDeleteNodeHandler.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/handler/AbstractPubSubGeneralHandler.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/handler/PubSubUnsubscribeHandler.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/handler/PubSubCreateNodeHandler.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/handler/PubSubSubscribeHandler.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/NullPersistenceManager.java
> 
> j    
> org/apache/vysper/xmpp/modules/extension/xep0060_pubsub/PublishSubscribeModule.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0054_vcardtemp/VcardTempModule.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0054_vcardtemp/VcardTempPersistenceManager.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0054_vcardtemp/VcardTempIQHandler.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0202_entity_time/EntityTimeModule.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0202_entity_time/EntityTimeIQHandler.java
> 
> J    
> org/apache/vysper/xmpp/modules/extension/xep0202_entity_time/EntityTimeXEP0090IQHandler.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0049_privatedata/PrivateDataModule.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0049_privatedata/PrivateDataPersistenceManager.java
> 
> JH   
> org/apache/vysper/xmpp/modules/extension/xep0049_privatedata/PrivateDataIQHandler.java
> 
> org/apache/vysper/xmpp/modules/ServerRuntimeContextService.java
> JH    org/apache/vysper/xmpp/delivery/LocalDeliveryUtils.java
> JH    org/apache/vysper/xmpp/delivery/NoSuchLocalUserException.java
> J     org/apache/vysper/xmpp/delivery/StanzaRelay.java
> J     org/apache/vysper/xmpp/delivery/StanzaReceiverQueue.java
> JH    org/apache/vysper/xmpp/delivery/DeliveryException.java
> JH   
> org/apache/vysper/xmpp/delivery/failure/ReturnErrorToSenderFailureStrategy.java
> 
> JH    org/apache/vysper/xmpp/delivery/failure/IgnoreFailureStrategy.java
> J     org/apache/vysper/xmpp/delivery/DeliveringInboundStanzaRelay.java
> J     org/apache/vysper/xmpp/delivery/StanzaReceiver.java
> OK    org/apache/vysper/xmpp/delivery/DeliveryFailureStrategy.java
> J     org/apache/vysper/xmpp/delivery/StanzaRelayBroker.java
> JA    org/apache/vysper/xmpp/delivery/StanzaReceiverRelay.java
> J     org/apache/vysper/xmpp/delivery/RecordingStanzaRelay.java
> JH    org/apache/vysper/xmpp/delivery/LocalRecipientOfflineException.java
> org/apache/vysper/xmpp/xmlfragment/XMLFragment.java
> org/apache/vysper/xmpp/xmlfragment/NamespaceAttribute.java
> org/apache/vysper/xmpp/xmlfragment/XMLSemanticError.java
> org/apache/vysper/xmpp/xmlfragment/EqualityVerifier.java
> org/apache/vysper/xmpp/xmlfragment/FragmentFactory.java
> org/apache/vysper/xmpp/xmlfragment/XMLElementVerifier.java
> org/apache/vysper/xmpp/xmlfragment/Attribute.java
> org/apache/vysper/xmpp/xmlfragment/Renderer.java
> org/apache/vysper/xmpp/xmlfragment/XMLElement.java
> org/apache/vysper/xmpp/xmlfragment/XMLText.java
> org/apache/vysper/xmpp/parser/io/PlainToTLSStreaming.java
> org/apache/vysper/xmpp/parser/StringStreamParser.java
> org/apache/vysper/xmpp/parser/EncryptionAware.java
> org/apache/vysper/xmpp/parser/InputStreamParser.java
> org/apache/vysper/xmpp/parser/StreamParser.java
> org/apache/vysper/xmpp/parser/ParsingErrorCondition.java
> org/apache/vysper/xmpp/parser/ParsingException.java
> org/apache/vysper/xmpp/parser/AbstractNekopullStreamParser.java
> JH    org/apache/vysper/xmpp/cryptography/TLSContextFactory.java
> JH    org/apache/vysper/xmpp/cryptography/FileBasedTLSContextFactory.java
> J     org/apache/vysper/xmpp/cryptography/AbstractTLSContextFactory.java
> J     org/apache/vysper/xmpp/cryptography/BogusTrustManagerFactory.java
> JH    org/apache/vysper/xmpp/cryptography/TrustManagerFactory.java
> org/apache/vysper/xmpp/server/AbstractSessionContext.java
> org/apache/vysper/xmpp/server/SessionState.java
> org/apache/vysper/xmpp/server/ServerRuntimeContext.java
> org/apache/vysper/xmpp/server/response/ServerResponses.java
> org/apache/vysper/xmpp/server/response/ServerErrorResponses.java
> org/apache/vysper/xmpp/server/DefaultServerRuntimeContext.java
> org/apache/vysper/xmpp/server/SessionContext.java
> org/apache/vysper/xmpp/server/ServerFeatures.java
> org/apache/vysper/xmpp/server/Endpoint.java
> org/apache/vysper/xmpp/server/XMPPServer.java
> org/apache/vysper/xmpp/server/XMPPVersion.java
> org/apache/vysper/xmpp/server/ServerMain.java
> org/apache/vysper/xmpp/stanza/Stanza.java
> org/apache/vysper/xmpp/stanza/MessageStanzaType.java
> org/apache/vysper/xmpp/stanza/IQStanza.java
> org/apache/vysper/xmpp/stanza/PresenceStanzaType.java
> org/apache/vysper/xmpp/stanza/dataforms/Field.java
> org/apache/vysper/xmpp/stanza/dataforms/DataFormEncoder.java
> org/apache/vysper/xmpp/stanza/dataforms/DataForm.java
> org/apache/vysper/xmpp/stanza/dataforms/Option.java
> org/apache/vysper/xmpp/stanza/IQStanzaType.java
> org/apache/vysper/xmpp/stanza/MessageStanza.java
> org/apache/vysper/xmpp/stanza/StanzaErrorType.java
> org/apache/vysper/xmpp/stanza/XMPPCoreStanza.java
> org/apache/vysper/xmpp/stanza/StanzaBuilder.java
> org/apache/vysper/xmpp/stanza/StanzaErrorCondition.java
> org/apache/vysper/xmpp/stanza/PresenceStanza.java
> org/apache/vysper/xmpp/stanza/XMPPCoreStanzaVerifier.java
> org/apache/vysper/xmpp/writer/StanzaWriter.java
> org/apache/vysper/xmpp/writer/SystemOutStanzaWriter.java
> org/apache/vysper/xmpp/writer/DenseStanzaLogRenderer.java
> org/apache/vysper/xmpp/protocol/StreamErrorCondition.java
> org/apache/vysper/xmpp/protocol/SessionStateModifier.java
> org/apache/vysper/xmpp/protocol/exception/AuthorizationFailedException.java
> org/apache/vysper/xmpp/protocol/exception/TLSException.java
> org/apache/vysper/xmpp/protocol/exception/BadXMLException.java
> org/apache/vysper/xmpp/protocol/ProtocolException.java
> org/apache/vysper/xmpp/protocol/StateAwareProtocolWorker.java
> org/apache/vysper/xmpp/protocol/ResponseWriter.java
> org/apache/vysper/xmpp/protocol/StanzaHandler.java
> org/apache/vysper/xmpp/protocol/ServiceUnavailableStanzaErrorHandler.java
> org/apache/vysper/xmpp/protocol/ResponseStanzaContainerImpl.java
> org/apache/vysper/xmpp/protocol/SessionStateHolder.java
> org/apache/vysper/xmpp/protocol/StanzaHandlerLookup.java
> org/apache/vysper/xmpp/protocol/NamespaceURIs.java
> org/apache/vysper/xmpp/protocol/QueuedStanzaProcessor.java
> org/apache/vysper/xmpp/protocol/ProtocolWorker.java
> org/apache/vysper/xmpp/protocol/NamespaceHandlerDictionary.java
> org/apache/vysper/xmpp/protocol/worker/EncryptionStartedProtocolWorker.java
> org/apache/vysper/xmpp/protocol/worker/EndOrClosedProtocolWorker.java
> org/apache/vysper/xmpp/protocol/worker/EncryptedProtocolWorker.java
> org/apache/vysper/xmpp/protocol/worker/InitiatedProtocolWorker.java
> org/apache/vysper/xmpp/protocol/worker/InboundStanzaProtocolWorker.java
> org/apache/vysper/xmpp/protocol/worker/AbstractStateAwareProtocolWorker.java
> 
> org/apache/vysper/xmpp/protocol/worker/StartedProtocolWorker.java
> org/apache/vysper/xmpp/protocol/worker/AuthenticatedProtocolWorker.java
> org/apache/vysper/xmpp/protocol/worker/UnconnectedProtocolWorker.java
> org/apache/vysper/xmpp/protocol/HandlerDictionary.java
> org/apache/vysper/xmpp/protocol/StanzaProcessor.java
> org/apache/vysper/xmpp/protocol/ResponseStanzaContainer.java
> OK   org/apache/vysper/compliance/SpecCompliance.java
> J   
> org/apache/vysper/compliance/reporting/DocumentSpecCompliantAnnotationFactory.java
> 
> OK   org/apache/vysper/compliance/SpecCompliant.java
> JH   org/apache/vysper/storage/jcr/user/JcrUserManagement.java
> JH   org/apache/vysper/storage/jcr/JcrStorageException.java
> JH  
> org/apache/vysper/storage/jcr/vcardtemp/JcrVcardTempPersistenceManager.java
> J    org/apache/vysper/storage/jcr/JcrStorage.java
> JH   org/apache/vysper/storage/jcr/JcrStorageProviderRegistry.java
> J    org/apache/vysper/storage/jcr/roster/JcrRosterManager.java
> JH  
> org/apache/vysper/storage/jcr/privatedata/JcrPrivateDataPersistenceManager.java
> 
> JH   org/apache/vysper/storage/StorageProviderRegistry.java
> OK   org/apache/vysper/storage/StorageProvider.java
> JH   org/apache/vysper/storage/OpenStorageProviderRegistry.java
> J    org/apache/vysper/storage/inmemory/MemoryStorageProviderRegistry.java
> J    org/apache/vysper/stanzasession/StanzaSessionContext.java
> JH   org/apache/vysper/stanzasession/StanzaSession.java
> jA   org/apache/vysper/stanzasession/StanzaSessionFactory.java
> JHA  org/apache/vysper/spring/AddUserHelper.java
> J    org/apache/vysper/spring/ResourceBasedTLSContextFactory.java
> OK   org/apache/vysper/spring/ServerMain.java
> OK   org/apache/vysper/charset/CharsetUtil.java
> 
> 
> 1 : The @author tag contain some reference to someone, but if the cade
> has been included, no reference from the original project
> 

Reply via email to